mirror of
https://github.com/EDeev/school_table.git
synced 2026-10-07 20:49:37 +03:00
README на русском и английском со скриншотами
Исправлены адрес клонирования (DeevEV → EDeev) и установка (sqlite3 — часть Python, не пакет pip); возможности описаны по коду; бейдж MIT без файла лицензии заменён учебной пометкой.
This commit is contained in:
parent
031082f4c0
commit
4631ea9fa1
4 changed files with 93 additions and 121 deletions
58
README.en.md
Normal file
58
README.en.md
Normal file
|
|
@ -0,0 +1,58 @@
|
||||||
|
# School Table
|
||||||
|
|
||||||
|
[Русский](README.md) · **English**
|
||||||
|
|
||||||
|
[](https://github.com/EDeev/school_table/actions/workflows/ci.yml)
|
||||||
|
[](https://github.com/EDeev/school_table/releases)
|
||||||
|
|
||||||
|
A desktop student planner on PyQt5: a weekly timetable and dated notes that show up under the right day
|
||||||
|
on their own. The interface is in Russian.
|
||||||
|
|
||||||
|
**Status:** coursework (2021), completed
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
**Stack:** Python 3 · PyQt5 · SQLite
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
- A grid of six school days, up to eight lessons a day
|
||||||
|
- Subject list: add, rename, delete (the subject also disappears from the timetable), clear a lesson
|
||||||
|
- Highlighting a chosen subject across the whole week
|
||||||
|
- Notes with date and time: shown under the timetable by weekday, and on the Notes tab as one list for
|
||||||
|
all time, the coming month or the coming week
|
||||||
|
- Editing a note and marking it done (a done note is deleted)
|
||||||
|
- Everything is stored locally in `table.db`
|
||||||
|
|
||||||
|
## Running
|
||||||
|
|
||||||
|
A ready-made Windows build is `SchoolTable-windows.zip` in the
|
||||||
|
[releases](https://github.com/EDeev/school_table/releases): unpack it and run `SchoolTable.exe` (keep
|
||||||
|
`table.db` next to it).
|
||||||
|
|
||||||
|
From source:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone https://github.com/EDeev/school_table.git && cd school_table
|
||||||
|
pip install -r requirements.txt
|
||||||
|
python main.py
|
||||||
|
```
|
||||||
|
|
||||||
|
## Screenshots
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
Coursework (2021). The code is open for study; there is no separate license.
|
||||||
|
|
||||||
|
## Author
|
||||||
|
|
||||||
|
**Egor Deev** — [GitHub](https://github.com/EDeev) · [Telegram](https://t.me/DeevEgor) · [egor@deev.space](mailto:egor@deev.space)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
<div align="center">
|
||||||
|
<sub>⭐ If you find this project useful, give it a star on GitHub!</sub>
|
||||||
|
<p><sub>Made with ❤️ — <a href="https://deev.space">deev.space</a></sub></p>
|
||||||
|
</div>
|
||||||
156
README.md
156
README.md
|
|
@ -1,152 +1,66 @@
|
||||||
# School Table
|
# School Table
|
||||||
|
|
||||||
[](https://www.python.org/downloads/)
|
**Русский** · [English](README.en.md)
|
||||||
[](https://pypi.org/project/PyQt5/)
|
|
||||||
[](https://sqlite.org/)
|
|
||||||
[](LICENSE)
|
|
||||||
|
|
||||||
**Многофункциональное desktop-приложение для управления школьным расписанием и ведения персональных заметок.**
|
[](https://github.com/EDeev/school_table/actions/workflows/ci.yml)
|
||||||
|
[](https://github.com/EDeev/school_table/releases)
|
||||||
|
|
||||||
## 📋 Описание
|
Десктопный дневник школьника на PyQt5: расписание на неделю и заметки с датами, которые сами
|
||||||
|
появляются под нужным днём.
|
||||||
|
|
||||||
School Table представляет собой комплексное решение для организации учебного процесса, объединяющее систему управления расписанием с функциональностью персонального планировщика. Приложение обеспечивает интуитивно понятный интерфейс для создания, редактирования и контроля академических задач.
|
**Статус:** учебный проект (2021), завершён
|
||||||
|
|
||||||
## ✨ Основные возможности
|

|
||||||
|
|
||||||
### 📅 Управление расписанием
|
**Стек:** Python 3 · PyQt5 · SQLite
|
||||||
- **Интерактивная сетка расписания** — визуализация учебной недели с возможностью быстрого редактирования
|
|
||||||
- **Динамическое управление предметами** — добавление, изменение и удаление дисциплин
|
|
||||||
- **Система выделения** — цветовая индикация для быстрой навигации по предметам
|
|
||||||
- **Гибкая настройка** — поддержка до 8 учебных периодов в день
|
|
||||||
|
|
||||||
### 📝 Система заметок
|
## Возможности
|
||||||
- **Временные метки** — привязка заметок к конкретным датам и времени
|
|
||||||
- **Фильтрация по периодам** — просмотр задач за день, неделю, месяц
|
|
||||||
- **Статусы выполнения** — отслеживание прогресса выполнения задач
|
|
||||||
- **Редактирование в реальном времени** — мгновенное обновление данных
|
|
||||||
|
|
||||||
### 🔧 Дополнительный функционал
|
- Сетка на шесть учебных дней, до восьми уроков в день
|
||||||
- **Кроссплатформенность** — работа на Windows, macOS, Linux
|
- Список предметов: добавить, переименовать, удалить (предмет пропадает и из расписания), очистить урок
|
||||||
- **Локальное хранение данных** — автономная работа без интернета
|
- Подсветка выбранного предмета во всей неделе
|
||||||
- **Резервное копирование** — защита данных пользователя
|
- Заметки с датой и временем: под расписанием показываются по дню недели, на вкладке «Заметки» —
|
||||||
|
общим списком за всё время, ближайший месяц или неделю
|
||||||
|
- Правка заметки и отметка «сделано» (выполненная заметка удаляется)
|
||||||
|
- Всё хранится локально в `table.db`
|
||||||
|
|
||||||
## 🛠 Технический стек
|
## Запуск
|
||||||
|
|
||||||
| Компонент | Технология | Версия |
|
Готовая сборка для Windows — `SchoolTable-windows.zip` в [релизах](https://github.com/EDeev/school_table/releases):
|
||||||
|-----------|------------|---------|
|
распакуйте и запустите `SchoolTable.exe` (база `table.db` должна лежать рядом).
|
||||||
| **Backend** | Python | 3.7+ |
|
|
||||||
| **GUI Framework** | PyQt5 | 5.15+ |
|
|
||||||
| **Database** | SQLite | 3+ |
|
|
||||||
| **Architecture** | MVC Pattern | - |
|
|
||||||
|
|
||||||
## 📦 Установка и запуск
|
Из исходников:
|
||||||
|
|
||||||
### Системные требования
|
|
||||||
- Python 3.7 или выше
|
|
||||||
- Операционная система: Windows 7+, macOS 10.12+, Linux
|
|
||||||
|
|
||||||
### Инструкция по установке
|
|
||||||
|
|
||||||
1. **Клонирование репозитория**
|
|
||||||
```bash
|
|
||||||
git clone https://github.com/DeevEV/school_table.git
|
|
||||||
cd school_table
|
|
||||||
```
|
|
||||||
|
|
||||||
2. **Установка зависимостей**
|
|
||||||
```bash
|
|
||||||
pip install PyQt5 sqlite3
|
|
||||||
```
|
|
||||||
|
|
||||||
3. **Запуск приложения**
|
|
||||||
```bash
|
```bash
|
||||||
|
git clone https://github.com/EDeev/school_table.git && cd school_table
|
||||||
|
pip install -r requirements.txt
|
||||||
python main.py
|
python main.py
|
||||||
```
|
```
|
||||||
|
|
||||||
### Альтернативный способ установки
|
## Как выглядит
|
||||||
```bash
|
|
||||||
# Создание виртуального окружения
|
|
||||||
python -m venv venv
|
|
||||||
source venv/bin/activate # Linux/macOS
|
|
||||||
# или
|
|
||||||
venv\Scripts\activate # Windows
|
|
||||||
|
|
||||||
# Установка зависимостей
|

|
||||||
pip install PyQt5 sqlite3
|
|
||||||
```
|
|
||||||
|
|
||||||
## 🎯 Использование
|
## Структура
|
||||||
|
|
||||||
### Быстрый старт
|
|
||||||
|
|
||||||
1. **Настройка расписания**
|
|
||||||
- Перейдите на вкладку "Расписание"
|
|
||||||
- Выберите день недели и номер урока
|
|
||||||
- Добавьте новый предмет или выберите существующий
|
|
||||||
|
|
||||||
2. **Создание заметки**
|
|
||||||
- Откройте вкладку "Заметки" → "Добавить"
|
|
||||||
- Установите дату и время
|
|
||||||
- Введите текст заметки и сохраните
|
|
||||||
|
|
||||||
3. **Управление задачами**
|
|
||||||
- Используйте фильтры для просмотра заметок за определенный период
|
|
||||||
- Отмечайте выполненные задачи в разделе "Сделать"
|
|
||||||
|
|
||||||
## 📁 Структура проекта
|
|
||||||
|
|
||||||
```
|
```
|
||||||
school_table/
|
main.py приложение: интерфейс (сгенерирован из rasp.ui) и вся логика
|
||||||
├── main.py # Точка входа в приложение
|
rasp.ui макет окна для Qt Designer
|
||||||
├── rasp.ui # Описание интерфейса Qt Designer
|
table.db пустая база: предметы, расписание по дням, заметки
|
||||||
├── table.db # База данных SQLite (создается автоматически)
|
image.ico иконка
|
||||||
├── image.ico # Иконка приложения
|
|
||||||
└── README.md # Документация
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## 🗄 Схема базы данных
|
## Лицензия
|
||||||
|
|
||||||
### Таблица `timetable`
|
Учебный проект (2021). Код открыт для изучения, отдельной лицензии нет.
|
||||||
```sql
|
|
||||||
CREATE TABLE timetable (
|
|
||||||
id INTEGER PRIMARY KEY,
|
|
||||||
day TEXT,
|
|
||||||
less_1 INTEGER, less_2 INTEGER, ..., less_8 INTEGER,
|
|
||||||
FOREIGN KEY (less_*) REFERENCES lessons(id)
|
|
||||||
);
|
|
||||||
```
|
|
||||||
|
|
||||||
### Таблица `lessons`
|
## Автор
|
||||||
```sql
|
|
||||||
CREATE TABLE lessons (
|
|
||||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
||||||
name TEXT UNIQUE NOT NULL
|
|
||||||
);
|
|
||||||
```
|
|
||||||
|
|
||||||
### Таблица `notes`
|
**Деев Егор Викторович** — [GitHub](https://github.com/EDeev) · [Telegram](https://t.me/DeevEgor) · [egor@deev.space](mailto:egor@deev.space)
|
||||||
```sql
|
|
||||||
CREATE TABLE notes (
|
|
||||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
||||||
date TEXT NOT NULL,
|
|
||||||
day INTEGER,
|
|
||||||
note TEXT NOT NULL
|
|
||||||
);
|
|
||||||
```
|
|
||||||
|
|
||||||
## 📄 Лицензия
|
|
||||||
|
|
||||||
Этот проект распространяется под лицензией MIT.
|
|
||||||
|
|
||||||
## 👨💻 Автор
|
|
||||||
|
|
||||||
**Деев Егор Викторович**
|
|
||||||
- GitHub: [@EDeev](https://github.com/EDeev)
|
|
||||||
- Email: egor@deev.space
|
|
||||||
- Telegram: [@Egor_Deev](https://t.me/Egor_Deev)
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
<div align="center">
|
<div align="center">
|
||||||
<sub>Создано с ❤️ от вашего дорогого - deev.space ©</sub>
|
<sub>⭐ Если проект оказался полезным, поставьте звёздочку на GitHub!</sub>
|
||||||
|
<p><sub>Сделано с ❤️ — <a href="https://deev.space">deev.space</a></sub></p>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
BIN
docs/screenshots/notes.png
Normal file
BIN
docs/screenshots/notes.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 50 KiB |
BIN
docs/screenshots/timetable.png
Normal file
BIN
docs/screenshots/timetable.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 107 KiB |
Loading…
Add table
Reference in a new issue