Skip to content

BigInformatics/gobigtoo

GoBig

Foundational framework for building apps in the organization.

Features

  • Astro - Modern web framework
  • Better Auth - Complete authentication solution with email/password
  • Drizzle ORM - Type-safe database ORM
  • Stripe - Payment processing library
  • Chakra UI v3 - Component library
  • Tailwind CSS - Utility-first CSS framework
  • TypeScript - Type safety
  • Bun - Fast JavaScript runtime

Database Schema

  • Users - User accounts with Better Auth integration
  • Sessions - Active user sessions
  • Accounts - OAuth provider accounts
  • Verification Tokens - Email verification tokens
  • Settings - User preferences and settings
  • Subscriptions - Stripe subscription management

Getting Started

Prerequisites

  • Bun 1.0+ (https://bun.sh) - Recommended
  • Or Node.js 18+ with npm as fallback

Installation

  1. Clone the repository:
git clone https://github.com/BigInformatics/gobig.git
cd gobig
  1. Install dependencies:
# Using Bun (recommended) - generates bun.lock
bun install

# Or using npm (fallback) - generates package-lock.json
npm install

Note: This project uses bun.lock for dependency locking when using Bun (v1.3+). The package-lock.json is gitignored to avoid conflicts. If you use Bun, it will automatically create/update bun.lock. If you use npm, it will create package-lock.json locally (gitignored).

  1. Set up environment variables:
cp .env.example .env
# Edit .env and add your configuration
  1. Initialize the database:
# Using Bun
bun run db:push

# Or using npm
npm run db:push

Development

Start the development server:

# Using Bun (recommended)
bun run dev

# Or using npm (fallback)
npm run dev

The application will be available at http://localhost:4321

Database Management

Use bun run or npm run for the following commands:

  • Generate migrations: bun run db:generate or npm run db:generate
  • Push schema: bun run db:push or npm run db:push
  • Migrate: bun run db:migrate or npm run db:migrate
  • Studio: bun run db:studio or npm run db:studio - Open Drizzle Studio

Pages

  • / - Main landing page
  • /login - User login
  • /signup - User registration
  • /app - Protected application page (requires authentication)

API Routes

  • /api/auth/* - Better Auth endpoints (sign in, sign up, sign out, session management)

Building for Production

# Using Bun
bun run build
bun run preview

# Or using npm
npm run build
npm run preview

Environment Variables

See .env.example for all available environment variables:

  • DATABASE_URL - Database connection string
  • BETTER_AUTH_SECRET - Secret key for Better Auth
  • BETTER_AUTH_URL - Application URL
  • STRIPE_SECRET_KEY - Stripe secret key (optional)
  • STRIPE_PUBLISHABLE_KEY - Stripe publishable key (optional)

License

MIT

About

Foundational framework for apps.

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •