MoonBlox command-line tool
export PATH="$HOME/.moon/bin:$PATH"moon install xz-xuezhe/moonblox-climoonblox-cli init my-site
cd my-site
moonblox-cli servemoonblox-cli init <dir> [options]| Flag | Description |
|---|---|
| --headless, -H | Skip interactive TUI (for CI / scripts) |
| --theme, -t <name> | Project theme: blog (default) or docs |
| --empty, -E | Skip generating sample content |
| --quiet, -q | Suppress non-essential output |
moonblox-cli init . # TUI in current directory
moonblox-cli init my-blog --headless # scaffold in CI, blog theme
moonblox-cli init my-docs -t docs -H # scaffold docs theme, no TUI
moonblox-cli init my-site -H -E # empty scaffold, no sample contentmy-site/
moonblox.json → site configuration
posts/ → Markdown content (blog theme)
components/ → selected built-in components
theme/base.css → global styles
_moonblox/ → generated MoonBit project (build target)moonblox-cli build [dir]moonblox-cli serve [dir] [--port <port>]| Flag | Description |
|---|---|
| --port, -p <port> | Server port (default: 3000) |
{
"input": "posts",
"output": "dist",
"components": "components",
"theme": "blog"
}async fn build(dir : String, dev_mode? : Bool) -> Boolfn double_to_string(n : Double) -> Stringfn escape_string(s : String) -> Stringfn scaffold(dir : String, theme? : String, components? : Array[String], quiet? : Bool, empty? : Bool) -> Result[Unit, String]async fn serve(dir : String, port : Int) -> Unit