incite-fun
v0.1.0
Published
Deploy static web games to Incite (incite.fun) — agent-first CLI
Maintainers
Readme
incite-fun
CLI for Incite — an open distribution network for static web games.
Make a game anywhere (index.html + assets). Deploy here. Get a playable URL. No proprietary SDK.
npx incite-fun deploy ./path/to/gameDefault API: https://api.incite.fun. Registration is invite-gated; pass --invite <code> (or ARCADIA_REGISTER_INVITE) on first deploy.
Deploy
Front door is always deploy. If you have no publisher token yet, the CLI registers one, saves credentials, then deploys. No interactive prompts.
npx incite-fun deploy <folder-or-zip> [id]
npx incite-fun deploy --help
npx incite-fun help- Folder or zip must contain
index.htmlat the root (or one top-level folder). - Optional
[id]is a stable slug ([a-z0-9-]).
Auth (first match wins)
ARCADIA_DEPLOY_TOKEN— admin break-glass (operators)ARCADIA_TOKEN/--tokenor saved credentials for this API origin- Else
POST /api/publishers/registerwith--invite/ARCADIA_REGISTER_INVITEwhen gated
Credentials are stored under the OS config dir (incite-fun/). Override with ARCADIA_CREDENTIALS_PATH.
Flags / env
| Flag | Env | Notes |
|---|---|---|
| --api <url> | ARCADIA_API | Default https://api.incite.fun |
| --invite <code> | ARCADIA_REGISTER_INVITE | Required while registration is gated |
| --token <token> | ARCADIA_TOKEN | Publisher bearer |
| --no-save | | After auto-register, do not write credentials |
| | ARCADIA_DEPLOY_TOKEN | Admin bearer |
Success
Stdout is JSON from the API (do not rewrite URLs):
{
"ok": true,
"game": {
"id": "dot-dash",
"title": "Dot Dash",
"blurb": "...",
"playPath": "/play/dot-dash",
"assetPath": "https://games.incite.fun/games/dot-dash/<version>/"
},
"playUrl": "https://incite.fun/play/dot-dash"
}Open playUrl. Do not send players to assetPath.
On first deploy (auto-register), the minted publisher token is printed once on stderr.
HTTP
Register
POST https://api.incite.fun/api/publishers/register
- JSON body:
{ "invite": "..." }when the API requires an invite 201:{ "publisher": { "id": "pub_..." }, "token": "arc_live_..." }(token once)401/429:{ "error": "..." }
Deploy
POST https://api.incite.fun/api/games
- multipart field
game: the zip - optional field
id: slug ([a-z0-9-]) - header
Authorization: Bearer <publisher-or-admin-token>
201: { "game": {...}, "playUrl": "..." }401 / 403 / 429 / 400: { "error": "..." }
Other commands
npx incite-fun register [--invite <code>]
npx incite-fun whoamiLinks
- Player shell: https://incite.fun
- API: https://api.incite.fun
- Games CDN: https://games.incite.fun
