Feature packed ElysiaJS boilerplate. Edge ready. Deploy with one click.
Taken inspiration from https://github.com/ethanniser/the-beth-stack.
- ποΈ TypeScript - Configured to maximize type safety
- π ElysiaJS - Fast and Bun friendly server framework
- π HTMX - High power tools for HTML
- π½ Drizzle - ORM with maximal type safety
- π Auth.js - Flexible and secure authentication
- π integrates with Drizzle to store auth data
- π ESLint - Consistent code standards
- β¨ Prettier - Consistent code styling
- π¨ Tailwind CSS - Utility-first CSS framework
- π» VS Code configurations - Configurations for extensions
- π³ Docker - (local and production) Docker-compose and Dockerfiles for running anywhere
- π GitHub Actions - Robust CI/CD
π Option 1: Clone and deploy
-
To Railway (deployed with Docker)
-
To Vercel Edge Functions (see the Railway template for required environment variables, as well as
RUNTIME=edge
)
π Option 2: Clone and run locally
- Fork this repository (uncheck 'Copy the
main
branch only` if you are interested in other branches / feature sets) - Clone your new repository
- Install dependencies and run the development server
-
with bun
bun install bun run dev
-
or with Docker
docker-compose --file docker/dev/docker-compose.yml up
.dockerignore
docker/
- Dockerfile and docker-compose.yml for development and production
.github/workflows/ci.yml
- type-checking and linting (hence these errors are ignored innext.config.mjs
)
public/htmx@1.9.5.min.js
types/htmx.d.ts
- typed HTMX attributes for intellisense and autocompletion
src/app/api/auth/index.ts
src/app/components/auth.tsx
src/db/schemas/auth.ts
β store auth data (users, accounts, sessions, verification tokens) in databasesrc/hooks/isAuthenticated.ts
src/lib/auth.ts
tsconfig.json
- configured for maximum type-safetytypes/reset.d.ts
- using ts-reset to increase type-safety
api/index.tsx
scripts/transform-paths.ts
- transforms all relative imports to absolute imports inside the src/ directoryvercel.json
.vscode/extensions.json
- recommended workspace extensions