Skip to content

Quickstart

  1. Terminal window
    archmage init --language cs ./my-project
    cd my-project

    The --language flag is required — cs for C#, go for Go.

    See archmage init for all available options.

  2. The init command creates the following project structure:

    .
    ├── configs/ # configuration files — spreadsheets and tree-structured data
    ├── enums/ # enum definitions
    ├── scripts/ # ready-to-use commands
    ├── output/ # exported data and generated code (initially absent)
    └── starter/ # runnable example demonstrating SDK integration and usage

    Read ARCHMAGE.md at the project root to see what each sample config file does.

  3. Open enums/demo.enum.yaml and change __namespace__ to your project name before generating code.

    See Enum Definition for the full syntax.

  4. Terminal window
    scripts/all.sh

    The all.sh script runs the following three in order:

    Terminal window
    scripts/export.sh # export data
    scripts/enum.sh # generate enum code
    scripts/struct.sh # generate struct definitions
  5. All output goes into output/. For a project created with --language cs:

    Directory Created by Contents
    output/configs/ export The exported data, atlas.json, and the l10n aggregate
    output/Enums/ enum The generated enum code
    output/Conf/ struct The generated struct definitions

    With --language go, the last two directories are output/enums/ and output/conf/.

  6. After scripts/all.sh finishes, run the starter:

    Terminal window
    starter/run.sh

    The starter project demonstrates how to use the SDK to load the exported data.