Docs

proa.config.json

Configure the dev server, asset build, and component registries.

Open Markdown

proa.config.json is the CLI lifecycle and component registry config. proa dev reads it to build assets, run the server, and watch project files. proa build reads it to build assets before compiling the release binary.

It sits at the project root, next to Cargo.toml.

Keep local build orchestration and component registry aliases here instead of scattering them through README snippets:

{
  "$schema": "https://proa.so/schema/proa.config.json",
  "paths": {
    "components": "src/components",
    "assets": "public/proa"
  },
  "registries": {
    "@proa": "https://ui.proa.so/r/{name}.json",
    "@proa-pro": "https://console.proa.so/r/{name}.json"
  },
  "dev": {
    "command": ["cargo", "run"],
    "host": "127.0.0.1",
    "port": 3000,
    "watch": ["src", "styles", "Cargo.toml", "build.rs", "proa.config.json"]
  },
  "build": {
    "command": ["cargo", "build", "--release"],
    "assets": [
      {
        "kind": "tailwind",
        "input": "styles/input.css",
        "output": "public/styles.css"
      }
    ]
  }
}

proa.lock.json is generated next to the config file. It is intentionally separate from Cargo.lock because it tracks vendored UI source files, not Rust crate dependency resolution.

Both individual components and complete blocks install directly beneath src/components/<slug>/. Run proa config validate to catch unsafe paths, missing {name} placeholders, and invalid registry URLs before an install.

Next steps

Search

Type at least 2 characters