A comprehensive student management platform designed to help university students organize their academic life, track habits, manage finances, and stay on top of their studies.
- Weekly Calendar View: Visualize your class schedule at a glance.
- Class Management: Add, edit, and delete classes with details like location, professor, and color coding.
- Attendance Tracking: Keep track of your attendance for each class.
- Focus Sessions: Built-in 25-minute focus timer.
- Break Intervals: Automatic 5-minute break periods.
- Session Tracking: Monitor your total focus hours and completed sessions.
- Visual Progress: Circular progress indicator and audio notifications.
- Markdown Support: Write rich text notes with easy formatting.
- Organization: Pin important notes and search through your collection.
- Color Coding: Categorize notes visually.
- Real-time Analytics: Live data on habits, finance, and study time.
- Visual Charts: Interactive graphs for habit completion and financial overview.
- Quick Actions: Fast access to frequently used tools.
- Upcoming Deadlines: Widget to track immediate goals.
- Habit Tracking: Build and monitor positive habits.
- Streak System: Gamified consistency tracking.
- Frequency Options: Daily, weekly, or monthly habits.
- Transaction Tracking: Log income and expenses.
- Financial Health: View total balance, income, and expenses.
- Categorization: Organize transactions by type (Food, Transport, etc.).
- Task Management: Create and track study tasks.
- Study Notes: Organize academic notes by subject.
- Goal Setting: Define personal, academic, and financial goals.
- Progress Tracking: Monitor completion status.
Campus-Sync/
├── client/ # React frontend application
│ ├── src/
│ │ ├── components/ # Reusable UI components
│ │ ├── context/ # Global state (User, Theme)
│ │ ├── pages/ # Main application pages
│ │ └── utils/ # API integration & helpers
│ └── package.json
│
├── server/ # Express backend API
│ ├── src/
│ │ ├── controllers/ # Business logic
│ │ ├── middleware/ # Auth & error handling
│ │ ├── routes/ # API endpoints
│ │ └── utils/ # Helper functions
│ ├── prisma/ # Database schema & migrations
│ └── package.json
│
└── README.md
- React 18 - UI library
- Vite - Build tool
- Tailwind CSS - Styling
- Framer Motion - Animations
- Chart.js - Data visualization
- Lucide React - Icons
- Axios - HTTP client
- Node.js - Runtime
- Express - Web framework
- TypeScript - Type safety
- Prisma ORM - Database management
- PostgreSQL - Database
- JWT - Authentication
- bcryptjs - Password hashing
- Node.js (v18 or higher)
- PostgreSQL (v14 or higher)
- npm or yarn
-
Clone the repository
git clone https://github.com/Peterase-1/Campus-Sync.git cd Campus-Sync -
Setup Backend
cd server npm installCreate a
.envfile in the server directory:DATABASE_URL="postgresql://postgres:your_password@localhost:5432/campus_sync?schema=public" PORT=5000 JWT_SECRET="your-secret-key-here"
Run Prisma migrations:
npx prisma generate npx prisma migrate dev
-
Setup Frontend
cd ../client npm install
-
Start the Backend (from
/serverdirectory)npm run dev
Backend will run on
http://localhost:5000 -
Start the Frontend (from
/clientdirectory)npm run dev
Frontend will run on
http://localhost:5173 -
Visit
http://localhost:5173in your browser
- Goals 2.0: Milestones, auto-progress tracking, and gamification achievements.
- Finance 2.0: Smart budgeting with monthly limits and visual alerts.
- Academic 2.0: Assignment tracker, gradebook, and GPA calculator.
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the project
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License.
- Petros Asegid - Peterase-1
- React team for the amazing framework
- Prisma team for the excellent ORM
- All contributors and supporters
Made with love for students, by students