Skip to content

Michaux-Technology/Geco-SchoolPlan

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

108 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“š Geco-SchoolPlan

Geco-SchoolPlan is an open-source scheduling software designed for schools, training organizations, and educational associations.

It allows you to:

  • Easily schedule classes, groups, teachers, and rooms
  • View timetables in real time with a single click
  • Simplify educational organization

πŸ‘€ Who is it for?

  • Schools, middle schools, high schools, and training centers
  • Educational coordinators looking for a simple and efficient solution
  • Developers seeking a modular foundation for a school-oriented application

πŸ’‘ Why choose Geco-SchoolPlan?

βœ… Clear and intuitive interface
βœ… Modular open-source architecture
βœ… Easy deployment locally or on a server
βœ… Full control over your data
βœ… Real-time visible modifications
βœ… Caching system for students not connected to the app
βœ… Drag-and-drop course rescheduling

It consists of:

  • πŸ› οΈ a web frontend for schedule management (modification, assignment, visualization),
  • πŸ“± a mobile application for teachers and students, in read-only mode:
    πŸ‘‰ Geco-SchoolPlan-App

πŸ”— Online Demo

You can try Geco-SchoolPlan online at the following address:

πŸ‘‰ http://212.132.114.62:3000

Test Credentials:

  • βœ‰οΈ Email: test@test.com
  • πŸ”’ Password: 123456

The Android application for Teacher and Student:
Releases


πŸ’‘ My services ?

βœ… Bug fixing
βœ… Installation
βœ… VPS Server with Software (Ionos)


πŸš€ Key Features

  • πŸ” User authentication (teachers and students)

  • πŸ“† Course and timetable management

  • πŸ§β€β™‚οΈ Supervision scheduling

  • πŸ“² Secure mobile API

  • πŸ”’ JWT-based authentication

  • πŸ›‘οΈ Login attempt limitation

  • 🧩 Role-based access control

  • πŸ” Encrypted QR codes for secure mobile authentication

  • 🌐 Multilingual support:

    System interface languages: French, English, Spanish and German

    Teacher & Student app languages: French, English, Spanish, German, Arabic, and Russian


🧰 Requirements


βš™οΈ Local Installation

  1. Clone the repository:

    git clone https://github.com/Michaux-Technology/Geco-SchoolPlan.git cd Geco-SchoolPlan
  2. Install backend dependencies:

    cd backend npm install
  3. Install frontend dependencies:

    cd ../frontend npm install
  4. Create a .env file inside backend with the following variables:

    MONGODB_URI=mongodb://localhost:27017/Geco-SchoolPlan JWT_SECRET=your_jwt_secret PORT=5000 ENCRYPTION_KEY=geco-school-plan-2024-secure-key
  5. Create a .env file inside frontend with the following variables:

    VITE_SCHOOL_NAME=My School VITE_API_URL=http://xxx.xxx.xxx.xxx:5000 VITE_SCHOOL_NAME=Geco School VITE_ELEVE_USERNAME=eleve VITE_ELEVE_PASSWORD=1234 VITE_ENSEIGNANT_USERNAME=enseignant VITE_ENSEIGNANT_PASSWORD=1234 VITE_ENCRYPTION_KEY=votre_cle_secrete_unique_32_caracteres

xxx.xxx.xxx.xxx is your Server Backend IP

VITE_ELEVE and VITE_ENSEIGNANT are used for QR Code

πŸ” QR Code Encryption (Optional but Recommended):

  • VITE_ENCRYPTION_KEY: Secret key for encrypting QR code data (32 characters)
  • Add ENCRYPTION_KEY=votre_cle_secrete_unique_32_caracteres to backend .env
  • See QR_CODE_ENCRYPTION.md for detailed configuration

▢️ Start the Application

Backend:

cd backend npm start

Frontend:

cd frontend npm run dev

πŸ“‘ REST API – Main Endpoints

Method Endpoint Description
POST /api/mobile/login User login
GET /api/mobile/cours Get courses
GET /api/mobile/enseignants List of teachers
GET /api/mobile/surveillances List of supervisions
GET /api/mobile/status Server status

πŸ›‘οΈ Security

  • πŸ” JWT-based authentication
  • πŸ›‘οΈ Brute-force login protection
  • πŸ”’ Role-based access control
  • βš–οΈ GDPR compliant

🀝 Contributing

Contributions are welcome!
Feel free to open an issue or submit a pull request to suggest improvements or report bugs.


πŸ“„ License: Business Source License 1.1 (BSL 1.1)

This project is distributed under the Business Source License 1.1, which means:

  • βœ… Free for development, testing, research, and personal use
  • ❌ Not allowed in production environments without a commercial license

πŸ” Commercial Use

To use Geco-SchoolPlan in a production environment (schools, companies, public servers, etc.), you must obtain a commercial license.

πŸ“© License contact:
michaux@free.fr
michaux@magenda.de


⏳ Future Open Source

Starting July 4, 2030, this project will automatically be relicensed under GPL v3 (fully open source).

About

School Time Management Open Source

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors