ImperialPredict is a comprehensive grade tracking, past paper analytics, and degree strategy platform built specifically for Imperial College London students. It replaces disconnected spreadsheets and manual calculations with one secure workspace for monitoring academic progress, predicting outcomes, and planning grade scenarios.
The active application is located in imperialpredict-v2/.
ImperialPredict V2 uses:
The Next.js application follows the App Router structure:
imperialpredict-v2/
├── app/ # Routes, layouts, metadata, and server actions
├── components/ # Shared interface and dashboard components
├── lib/ # Supabase clients and grade calculation utilities
├── public/ # Static assets
└── types/ # Shared TypeScript definitions
Private dashboard routes use Supabase authentication and Row Level Security. Browser, server, and administrative Supabase operations use separate clients appropriate to their security context.
Clone the repository and install the V2 dependencies:
git clone https://github.com/Sohan-Suchdev/Imperial_Predict.git
cd Imperial_Predict/imperialpredict-v2
npm install
Create imperialpredict-v2/.env.local and configure the required Supabase environment variables:
NEXT_PUBLIC_SUPABASE_URL=your-supabase-project-url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your-supabase-anon-key
SUPABASE_SERVICE_ROLE_KEY=your-supabase-service-role-key
The service role key is used only by secure server-side administrative actions. Never expose it in client-side code or commit .env.local to version control.
Start the development server:
npm run dev
Open http://localhost:3000 in your browser.
Run these commands from imperialpredict-v2/:
npm run dev # Start the local development server
npm run lint # Run lint checks
npm run build # Create a production build
npm run start # Run the production build
The application is designed for deployment on Vercel. Configure the same Supabase environment variables in the deployment environment and replace placeholder production URLs in the Next.js metadata, sitemap, and robots configuration before launch.
ImperialPredict is an independent, unofficial tool. It is not affiliated with, endorsed by, or connected to Imperial College London. Grade predictions are estimates; students should consult official departmental information for authoritative academic guidance.