CLI Reference
Complete command reference for the tulip binary.
tulip init
tulip init [path]Create a new tulip project. Runs an interactive prompt asking for:
- Site name
- Description
- Whether to enable Tailwind CSS
Defaults to the current directory if no path is given. Creates tulip.toml, layouts/, pages/, static/, and content/ directories.
tulip build
tulip build [path] [--target <dir>]Build the site to static HTML. Processes all .tulip pages, .md content, and copies static/ files. Runs plugins, Tailwind, and minification if enabled.
| Option | Default | Description |
|---|---|---|
path | . | Project root directory |
--target <dir> | dist | Override the output directory |
Example:
tulip build ./my-site --target publictulip serve
tulip serve [path] [--port <port>]Build the site and start a development server. Watches for file changes and triggers live reload via WebSocket.
| Option | Default | Description |
|---|---|---|
path | . | Project root directory |
--port <port> | 3000 | Override the dev server port |
Example:
tulip serve ./my-site --port 8080tulip plugin new
tulip plugin new <name>Scaffold a new plugin in plugins/<name>/ with the standard structure:
plugin.toml— metadata and default configindex.ts— entry point withTulipPlugininterfacetypes.d.ts— TypeScript type definitionsREADME.md— plugin documentation
tulip plugin add
tulip plugin add <url>[@version]Install a plugin from a GitHub repository. Downloads the tarball, reads the plugin name from plugin.toml, installs to plugins/{name}/, and adds an entry with source to tulip.toml.
Examples:
tulip plugin add https://github.com/user/tulip-plugin-seo@v0.1.0
tulip plugin add https://github.com/user/tulip-plugin-seotulip plugin remove
tulip plugin remove <name>Remove a plugin directory from plugins/ and its [[plugins]] entry from tulip.toml.
tulip plugin list
tulip plugin listShow all installed plugins with their name, version, and description.
tulip install
tulip install [path]Install all missing plugins declared in tulip.toml. A plugin is missing when it has a source field but doesn't exist in plugins/. Use this after cloning a project or in CI.