Welcome to Schedule2Calendar! This project is designed to help SUNY (State University of New York) students easily export their schedules to Google Calendar. With just a few clicks, you can manage your academic schedule and ensure you never miss a class or event.
- Easy Schedule Import: Quickly import your schedule from various sources.
- Google Calendar Integration: Export your schedule directly to Google Calendar.
- Chrome Extension: Extract your schedule from websites using our Chrome extension.
The frontend is built using React and Vite, with Material-UI and Tailwind CSS for styling.
src/components/Schedule.jsx: Handles schedule fetching and Google Calendar integration.startLine: 1 endLine: 368
src/components/Home.jsx: The home page of the application.startLine: 1 endLine: 86
src/components/Extension.jsx: Information about the Chrome extension.startLine: 1 endLine: 33
src/App.jsx: Main application component with routing.startLine: 1 endLine: 43
The backend is built using Node.js, Express, and MongoDB.
routes/userRoutes.js: Handles user-related routes and operations.startLine: 1 endLine: 100
routes/courseRoutes.js: Handles course-related routes and operations.startLine: 8 endLine: 133
models/userModel.js: Mongoose schema for user data.startLine: 1 endLine: 19
models/course.js: Mongoose schema for course data.startLine: 1 endLine: 25
The Chrome extension helps extract schedule data from websites.
popup.js: Handles the extension's popup logic.startLine: 1 endLine: 115popup.html: The HTML for the extension's popup.startLine: 1 endLine: 175manifest.json: Configuration for the Chrome extension.startLine: 1 endLine: 23
-
Clone the repository:
git clone https://github.com/yourusername/schedule2calendar.git cd schedule2calendar -
Install dependencies:
cd frontend/front npm install cd ../../backend npm install
-
Run the frontend:
cd frontend/front npm run dev -
Run the backend:
cd backend npm start -
Load the Chrome extension:
- Open Chrome and go to
chrome://extensions/ - Enable "Developer mode"
- Click "Load unpacked" and select the
CD Extensionfolder
- Open Chrome and go to
- Sign up or log in to the application.
- Import your schedule using the Chrome extension or manually.
- Export your schedule to Google Calendar with a single click.
This project is licensed under the MIT License.