Flisk logoflisk/demosHow it worksGitHubSponsor

Personal Flisk demo · preview

@yourhandle's Flisk stack

yourhandle is an example handle

This plan is a sample, so nothing was built and nothing runs live. Put your own X handle in the link to get a stack of your own: demo.flisk.si/<your-handle>/chatgpt-clone-on-nextjs.

Why this stack

Stack diagram

webfrontendapibackendapi-migratormigratorassistantagentpostgresdatabase

Browser → web → api → Postgres. Workers and migrators share the same database. Traefik routes every service on *.localhost.

Run it

npm install -g @flisk-sh/flisk
flisk doctor
flisk project --yes
flisk resource web --type frontend --stack agents --framework react --yes
flisk resource api --type backend --stack agents --feature prisma --yes
flisk resource assistant --type agent --stack agents --yes
flisk up agents
flisk status

Docs

Your service.json files

One service.json each. Postgres comes from "prisma" and Traefik routing is built in, so neither needs its own file.

webfrontendreact app
// services/agents/web/service.json
{
  "$schema": "https://flisk.sh/schema.service.json",
  "schemaVersion": 1,
  "appName": "web",
  "appType": "frontend",
  "stack": "agents",
  "port": 3000,
  "framework": "react",
  "dependsOn": [
    "api"
  ]
}
apibackendbun + hono API
// services/agents/api/service.json
{
  "$schema": "https://flisk.sh/schema.service.json",
  "schemaVersion": 1,
  "appName": "api",
  "appType": "backend",
  "stack": "agents",
  "port": 4000,
  "healthCheckPath": "/health",
  "params": {
    "ASSISTANT_URL": "http://assistant:4100"
  },
  "dependsOn": [
    "api-migrator"
  ],
  "featuresEnabled": [
    "prisma"
  ]
}
api-migratormigratorruns Prisma migrations against the shared Postgres before the api starts
// services/agents/api-migrator/service.json
{
  "$schema": "https://flisk.sh/schema.service.json",
  "schemaVersion": 1,
  "appName": "api-migrator",
  "appType": "migrator",
  "stack": "agents"
}
assistantagent/health, /ready, x-session-id routing, checkpoints survive restarts
// services/agents/assistant/service.json
{
  "$schema": "https://flisk.sh/schema.service.json",
  "schemaVersion": 1,
  "appName": "assistant",
  "appType": "agent",
  "stack": "agents",
  "port": 4100
}

Note: Next.js support is coming in the next flisk release, so this demo uses React for now.

Want one for a friend?

Ask @grok on X with their handle and what they build.