From railway
Railway Postgres expert for awfixersites — template deployment, SSL connections, database topology, and Prisma integration. Use when provisioning Postgres, configuring DATABASE_URL, or planning database isolation. Triggers on: "railway postgres", "postgres template", "database url", "prisma database". Use when the user runs /railway:postgres.
How this skill is triggered — by the user, by Claude, or both
Slash command
/railway:railway-postgresThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Production Postgres uses the Railway template:
Production Postgres uses the Railway template:
resource "railway_service" "postgres" {
project_id = railway_project.awfixersites.id
name = "postgres"
source_image = "ghcr.io/railwayapp-templates/postgres-ssl:16"
}
Or via MCP/CLI:
Deploy a Postgres database
railway deploy --template postgres
Railway injects DATABASE_URL, PGHOST, PGPORT, etc. automatically for template services.
awfixersites canonical var: PRISMA_DATABASE_URL
Resolution order in packages/env/src/index.ts:
PRISMA_DATABASE_URLDATABASE_URLPOSTGRES_URLAUTH_PRISMA_DATABASE_URL, etc.)| DB | Purpose | Isolation |
|---|---|---|
| IdP | users, passkeys, OAuth apps | Dedicated — downtime breaks all satellites |
| Session | per-app OAuth client sessions | Per-app or shared (see auth docs) |
| App data | enlistments, donations, tips | Per-app where required |
Local dev may share one DB. Production follows docs/auth-deployment.md and packages/auth/HANDOFF.md.
# After pulling DATABASE_URL locally
bun run auth:push # prisma db push (auth IdP)
Connection via packages/db/src/prisma.ts and packages/auth/src/prisma.ts.
Postgres data persists on Railway volumes. Never let Terraform replace a volume without backup.
Watch terraform plan for:
# railway_volume.postgres must be replaced
If seen: stop, backup, plan migration — do not auto-apply.
Never hand-copy URLs. Use Terraform:
resource "vercel_project_environment_variable" "auth_db" {
project_id = vercel_project.auth.id
key = "PRISMA_DATABASE_URL"
value = railway_variable.auth_db_url.value
target = ["production"]
sensitive = true
}
See railway-vercel-wiring skill.
npx claudepluginhub awfixers-stuff/plugins --plugin railwayGenerates brand assets: logos (55+ styles, Gemini AI), CIP mockups, HTML slides (Chart.js), banners (22 styles), SVG icons (15 styles), and social media photos. Routes to sub-skills for design tokens and UI styling.