Skip to content

laxmanfhaneendra/ClassTime

Repository files navigation

Class Time - Root Setup

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.

Product Preview

Video Walkthrough

Interface Snapshots

Features

  • 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.

Technology Stack

  • Frontend: React.js, Axios, Vanilla CSS
  • Backend: Node.js, Express.js
  • Database: PostgreSQL
  • Tooling: Concurrently

Getting Started (Windows)

Follow these steps to set up the project locally.

1. Database Initialization

  1. Install PostgreSQL: Ensure PostgreSQL is installed and running.
  2. Create Database: Create a database named authe.
  3. Run Scripts:
    • Execute schema.sql to build the database structure.
    • (Optional) Execute seed.sql for initial sample data or my_data.sql to restore exported data.

2. Environment Configuration

Update the database credentials in /backend/.env:

DB_USER=your_username
DB_PASSWORD=your_password

3. Setup and Startup

  • Dependencies: Run setup.bat to install all backend and frontend dependencies.
  • Run Application: Run start.bat to launch the backend and frontend services simultaneously.

Manual Installation

If you prefer using the command line:

# Install all dependencies
npm run install:all

# Start the application
npm start

Project Structure

  • frontend/: 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

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages