floo init creates config files in your project. These files are the source of truth for how your app deploys.
floo.service.toml (single-service app)
For a project with one service (most apps),floo init creates a single floo.service.toml in your project root.
| Field | Description |
|---|---|
[app] name | Your app’s unique name on floo |
[service] name | Service identifier (e.g., web, api, worker) |
[service] type | web (HTTP), api (HTTP), or worker (no ingress) |
[service] port | Port your app listens on |
[service] ingress | public (internet-facing) or internal (private) |
[service] env_file | Path to .env file, synced as env vars on deploy |
floo.app.toml (monorepo / multi-service)
For projects with multiple services,floo init creates a floo.app.toml at the repo root and a floo.service.toml inside each service directory.
floo.service.toml with the service-specific config (port, type, ingress).
You can also inline service config directly in floo.app.toml:
How floo finds config
When you runfloo deploy, the CLI walks up the directory tree (max 20 levels) looking for config files. If both floo.app.toml and floo.service.toml exist in the same directory, floo.app.toml takes precedence.
Example: single-service app
Example: monorepo with 2 services
floo init CLI reference for all flags and auto-detection details.