BRACU Oracle is a comprehensive academic management platform designed specifically for BRAC University students. It aims to streamline the course registration process, provide real-time information, and enhance the overall academic experience.
- PrePreReg: Build your course routine effortlessly with intelligent scheduling based on live data
- Live Seat Status: Real-time updates on course seat availability
- Course Swap Platform: Centralized system for course swapping between students
- Faculty Review System: Structured platform for faculty ratings and feedback
- Course Directory: Comprehensive repository of academic resources and materials
- Frontend: Next.js 15, React, Tailwind CSS
- Backend: Supabase (PostgreSQL)
- ORM: Drizzle ORM
- Authentication: NextAuth.js with Google OAuth
- UI Components: Radix UI, shadcn/ui
- Package Manager: npm
- Node.js (v18+)
- npm
- Supabase account
- Clone and install:
git clone <repository-url>
cd boracle
npm install- Set up environment:
Create a
.envfile:
DATABASE_URL=postgres://postgres.[project-ref]:[password]@aws-0-[region].pooler.supabase.com:6543/postgres
AUTH_SECRET=your-auth-secret-here
GOOGLE_ID=your-google-client-id
GOOGLE_SECRET=your-google-client-secret- Setup database and start:
npm run db:push
npm run devOpen http://localhost:3000 to view the app.
Note: Only BRACU emails (@g.bracu.ac.bd) can sign in.
# Generate migration files
npm run db:generate
# Run migrations
npm run db:migrate
# Push schema changes (recommended for Supabase)
npm run db:push
# Seed database with sample data
npm run db:seedWe welcome contributions! Please follow these steps:
- Comment on an issue before starting work
- Fork the repo and create a feature branch
- Follow conventional commits:
feat:,fix:,docs:, etc. - Reference issues in commits:
fixes #123 - Test locally before submitting PR
Commit Examples:
git commit -m "feat: add course filtering (closes #123)"
git commit -m "fix: resolve login issue (fixes #456)"Join our Discord for help!
MIT License
