Skip to content

Repository files navigation

burn-app

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

Features

  • TypeScript - For type safety and improved developer experience
  • Next.js - Full-stack React framework
  • React Native - Build mobile apps using React
  • Expo - Tools for React Native development
  • TailwindCSS - Utility-first CSS for rapid UI development
  • shadcn/ui - Reusable UI components
  • Drizzle - TypeScript-first ORM
  • PostgreSQL - Database engine
  • Authentication - Better-Auth
  • Turborepo - Optimized monorepo build system

Getting Started

First, install the dependencies:

npm install

Environment Variables

For the web app (apps/web/.env), configure:

  • Database: DATABASE_URL – PostgreSQL connection string
  • Auth: BETTER_AUTH_SECRET, BETTER_AUTH_URL, CORS_ORIGIN
  • Email (verification & password reset): NODEMAILER_HOST, NODEMAILER_USER, NODEMAILER_APP_PASSWORD; optionally NODEMAILER_PORT (default 465). Required for email verification and forgot-password flows.

For the native app (apps/native/.env), set EXPO_PUBLIC_SERVER_URL to your web API URL.

Database Setup

This project uses PostgreSQL with Drizzle ORM.

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

  2. Update your apps/web/.env file with your PostgreSQL connection details.

  3. Apply the schema to your database:

npm run db:push

Then, run the development server:

npm run dev

Open http://localhost:3001 in your browser to see the fullstack application. Use the Expo Go app to run the mobile application.

Project Structure

burn-app/
├── apps/
│   └── web/         # Fullstack application (Next.js)
│   ├── native/      # Mobile application (React Native, Expo)
├── packages/
│   ├── api/         # API layer / business logic
│   ├── auth/        # Authentication configuration & logic
│   └── db/          # Database schema & queries

Available Scripts

  • npm run dev: Start all applications in development mode
  • npm run build: Build all applications
  • npm run check-types: Check TypeScript types across all apps
  • npm run dev:native: Start the React Native/Expo development server
  • npm run db:push: Push schema changes to database
  • npm run db:studio: Open database studio UI

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages