The web's most popular Jamstack front-end template (boilerplate) for building web applications with React
Building modern web applications shouldn’t require weeks of configuration hell. This React Starter Kit eliminates the tedious setup work so you can focus on what matters: shipping great products.
Designed for developers who value both speed and quality, this template provides a complete foundation for full-stack applications. From solo projects to team collaborations, it scales with your ambitions while maintaining the developer experience you deserve.
This project was bootstrapped with React Starter Kit.
Be sure to join our Discord channel for assistance.
This starter kit uses a thoughtfully organized monorepo structure that promotes code reuse and maintainability:
├──
app/
— React frontend with Vite, TanStack Router, and Tailwind CSS
├──
api/
— tRPC API server powered by Hono framework
├──
edge/
— Cloudflare Workers entry point and edge logic
├──
core/
— Shared TypeScript types and utilities
├──
db/
— Database schemas, migrations, and seed data
├──
scripts/
— Build automation and development tools
Why Monorepo? This structure enables seamless code sharing between frontend and backend, ensures type consistency across your entire stack, and simplifies dependency management. When you update a type definition, both client and server stay in sync automatically.
Core Runtime & Platform
Frontend & UI
Backend & API
Database & ORM
Development Tools
Generate a new repository from this template, then clone it locally:
git clone https://github.com/your-username/your-project-name.git
cd your-project-name
bun install
Update environment variables in .env
and .env.local
files as well as Wrangler configuration in wrangler.jsonc
.
Open two terminals and run these commands:
Terminal 1 - Frontend:
bun --cwd app start
Terminal 2 - Backend:
bun --cwd edge build --watch
bun wrangler dev
# Let Wrangler create the D1 database locally
bun wrangler d1 execute db --local --command "SELECT 1"
# Apply database schema and migrations
bun --cwd db migrate
bun --cwd db seed # Optional: add sample data
Open http://localhost:5173 to see your app running. The backend API will be available at the port shown by wrangler dev
(typically 8787).
Ensure your production environment variables are configured:
# Set secrets in Cloudflare Workers
bun wrangler secret put BETTER_AUTH_SECRET --env=production
bun wrangler secret put OPENAI_API_KEY --env=production
# Build all packages
bun --cwd app build
bun --cwd edge build
# Deploy to Cloudflare Workers
bun wrangler deploy --env=production
Your application will be live on your Cloudflare Workers domain within seconds. The edge-first architecture ensures optimal performance regardless of user location.
Anyone and everyone is welcome to contribute. Start
by checking out the list of open issues
marked help wanted.
However, if you decide to get involved, please take a moment to review the
guidelines.
Copyright © 2014-present Kriasoft. This source code is licensed under the MIT license found in the
LICENSE file.
Made with ♥ by Konstantin Tarkus (@koistya, blog)
and contributors.