Plans and project creation

Inspect plans

Before creating a project, compare the public catalogs. The command does not require authentication:

zenifra plans
zenifra plans --type http
zenifra plans --type database
zenifra plans --type analytics
zenifra plans --type cache
zenifra plans --type queue
zenifra plans --type storage --json
zenifra plans --type jobs

Output shows tables per category; for HTTP plans it includes the available capabilities (logs, metrics, health check, auto-scaling, custom subdomain, and network access). Use --json for scripts.

Create projects

With no arguments, the CLI opens an interactive wizard that asks for each field and shows examples and related documentation:

zenifra create project

The wizard covers HTTP projects (image or GitHub), PostgreSQL, MariaDB, Valkey (Key‑Value, Cache, and Queues), and scheduled Jobs. ClickHouse and HTTP projects with a connected Git source use the non-interactive mode with --config.

For automation, pass a configuration file:

zenifra create project \
  --name app-api \
  --plan free \
  --payment-mode hourly \
  --config @examples/http-project.json

The CLI does not assume --plan or --payment-mode (except Jobs, which use per_minute); choose them from zenifra plans.

--config accepts these type_project values:

type_projectUse
httpApplication from an image, GitHub, or a connected Git source (GitHub and Forgejo)
postgresql, mariadbRelational databases
clickhouseAnalytical database (analytics-* plans), with persistent storage
valkeyKey‑Value, Cache, and Queues (config.profile)
jobScheduled job with a UTC cron

payment_mode values: hourly, monthly, yearly, and per_minute (Jobs only). For HTTP projects, set config.exposure:

  • public: creates a public route and domain.
  • private: creates the project without a public domain, suited to automations and internal routines.

Ready-made configuration examples are in the examples/ folder of the CLI repository (http-project.json, http-git-project.json, postgresql-project.json, clickhouse-project.json, job-project.json, and more).

Last updated on

On this page