@lucaspll/sited
v0.7.0
Published
Personal deploy target for small agent-built apps.
Readme
Sited
Personal deploy target for small agent-built TypeScript apps.
Sited apps are capsules: a Preact client, a server module with typed RPC handlers, bundled static files and per-app SQLite tables.
Create an App
npx @lucaspll/sited new hello
cd hello
npm install
npm run dev -- --slug helloThe local dev server builds the capsule, starts a local runtime, and deploys it to http://127.0.0.1:7331.
Deploy an App
npm run deploy -- --slug helloFor a remote runtime, set SITED_API and SITED_ADMIN_TOKEN.
Run a Runtime
Start a local runtime:
npx @lucaspll/sited runtime --data-dir .sited/runtime --host 127.0.0.1For a deployed runtime, persist /var/lib/sited, expose port 7331, and set SITED_ADMIN_TOKEN.
If the runtime is behind a trusted reverse proxy that overwrites forwarded headers, pass --trust-proxy or set SITED_TRUST_PROXY=true.
Run with Docker
docker build -t sited .
docker run \
-p 7331:7331 \
-v sited-data:/var/lib/sited \
-e SITED_ADMIN_TOKEN=... \
-e SITED_BASE_DOMAIN=sited.example.com \
sitedPublic URLs
Set SITED_BASE_DOMAIN to the domain used for app subdomains. Put the runtime behind a reverse proxy with a wildcard host such as *.sited.example.com so app subdomains route to it automatically.
Auth
Public apps do not require Google OAuth. The dashboard at /dashboard and private apps require these to be set together:
SITED_GOOGLE_CLIENT_ID=...
SITED_GOOGLE_CLIENT_SECRET=...
[email protected]Agent Docs
Agent docs are served by the runtime at /, /docs.json, /llms.txt, and /llms-full.txt.
