elysia-starter

A batteries included starter for building an API using bun and Elysia

MIT License

Stars
14
Committers
1

🔋 Batteries Included

🚀 Getting Started

To get started with this template, ensure that Bun is installed.

curl -fsSL https://bun.sh/install | bash

Development

  1. Install dependencies
bun install
  1. Start the development server
bun run dev

Open http://localhost:3000/ with your browser to see the result.

🏛️ Architecture and Design

TypeIDs

This starter uses TypeIDs which are type-safe, K-sortable, unique identifiers inspired by Stripe IDs. An example ID for a user would be user_123456.

API Resources

Each API resource (eg. users) are defined in src/resources. Each resource has a router.ts and service.ts. All the endpoints for the resource are defined in router.ts and all of the business logic ends up in service.ts.

🗺️ Roadmap

  • JWT authentication
  • Sane HTTP server defaults (CORS, etc.)
  • Better interop between Prisma and typebox
  • Example tests
  • Docker support
  • Monorepo with Next.js