- Need to change max_user_watches to 524288
This project uses GitHub Actions for CI/CD:
- Continuous Integration: All pushes and pull requests to the
mainbranch trigger linting and tests. - Continuous Deployment: Successful changes to the
releasebranch are automatically deployed to the production server.
The CI/CD process includes:
- Test: Linting and testing with a Postgres database
- Build: Creating optimized production build
- Deploy: Deploying to DigitalOcean server
Run tests locally with:
npm run lint
npm testThis project supports both local PostgreSQL and Supabase as database providers.
- Create a Supabase project at supabase.com
- Copy your project URL and anon key from the Supabase dashboard
- Configure environment variables in
.env:
# Supabase Configuration
USE_SUPABASE=true
# Supabase credentials
VITE_SUPABASE_URL=https://your-project-id.supabase.co
VITE_SUPABASE_ANON_KEY=your-anon-key
# Environment
NODE_ENV=development
- Apply the database schema by running the SQL script in the Supabase SQL Editor:
- Go to your Supabase Dashboard > SQL Editor
- Open the file
migrations/supabase_schema.sql - Run the script to create all tables and policies
- Configure environment variables in
.env:
# Database URL for local PostgreSQL
DATABASE_URL=postgresql://postgres:postgres@localhost:5432/lefv_db
# Supabase Configuration
USE_SUPABASE=false
# Environment
NODE_ENV=development
- Apply migrations:
# Generate migration files
npx drizzle-kit generate
# Apply migrations to the database
npx drizzle-kit pushStart Drizzle Studio to manage your database:
npx drizzle-kit studioAccess Drizzle Studio at: https://local.drizzle.studio/
For more information, visit the Drizzle ORM Documentation