This project was created with Better-T-Stack, a modern TypeScript stack that combines React, TanStack Router, Hono, ORPC, and more.
- TypeScript - For type safety and improved developer experience
- TanStack Router - File-based routing with full type safety
- TailwindCSS - Utility-first CSS for rapid UI development
- shadcn/ui - Reusable UI components
- Hono - Lightweight, performant server framework
- oRPC - End-to-end type-safe APIs with OpenAPI integration
- workers - Runtime environment
- Drizzle - TypeScript-first ORM
- PostgreSQL - Database engine
- Authentication - Email & password authentication with Better Auth
- PWA - Progressive Web App support with installation prompts
- Turborepo - Optimized monorepo build system
First, install the dependencies:
bun installThis project uses PostgreSQL with Drizzle ORM.
-
Make sure you have a PostgreSQL database set up.
-
Update your
apps/server/.envfile with your PostgreSQL connection details. -
Apply the schema to your database:
bun db:pushThen, run the development server:
bun devOpen http://localhost:3001 in your browser to see the web application. The API is running at http://localhost:3000.
future-stack/
├── apps/
│ ├── web/ # Frontend application (React + TanStack Router)
│ └── server/ # Backend API (Hono, ORPC)
bun dev: Start all applications in development modebun build: Build all applicationsbun dev:web: Start only the web applicationbun dev:server: Start only the serverbun check-types: Check TypeScript types across all appsbun db:push: Push schema changes to databasebun db:studio: Open database studio UIcd apps/web && bun generate-pwa-assets: Generate PWA assets
The app includes a dedicated PWA installation page at /install-pwa that provides:
- Automatic Installation Detection - Detects if the app is already installed
- Cross-Platform Support - Works on iOS, Android, and Desktop browsers
- Installation Prompts - Smart prompts that appear when the app can be installed
- Manual Instructions - Step-by-step installation guides for different platforms
- Feature Showcase - Highlights offline support, image handling, and native app features
The PWA installation prompts also appear on the home page and offline todos page to encourage users to install the app for the best experience.




