A modern full-stack application built with TypeScript and Turbo.
- React Router - Declarative routing for React
- Elysia - Ergonomic framework for humans
- Eden - End-to-end type safety for Elysia
- Drizzle ORM - TypeScript ORM with SQL-like syntax
- Basic Auth - Simple authentication implementation
- Turbo - High-performance build system for JavaScript and TypeScript
- TypeScript - JavaScript with syntax for types
- Oxlint - Designed to catch erroneous or useless code without requiring any configurations by default
- Oxfmt - A Prettier-compatible code formatter
- Bun - Package manager
- Clone the repository
git clone [email protected]:your-username/yukine.git
cd yukine- Install dependencies:
bun install- Set up your environment variables:
cp .env.example .env- Set up the database:
bun run db:push- Start the development server:
bun run devyukine/
├── apps/ # Applications
│ ├── api/ # Elysia app
│ └── react-router/ # React-router app
├── packages/ # Shared packages
│ ├── db/ # Database package
│ ├── ui/ # Shared shadcn/ui components
│ └── validators/ # Shared validation schemas
├── tools/ # Build tools and configurations
│ ├── oxfmt/ # Oxfmt configuration
│ ├── oxlint/ # Oxlint configuration
│ └── typescript/ # TypeScript configuration
├── turbo.json # Turbo configuration
└── package.json # Root package.json
This project uses Drizzle ORM for database operations.
# Push schema changes to database
cd packages/db
bun run db:push
# Open Drizzle Studio
cd packages/db
bun run db:studioBasic authentication implementation for simple use cases.
# Development
bun run dev # Start development server
bun run build # Build for production
# Code Quality
bun run lint # Run Oxlint
bun run typecheck # Run TypeScript checks
# Database
bun run db:push # Push schema changes
bun run db:studio # Open database studio