Skip to content

ClonerNotFound/SchoolScheduler

Repository files navigation

School Scheduler

Простой генератор школьного расписания с учётом доступности преподавателей и равномерного распределения нагрузки.
Этот проект — попытка сделать что-то полезное и одновременно понятное, чтобы быстро собрать расписание по классам и предметам, без лишнего перфекционизма.

Что умеет

  • CRUD для преподавателей, предметов, классов и назначений
  • Управление доступностью преподавателей через список дней недели (одним полем)
  • Генерация официального расписания с равномерной нагрузкой и без повторов предметов в один день
  • Генерация рабочего расписания с учётом доступности преподавателей
  • Экспорт расписания в Excel (EPPlus)
  • UI на WPF — ничего лишнего, чтобы было удобно и быстро

Технический стек

  • C# и .NET 8 (WPF)
  • SQLite + Dapper для простого и быстрого хранения
  • EPPlus для экспорта в Excel
  • Минимальный MVVM — не переусложнял, но с базовой структурой

Быстрый старт

git clone https://github.com/ClonerNotFound/school-scheduler.git
cd school-scheduler
dotnet build
dotnet run

При первом запуске автоматически создаётся база shedule.db с необходимыми таблицами (если их нет).
Далее через UI можно добавить данные: преподавателей, предметы, классы и назначения.

Как пользоваться

  • Через вкладки добавляйте преподавателей, предметы, классы, назначайте предметы с нагрузкой и преподавателями
  • Указывайте доступность преподавателей — просто выбираете дни недели, когда они доступны
  • Вкладка расписания — генерируете официальное или рабочее расписание с учётом всех данных
  • Экспортируете расписание в Excel, чтобы показать или распечатать

Лицензия

MIT License — делайте с этим что хотите, но без коммерческого использования (буду признателен, если сообщите).
Автор: ClonerNotFound
GitHub: https://github.com/ClonerNotFound
Email: [email protected]

Связь и помощь

Если что-то не работает или есть идеи — создавайте issue или пишите на почту.
Любые улучшения и форки приветствуются!

Спасибо, что посмотрели!
Если проект пригодился — звёздочку не забудьте <3 Если свяжитесь со мной по поводу вопросов или идей для улучшения - я с радостью это приму!

Что дальше?

Буду готовить к релизу, может сделаю установщик, добавлю дизайн и расширю функционал, отправил программу на тестирование в одну маленькую школу, если им понравится - начну полномасштабную разработку

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages