Pre-alpha. No tagged release and no upgrade path between versions. Use for evaluation and development only, not production.
Core DevPre-alpha

Tooling

Commands and generators used every day while developing Sumeru.

Run the server

From sumeru/ (core) or sumeru_custom_addons/ (workspace):

make setup    # first time: config, imports, SWC + login JS bundlesmake run      # generate → assets (if stale) → HTTP servermake dev      # alias for make run

make run always regenerates Go imports and rebuilds client assets when bundles are missing or SWC sources changed. Requires Node.js (npm).

In the workspace use make install MODULES=x and make update MODULES=x instead of raw go run.

Client assets (SWC)

make assets     # build when missing or sources changedmake swc        # always rebuild core/swc → core/engine/assets/make swc-check  # TypeScript strict checkmake check      # swc-check + go test ./...

Outputs under core/engine/assets/swc/ and core/engine/assets/js/ are gitignored. The workspace delegates make assets / make swc to ../sumeru.

Database, i18n, and module utilities

make db-check       # validate sumeru.conf and PostgreSQL connectivitymake i18n-export    # export sys.translation rows to translations.csvmake i18n-import    # import translations.csv into sys.translationmake module ARGS='list'make module ARGS='install sales'make shell          # interactive ORM REPL

Standalone binaries:

go run ./cmd/sumeru-migrate -- -c sumeru.confgo run ./cmd/sumeru-module -- -c sumeru.conf listgo run ./cmd/sumeru-shell -- -c sumeru.conf

Refresh addon Go imports (zimports.go)

cd sumeru && make generate# workspace:cd sumeru_custom_addons && make generate

Runs cmd/sumeru-import-gen with the workspace INI addons_path. See sumeru_custom_addons/README.md.

Scaffold a new addon (sumeru-bp)

From sumeru (kernel addons) or sumeru_custom_addons (make new MODULE=x):

make bp NAME=my_app          # coremake new MODULE=my_app       # workspace → addons/make generatemake install MODULES=my_app  # workspace

Tests

make check      # swc-check + go test ./...make swc-test   # vitest (core/swc)make test-integration

See also