You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Renders all pages, handles routing, animations with Framer Motion, and accessible UI via ShadCN
Authentication
Firebase Auth (Google & GitHub OAuth)
Secure multi-provider login, persistent sessions, and protected route access control
API Layer
Next.js Serverless API Routes
Handles all server-side logic — CRUD operations, AI requests, analytics, and real-time coordination
Real-time Engine
Socket.io (Client + Server)
Powers live group chat, peer notifications, and collaborative study features
AI Assistant
Google Gemini API
Provides the AI chatbot, smart search, study content generation, and doubt solving
Notes Q&A (RAG)
FastAPI + Embeddings
Upload notes, retrieve relevant chunks, and answer using only the provided material
ML Model Handler
Python Environment
Runs ML models for academic recommendations, performance predictions, and intelligent suggestions
Primary Database
MongoDB + Mongoose ODM
Stores users, flashcards, blogs, forums, study plans, timetables, tutoring, and mind maps
Real-time Storage
Firebase Firestore
Manages authentication state, real-time data sync, and live collaboration
Hosting
Vercel
Production deployment with auto-scaling, serverless functions, edge network, and global CDN
Containerization
Docker
Packages the application for reproducible environments across development, staging, and production
CI/CD
GitHub Actions
Automates testing, linting, Docker builds, and deployments on every push to main
How to Deploy
Option 1: Vercel (Recommended — Zero Config)
# 1. Install Vercel CLI
npm i -g vercel
# 2. Navigate to the app directorycd academicpal
# 3. Deploy to production
vercel --prod
Set your environment variables in the Vercel dashboard under Project → Settings → Environment Variables.
Option 2: Docker
# 1. Build the Docker image
docker build -t academicpal .# 2. Run the container (pass env vars)
docker run -p 3000:3000 \
-e MONGODB_URI="your_mongodb_uri" \
-e NEXT_PUBLIC_FIREBASE_API_KEY="your_key" \
-e GEMINI_API_KEY="your_gemini_key" \
academicpal
Option 3: Manual (Node.js)
# 1. Install dependenciescd academicpal && npm install
# 2. Configure environment
cp .env.example .env
# Fill in all required values in .env# 3. Build for production
npm run build
# 4. Start the server
npm run start
AcademicPal is a comprehensive full-stack web application designed to empower B.Tech students with AI-powered study tools, real-time collaboration, and community-driven academic resources. Built with modern technologies and a student-first approach.
Smart Learning
Collaboration
Analytics
Secure Auth
AI-powered search
Real-time chat
Performance tracking
Firebase + OAuth
Features
AI-Powered Tools
Feature
Description
AI Assistant
Gemini-powered chatbot for instant academic help and doubt solving
Smart Search
AI-enhanced search across all resources with semantic understanding
Notes Q&A (RAG)
Upload notes and get context-aware answers grounded only in your material
Study Planner
Intelligent schedule generation based on your goals and deadlines
Academic Resources
Feature
Description
Notes Repository
Well-organized, exam-ready notes by semester and branch
Question Papers
Previous years' papers with pattern analysis
Flashcards
Create, edit, and review flashcards for active recall learning
Mind Maps
Visual learning with interactive mind map creator
Blogs
Read and write study tips, experiences, and guides
Collaboration
Feature
Description
Real-Time Chat
Instant messaging with peers using Socket.io
Study Groups
Create or join subject-specific study communities
Discussion Forums
Q&A threads with upvoting and threaded replies
Peer Tutoring
Connect with tutors, schedule sessions, and leave feedback
Productivity
Feature
Description
Performance Analytics
Track study hours, goals achieved, and identify weak areas
Timetable Generator
Create and manage your class/study schedules
Study Reminders
Smart notifications to keep you on track
Upload & Share
Contribute and explore peer materials
Authentication & Security
Feature
Description
Multi-Provider Auth
Google & GitHub OAuth via Firebase
Protected Routes
Secure access control for authenticated pages
Session Management
Persistent login across browser sessions
Tech Stack
Frontend
Next.js 16 → React framework with App Router & Turbopack
TypeScript → Type-safe development
Tailwind CSS → Utility-first styling
Framer Motion → Smooth animations
ShadCN UI → Accessible component library
Lucide React → Modern icon system
Backend
Next.js API Routes → Serverless API endpoints
Mongoose → MongoDB ODM
Firebase Auth → Authentication & user management
Socket.io → Real-time communication
Database & Storage
MongoDB → Primary database
Firebase → Auth & real-time features
# Clone the repository
git clone https://github.com/Hari-hara7/Academic-pal.git
cd Academic-pal/academicpal
# Install dependencies
npm install
# Setup environment variables
cp .env.example .env
# Edit .env with your configuration# Start development server
npm run dev