Ett API med allt på plats, redo att bygga på.
Ett Express 5-API i TypeScript med ett exempel på en komplett resurs som visar varje mönster: skyddade rutter, validering, svar och fel.
Använd den när
Du behöver ett fristående API för en webb- eller mobilapp, med inloggade användare, en Postgres-databas och Redis.
Behöver du webbapp och jobb i samma repo? template-monorepo i stället →Det här ingår
Färdigt från start.
Inloggning
Clerk-middleware, och skyddade rutter med requireAuth() och getAuth().
Databas
Drizzle på Postgres med exempeltabeller och skript för att generera och köra migreringar.
Redis
Begränsning av anrop med glidande fönster och X-RateLimit-rubriker, plus enkla cache-hjälpare.
Validering
Zod-scheman med en validate()-middleware, och rensning av text och filnamn.
Svar och fel
asyncHandler, sendSuccess och sendError, så varje rutt svarar likadant.
Exempelresurs
En skyddad resurs med lista, hämta, skapa och ta bort, och en hälsokontroll.
Kom igång
pnpm install
cp .env.example .env
pnpm db:generate
pnpm db:migrate
pnpm dev # http://localhost:3001Struktur
src/
├── index.ts entry point: middleware, routes, errors
├── middleware/ rate limiting
├── routes/ health.ts, example.ts
├── services/ database, schema, Redis
├── types/ shared types
└── utils/ responses, validation, sanitizingMiljövariabler
- DATABASE_URL
- REDIS_URL
- CLERK_SECRET_KEY
- CLERK_PUBLISHABLE_KEY
- CORS_ORIGINS
Postgres och Redis behövs lokalt. CORS tillåter localhost:3000 om inget annat anges.
Bra att veta
- Ingen ESLint-konfiguration följer med än, så pnpm lint fungerar först när du lagt till en.
Byggd med
- Express 5
- TypeScript
- Clerk
- Drizzle
- PostgreSQL
- Redis
- Zod
Fler mallar
template-next-supabase
MITNext.js och Supabase, där ett typat datalager äger varje fråga och varje behörighetskontroll.
Next.js 16 · React 19 · Supabase
Läs mer →template-next-mongo
MITNext.js och MongoDB, där ett delat datalager äger klienten, scheman, frågor och behörighet.
Next.js 16 · React 19 · MongoDB driver 7
Läs mer →template-monorepo
MITEn webbapp i Next.js, ett API i Express och bakgrundsjobb i Inngest som delar ett databasschema.
Next.js 15 · React 19 · Clerk
Läs mer →template-gateway
MITEtt lager i Next.js mellan dina appar och ett befintligt API, där API-nyckeln stannar på servern.
Next.js 15 · React 19 · TypeScript
Läs mer →template-react-native
MITEn app för iOS och Android i Expo med navigering, ljust och mörkt tema och en typad API-klient.
Expo SDK 54 · React Native 0.81 · React 19
Läs mer →
Låt oss bygga
nästa sak.
Du pratar med mig, inte med en säljare. Första samtalet är gratis.
— Kenny
psst, det tar 15 min
Skriver du svarar jag samma vardag.