Cultivate your academic journey with Plant - an intelligent course planning platform designed specifically for Northeastern University students. Plant helps you grow and thrive in your studies with personalized course recommendations, smart planning tools, and AI-powered insights that nurture your academic success.
- AI-Powered Recommendations: Get personalized course suggestions that adapt to your learning style and academic goals
- Intelligent Planning: Plan semester-by-semester with course difficulty ratings for balanced loads
- Career Alignment: Align your studies with future career opportunities and industry growth
- Real-time Progress Monitoring: Track your progress toward graduation with live requirement checking
- Major Requirements: Comprehensive tracking for all Northeastern majors (especially Computer Science)
- Prerequisite Management: Automatic prerequisite checking and course sequencing
- AI Chatbot: Context-aware academic assistant powered by Google Gemini AI
- Course Difficulty Ratings: 1-5 scale difficulty ratings for 87,000+ courses
- PDF Transcript Processing: Upload and automatically parse your academic transcripts
- PDF Export: Generate comprehensive PDF reports of your academic plans
- Semester Management: Plan your academic seasons with drag-and-drop course scheduling
- Course Database: Access to complete Northeastern University course catalog
- Requirement Validation: Real-time checking against major requirements
- Next.js 15.5.4 with App Router
- React 19.1.0 with TypeScript
- Tailwind CSS 4.1.14 with custom plant-themed animations
- Radix UI for accessible components
- Lucide React for icons
- @dnd-kit for drag-and-drop functionality
- Firebase (Authentication + Firestore)
- Google Generative AI (Gemini 2.0 Flash) for AI assistance
- Next.js API Routes for server-side functionality
- jsPDF for client-side PDF generation
- html2canvas for advanced PDF rendering
- Python web scraping scripts
- Beautiful Soup for HTML parsing
- JSON for structured data storage
- Node.js 18+
- npm or yarn
- Firebase project
- Google AI API key
git clone https://github.com/yourusername/plant.git
cd plantnpm install
# or
yarn installCreate a .env.local file in the root directory:
# Firebase Configuration
NEXT_PUBLIC_FIREBASE_API_KEY=your_firebase_api_key
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your_project.firebaseapp.com
NEXT_PUBLIC_FIREBASE_PROJECT_ID=your_project_id
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your_project.appspot.com
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your_sender_id
NEXT_PUBLIC_FIREBASE_APP_ID=your_app_id
# Google AI API
NEXT_PUBLIC_GEMINI_API_KEY=your_gemini_api_key- Create a Firebase project at Firebase Console
- Enable Authentication (Email/Password)
- Create a Firestore database
- Update the environment variables with your Firebase config
npm run dev
# or
yarn devOpen http://localhost:3000 to view the application.
The application uses several comprehensive datasets:
- Course Catalog: 79,572 lines of structured course data from Northeastern University
- Course Difficulty: 87,529 courses with 1-5 difficulty ratings
- Major Requirements: 23,206 lines covering 72+ majors
- CS Requirements: Detailed Computer Science program requirements
Plant uses a nature-inspired design system with:
- Plant-themed animations: Leaf floating, growing effects, organic shapes
- Green color palette: Various shades of green representing growth
- Organic UI elements: Rounded corners, natural shadows, flowing transitions
- Accessibility: WCAG compliant with Radix UI components
The AI chatbot provides:
- Course scheduling advice
- Requirement tracking assistance
- Career-focused recommendations
- Difficulty-balanced semester planning
Upload academic transcripts for automatic course extraction using AI vision.
Plant offers comprehensive PDF export capabilities to help you document and share your academic plans.
npm run dev # Start development server with Turbopack
npm run build # Build for production with Turbopack
npm run start # Start production server
npm run lint # Run ESLintTo update course data:
cd data/
python scraping.py # Scrape course catalog
python cleaning.py # Clean and structure data
python score_eval.py # Evaluate course difficulty- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Northeastern University for course catalog data
- Google AI for Gemini integration
- Firebase for backend services
- The open-source community for amazing tools and libraries