Personal Flisk demo
@yourhandle's Flisk stack
- webfrontend
- apibackend
- api-migratormigrator
- jobsworker
Progress
00:02
elapsed6% · Scaffolding with flisk 00:02
typically about 1 min, a typical estimate. taking longer than usual
- ✓Plan ready
- Scaffolding with flisk
- ○Repo pushed
- ○Starting flisk up on a GitHub runner
- ○Live
popped 0Waiting? Pop some bubbles.
While yours builds, see other stacks
- @pausecheck2web · api · api-migrator● live now
- @fixcheckweb · api · api-migrator● live now
- @0xHxxeweb · api · api-migrator · chain · indexer● live now
- @ottera21web · api · api-migrator · chain · indexer● live now
- @chanduuu_csweb · api · api-migrator● live now
- @brookserversweb · api · api-migratorready
Why this stack
- jobs · cron
- cache · redis
- realtime · websocket, chat
Stack diagram
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 app --framework react --yes flisk resource api --type backend --stack app --feature prisma redis websocket --yes flisk resource jobs --type worker --stack app --feature nats --yes flisk up app flisk status
Local URLs appear here when the repo is ready.
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/app/web/service.json
{
"$schema": "https://flisk.sh/schema.service.json",
"schemaVersion": 1,
"appName": "web",
"appType": "frontend",
"stack": "app",
"port": 3000,
"framework": "react",
"dependsOn": [
"api"
]
}apibackendbun + hono API
// services/app/api/service.json
{
"$schema": "https://flisk.sh/schema.service.json",
"schemaVersion": 1,
"appName": "api",
"appType": "backend",
"stack": "app",
"port": 4000,
"healthCheckPath": "/health",
"dependsOn": [
"api-migrator"
],
"featuresEnabled": [
"prisma",
"redis",
"websocket"
]
}api-migratormigratorruns Prisma migrations against the shared Postgres before the api starts
// services/app/api-migrator/service.json
{
"$schema": "https://flisk.sh/schema.service.json",
"schemaVersion": 1,
"appName": "api-migrator",
"appType": "migrator",
"stack": "app"
}jobsworkerbackground work: jobs, cron
// services/app/jobs/service.json
{
"$schema": "https://flisk.sh/schema.service.json",
"schemaVersion": 1,
"appName": "jobs",
"appType": "worker",
"stack": "app",
"port": 4100,
"dependsOn": [
"api-migrator"
],
"featuresEnabled": [
"nats"
]
}Note: No frontend framework named, so this uses React. Say vue, svelte or solid to switch.
One vote per browser. Votes are how the top stacks list is ranked.
Share it
Opens a ready-made post on X. You read it and send it yourself; nothing is posted for you.
Want one for a friend?
Ask @grok on X with their handle and what they build.