Class Time is a school management and scheduling platform designed for administrators, teachers, and students. It provides tools for managing class sections, rooms, and courses with real-time timetable adjustments and validation.
- Administrative Control: Tools to manage rooms, courses, semesters, and time slots.
- Dynamic Scheduling: Interactive interface for single-day and bulk scheduling.
- Teacher Portals: Personal teaching schedules and classroom views.
- Student Hub: Access to class schedules and announcements.
- Conflict Detection: Automated validation to prevent scheduling overlaps.
- Broadcast System: Multi-audience announcement system.
- Frontend: React.js, Axios, Vanilla CSS
- Backend: Node.js, Express.js
- Database: PostgreSQL
- Tooling: Concurrently
Follow these steps to set up the project locally.
- Install PostgreSQL: Ensure PostgreSQL is installed and running.
- Create Database: Create a database named
authe. - Run Scripts:
- Execute
schema.sqlto build the database structure. - (Optional) Execute
seed.sqlfor initial sample data ormy_data.sqlto restore exported data.
- Execute
Update the database credentials in /backend/.env:
DB_USER=your_username
DB_PASSWORD=your_password- Dependencies: Run
setup.batto install all backend and frontend dependencies. - Run Application: Run
start.batto launch the backend and frontend services simultaneously.
If you prefer using the command line:
# Install all dependencies
npm run install:all
# Start the application
npm startfrontend/: React application and assets.backend/: Node.js/Express server and API logic.schema.sql: Database schema definitions.seed.sql: Sample data for testing.my_data.sql: Exported user data.setup.bat: Installation script.start.bat: Startup script.
© 2024 Class Time Management System



