nself init
nself init — ɳSelf documentation.
Initialize a new ɳSelf project with an interactive configuration wizard.
Synopsis
nself init [flags]
Description
nself init launches an interactive setup wizard that creates a pristine .env configuration for a new ɳSelf project. It prompts for your project name, base domain, and email, then auto-generates cryptographically secure secrets (Postgres password, Hasura admin secret, JWT key).
You can choose which optional services to enable during init (Redis, MinIO, MeiliSearch, Mailpit, Monitoring). Each selection updates the generated .env accordingly. All values are validated before being written, domain format, password strength, and required fields are all checked.
After nself init completes, run nself build to generate docker-compose.yml and nginx configs, then nself start to boot the stack.
Flags
| Flag | Default | Description |
|---|---|---|
--wizard |
false | Run the full 10-step interactive wizard |
--interactive |
false | Explicitly enable interactive wizard |
--non-interactive |
false | Use all defaults without prompts (CI-safe) |
--fast |
false | Skip advanced options, use smart defaults |
--demo |
false | Auto-configure with all services enabled |
--full |
false | Create .env.dev, .env.staging, .env.prod, .env.secrets |
--force |
false | Overwrite existing configuration |
--template |
"" |
Use a built-in, clone, or marketplace template (e.g. airbnb-clone, go, rust) |
--preset |
"" |
Use a project-type preset: b2b-saas, mobile-backend, ai-assistant, community-forum, media-hosting, dev, sentry, nclaw-app |
--list-presets |
false | List all available project presets and exit |
--profile |
"" |
Resource profile: tiny for small VPS (Postgres+nginx only) |
--cs-template |
"" |
Scaffold a custom service at init time: go, node, python, rust, other |
--no-pgvector |
false | Skip pgvector extension and RAG scaffold tables (sets PGVECTOR_ENABLED=false) |
--no-seed |
false | Skip seed data when scaffolding a clone template |
--dry-run |
false | Print files that would be written without writing them (clone templates only) |
--name |
"" |
Project name (sets PROJECT_NAME in generated .env) |
--domain |
"" |
Base domain (skips interactive domain prompt, e.g. myapp.dev) |
--skip-validation |
false | Skip configuration validation |
--quiet |
false | Suppress output messages |
--help, -h |
none | Show help |
Examples
# Minimal interactive setup
nself init
# Full 10-step wizard
nself init --wizard
# All services enabled (demo/evaluation)
nself init --demo
# Create all env files at once
nself init --full
# Smart defaults, no prompts
nself init --fast
# Non-interactive, all defaults, safe for CI
nself init --non-interactive
# Skip prompts by supplying name and domain directly
nself init --name myapp --domain myapp.dev
# Start from a Go project template
nself init --template go --name myapi --domain myapi.local
# List available project-type presets
nself init --list-presets
# Scaffold from a preset
nself init --preset b2b-saas
# Tiny resource profile for a small VPS
nself init --profile tiny