Installation

This guide will help you install Dracory and set up your development environment.

Installation

This guide will help you install Dracory and set up your development environment.

Development Requirements

Before you install Dracory, confirm your local development environment has these tools installed:

  • Go 1.25.0 or higher
  • SQLite, MySQL, or PostgreSQL
  • Git source control
  • Task (taskfile.dev) - Task runner for automation

Tip: Installation options for Task are documented at
taskfile.dev/#/installation.

Framework Structure

Dracory is distributed through the github.com/dracory/blueprint repository.

The Blueprint acts as a ready-to-use starter project that wires together
the Dracory packages you need for rapid application development.

Core modules such as github.com/dracory/base are consumed as Go module
dependencies inside the Blueprint rather than as separate repositories you
clone manually.

Quick Start (Manual Download)

  1. Download the zipped Blueprint repository (the starter kit that bundles the Dracory packages):
    curl -L https://github.com/dracory/dracory-blueprint/archive/refs/heads/main.zip -o dracory-blueprint.zip
    
  2. Unzip the file, rename the extracted folder, and clean up the archive:
    unzip dracory-blueprint.zip
    mv dracory-blueprint-main dracory-blueprint
    rm dracory-blueprint.zip
    
  3. Enter the project directory and remove the upstream Git history:
    cd dracory-blueprint
    rm -rf .git
    
  4. (Optional) Initialize a new Git repository if you plan to track changes:
    git init
    

Windows: Use Remove-Item -Recurse -Force .git instead of rm -rf .git.

Quick Start (Git Clone)

  1. Clone the Blueprint repository directly:
    git clone https://github.com/dracory/dracory-blueprint.git dracory-blueprint
    cd dracory-blueprint
    
  2. Remove the existing .git directory to start from a clean history (optional but recommended):
    rm -rf .git
    
  3. (Optional) Re-initialize Git for your own repository:
    git init
    

Setting Up Your Environment

Bootstrap the project scaffolding and default environment:

task dev-init

This command copies .env.example to .env, installs Go module dependencies, and runs any
first-time setup tasks defined in the Taskfile. Review .env and adjust values (database,
mail, third-party integrations) to match your environment. At minimum, ensure you set
APP_HOST, APP_PORT, APP_ENVIRONMENT, and the database keys documented in the
Configuration guide.

Encrypted environment variables and vault files are separate concepts: ENVENC_USED
controls encryption of values that already live in .env, while vault files store
additional secrets outside the plain file. Both workflows are optional and covered in
detail in the Security & Secrets guide.

Development Server

Once you have set up your environment, you can start the development server:

task dev

This command starts the HTTP server with file watching. Changes to your Go or view files trigger
automatic recompilation and restart so you can iterate quickly.

Next Steps

Now that you have installed Dracory, you might want to: