Skip to content

Repository files navigation

Aura Farm

A lighthearted mobile game that rewards students for doing good things or exploring campus such as attending events, hiking, volunteering. You complete challenges, submit proof, and climb leaderboards.

Team

Local Development

Prerequisites

  • Node.js 18+
  • npm
  • A Supabase project (shared team project or your own)
  • A PostgreSQL database (the Supabase project's DB works fine)

1. Clone and install

git clone https://github.com/codebox-calpoly/AuraFarm.git
cd AuraFarm

# Install backend dependencies
cd backend && npm install && cd ..

# Install frontend dependencies
cd frontend && npm install && cd ..

2. Configure the root .env file

cp backend/.env.example .env

Open .env in the repo root and fill in your values:

Variable Where to find it
DATABASE_URL Use Supabase Transaction pooler (port 6543) with ?pgbouncer=true&connection_limit=1 — not Session mode, or you can hit “max clients” errors. See backend/.env.example.
SUPABASE_URL Supabase → Project Settings → API → Project URL
SUPABASE_SERVICE_KEY Supabase → Project Settings → API → service_role secret key
SUPABASE_ANON_KEY Supabase → Project Settings → API → anon public key

Then run the database migrations:

cd backend && npx prisma migrate deploy && cd ..

3. Frontend environment

The frontend reads from the root .env file through Expo config, so there is no separate frontend .env file to maintain.

4. Start the backend

cd backend && npm run dev

The API will be available at http://localhost:3000.

5. Start the frontend

cd frontend && npx expo start

Scan the QR code with Expo Go on your phone, or press i for iOS Simulator / a for Android Emulator.

Physical device? The app automatically connects to your machine's local IP — no manual configuration needed as long as your phone and laptop are on the same WiFi network.

Contributing

Visit contributing.md on info for how to contribute to this repo.

Releases

Packages

Contributors

Languages