Skip to content

zanellig/monorepo-skeleton

Repository files navigation

finance-tracker-trpc

This project was created with Better-T-Stack, a modern TypeScript stack that combines Next.js, Hono, TRPC, and more.

Features

  • TypeScript - For type safety and improved developer experience
  • Next.js - Full-stack React framework
  • TailwindCSS - Utility-first CSS for rapid UI development
  • shadcn/ui - Reusable UI components
  • Hono - Lightweight, performant server framework
  • tRPC - End-to-end type-safe APIs
  • Bun - Runtime environment
  • Drizzle - TypeScript-first ORM
  • MySQL - Database engine
  • Authentication - Better-Auth
  • Turborepo - Optimized monorepo build system

Getting Started

First, install the dependencies:

pnpm install

Database Setup

This project uses MySQL with Drizzle ORM.

  1. Make sure you have a MySQL database set up.

  2. Update your apps/server/.env file with your MySQL connection details.

  3. Apply the schema to your database:

pnpm db:push

Then, run the development server:

pnpm dev

Open http://localhost:3001 in your browser to see the web application. The API is running at http://localhost:3000.

Project Structure

finance-tracker-trpc/
├── apps/
│   ├── web/         # Frontend application (Next.js)
│   └── server/      # Backend API (Hono, TRPC)
├── packages/
│   ├── api/         # API layer / business logic
│   ├── auth/        # Authentication configuration & logic
│   └── db/          # Database schema & queries

Available Scripts

  • pnpm dev: Start all applications in development mode
  • pnpm build: Build all applications
  • pnpm dev:web: Start only the web application
  • pnpm dev:server: Start only the server
  • pnpm check-types: Check TypeScript types across all apps
  • pnpm db:push: Push schema changes to database
  • pnpm db:studio: Open database studio UI

About

Monorepo skeleton to scaffold new complex projects that need to scale using Turborepo, Bun, Drizzle, Better Auth, Hono and tRPC.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors