Installation
Manzano is distributed as a standalone CLI. Install it and use
manzanoto check, lint, test, and run your modules.
Prerequisites: macOS, Linux, or Windows. What you'll learn: How to install Manzano and verify your installation.
Install Manzano
Install the Manzano CLI via Homebrew:
brew tap manzano-studio/tap
brew install manzano
Verify the installation:
manzano --version
This installs the manzano CLI which includes all Grove tools: the compiler, server, and runtime.
Verify Installation
Create a new project and run its tests:
manzano init my-app
cd my-app
manzano test
manzano init scaffolds a project with a working starter module and prints a short Grove cheat sheet on completion. The project includes two developer-assistant context files at the project root (AGENTS.md and CLAUDE.md) so that AI coding assistants have the right project context from the first session.
Keep the CLI Up to Date
The manzano CLI includes a soft expiration check: builds older than ~10 days print a warning, and builds older than ~14 days refuse to run. This keeps clients in sync with platform API evolution.
If you use manzano only occasionally, plan to run brew upgrade manzano weekly, or re-install before each session:
brew upgrade manzano
CLI Commands
| Command | Purpose |
|---|---|
manzano init <name> | Create a new Grove project |
manzano dev | Start the local development server |
manzano test | Run *_test.grove test files |
manzano deploy | Deploy to Manzano Cloud |
manzano todo | Manage console tasks |
For full details, see CLI Reference.
Project Structure
A Grove project is a directory with a grove.toml file at the root:
project_id = "my-app"
Each subdirectory containing .grove files is a module. All .grove files in a directory are merged into a single module scope. Files matching *_test.grove are test files -- they are excluded from compilation and loaded by the test runner.
my-app/
grove.toml # Project config
todo/
module.grove # Module source
todo_test.grove # Tests (excluded from compilation)
orders/
module.grove
types.grove # Merged into the orders module
Editor Support
Grove uses the .grove file extension. While dedicated editor plugins are in development, setting your editor to use a syntax mode for a C-like language provides reasonable highlighting for keywords, strings, and blocks.
See Also
- Hello World -- Create your first module
- Configuration Reference -- All
grove.tomlsettings - CLI Reference -- Full command reference