Inspiration
As a student, I often found myself overwhelmed by the sheer volume of assignments, projects, and exams across different courses. Traditional planners and calendar apps didn't account for the complexity of academic life, varying assignment weights, different grading systems, and the need for strategic study planning. This project was born from my personal struggle to find a tool that could help students like me stay on top of their academic responsibilities while maintaining a healthy work-life balance.
What I Learned
Building this academic planner has been an incredible learning journey:
- Full-Stack Development: Gained hands-on experience with modern web technologies including Next.js, React, and Convex for backend services
- Data Visualization: Implemented interactive charts using Recharts to provide students with clear insights into their academic performance
- Responsive Design: Ensured the application works seamlessly across different devices and screen sizes
- Type Safety: Leveraged TypeScript to catch errors early and improve code quality
Technical Implementation
The application is built with:
- Frontend: Next.js 15 with React 19 and TypeScript
- UI Components: shadcn/ui for the foundation of the design system
- Data Visualization: Recharts for interactive and accessible charts
- Backend: Convex for database and serverless functions
- Authentication: Database and auth provided by Convex
- Deployment: Vercel for hosting and continuous deployment
Key features include:
- Assignment tracking with due dates and statuses
- Grade calculation and GPA tracking
- Interactive performance analytics
- Responsive design for all devices
- Secure user accounts with data persistence
Future Enhancements
- Mobile app development for on-the-go access
- Integration with popular learning management systems (LMS)
- AI-powered study recommendations
- Collaborative features for group projects
- Advanced analytics and predictive performance tracking
Built With
- convex
- nextjs
- react
- tailwind
- typescript
Log in or sign up for Devpost to join the conversation.