Skip to content

ShreyasAyyengar/fullstack-template

Repository files navigation

Fullstack Monorepo Template

A comprehensive, high-performance fullstack monorepo template powered by Bun, Turborepo, and oRPC. This project provides a unified architecture for building Web, Desktop (Electron), and Mobile (Expo) applications with a shared backend and type-safe contracts.

🚀 Tech Stack

Core Tooling

Backend API (apps/api)

Shared Contracts & RPC (packages/contracts)

  • Communication: oRPC (End-to-end type-safe APIs with TanStack Query integration)
  • OpenAPI: Automated documentation and client generation

Frontend Applications

UI Library (packages/ui)

  • Styling: Tailwind CSS v4
  • Components: Radix UI primitives (Shadcn-style)
  • Forms: React Hook Form with Zod resolvers

📁 Project Structure

├── apps
│   ├── api          # Elysia backend
│   ├── electron     # Electron desktop app (Vite + React)
│   ├── expo         # Cross-platform mobile app
│   └── web          # Next.js web application
├── packages
│   ├── contracts    # Shared oRPC schema and types
│   ├── shad-ui      # Shared UI component library
│   └── typescript-config # Shared tsconfig bases
├── turbo.json       # Turborepo configuration
└── biome.json       # Biome linting/formatting rules

🛠️ Getting Started

Prerequisites

  • Bun installed (version >= 1.1.0 recommended)
  • Node.js >= 18

Installation

bun install

Development

Run all applications in development mode:

bun dev

Or run a specific application:

bun dev --filter=@fullstack-template/web

Build

bun build

Linting & Formatting

bun lint

🔑 Environment Variables

Each application requires its own .env file.

About

API, Web, Electron, Expo — Monorepo

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages