Documentation
Chapong docs
Chapong (AvocaHosting) deploys your sites and apps from git to your own dedicated server. This guide takes you from zero to a production deploy.
Getting started
- Sign in to the dashboard (accounts are shared with avocolab.com for now).
- Open the hosting product and create an access token. Copy it — it is shown once.
- Install the CLI and log in with that token (below).
Install the CLI
The avoca CLI is installed globally with npm from its repository path.
TODO Replace <cli-repo-path> with the published path of the CLI package.
$ npm i -g <cli-repo-path>
$ avoca --helpLog in, link and deploy
$ avoca login # paste the token from the dashboard
$ cd my-app
$ avoca link # pick or create the site for this folder
$ avoca deploy # preview deploy → unique URL
$ avoca deploy --prod # production deployStatic sites and SPAs are served directly. Server apps (Next.js, Nuxt, Express, Python) run as processes on Node 22 or Python; a new version must pass its health check before traffic is swapped to it.
Git deploys & previews
Connect a GitHub or Gitea repository from the dashboard. Then:
- Pushes to the production branch deploy to production.
- Every other push, and every pull request, gets a preview URL. Chapong posts a commit status with the link back to the pull request.
- Builds can be cancelled while they run — handy when a newer push supersedes one.
- Any deploy can be password-protected — useful for client previews.
Environment variables
Variables have one of three scopes:
| Scope | Applies to |
|---|---|
production | Production deploys only |
preview | Preview and pull-request deploys |
shared | Both production and preview |
Mark a variable as a secret to have it masked in the dashboard and build logs. Changes take effect on the next deploy.
Custom domains
- In the dashboard, open your site → Domains and add your domain (e.g.
www.example.com). - At your DNS provider, create a CNAME record pointing to the target shown in the dashboard.
- Once DNS resolves, HTTPS certificates are issued automatically.
Add both the apex (example.com) and www and choose which is primary — the other redirects to it automatically. For an apex domain, use your DNS provider’s ALIAS/ANAME/CNAME-flattening support, or the record shown in the dashboard.
Deploy hooks
Deploy hooks let a CMS or any other service trigger a new deploy. Create one in the dashboard; you get a URL of this form:
POST https://sites.<host>/hooks/deploy/<site>/<secret>$ curl -X POST https://sites.<host>/hooks/deploy/<site>/<secret>Treat the URL like a password: anyone holding it can trigger a deploy. Delete and recreate the hook to rotate it.
Rollback
Every deploy is an immutable build. Rolling back atomically switches the live pointer to an earlier build — there is no rebuild.
$ avoca deployments # find the deploy id
$ avoca rollback <id>You can also roll back from the site’s Deployments list in the dashboard. The response cache is purged on every deploy and rollback.
Linked backend (Da8a)
Connect a site to a Da8a backend with one click from the site settings. Chapong then keeps SUPABASE_URL and ANON_KEY in your environment and the backend’s auth redirect URLs (including preview URLs) in sync automatically.
CLI reference
| Command | What it does |
|---|---|
avoca login | Authenticate with an access token |
avoca link | Link the current folder to a site |
avoca deploy | Create a preview deploy |
avoca deploy --prod | Deploy to production |
avoca sites list | List your sites |
avoca sites create | Create a site |
avoca deployments | List deployments for the linked site |
avoca rollback <id> | Make an earlier deploy live |
Run avoca <command> --help for all flags.