mirror of
https://github.com/EDeev/school_table.git
synced 2026-06-18 14:01:01 +03:00
README.md
This commit is contained in:
parent
a3f3852491
commit
07a5f23c11
1 changed files with 163 additions and 2 deletions
165
README.md
165
README.md
|
|
@ -1,2 +1,163 @@
|
|||
<h1>Таблица со Школьным Расписанием</h1>
|
||||
<h3>Приложение для ведения школьного расписания, и записи заметок! Сейчас там установлен шаблон с расписанием автора, но вы можете его очистить и ввести <i>своё</i> расписание с нуля!</h3>
|
||||
# School Table
|
||||
|
||||
[](https://www.python.org/downloads/)
|
||||
[](https://pypi.org/project/PyQt5/)
|
||||
[](https://sqlite.org/)
|
||||
[](LICENSE)
|
||||
|
||||
**Многофункциональное desktop-приложение для управления школьным расписанием и ведения персональных заметок.**
|
||||
|
||||
## 📋 Описание
|
||||
|
||||
School Table представляет собой комплексное решение для организации учебного процесса, объединяющее систему управления расписанием с функциональностью персонального планировщика. Приложение обеспечивает интуитивно понятный интерфейс для создания, редактирования и контроля академических задач.
|
||||
|
||||
## ✨ Основные возможности
|
||||
|
||||
### 📅 Управление расписанием
|
||||
- **Интерактивная сетка расписания** — визуализация учебной недели с возможностью быстрого редактирования
|
||||
- **Динамическое управление предметами** — добавление, изменение и удаление дисциплин
|
||||
- **Система выделения** — цветовая индикация для быстрой навигации по предметам
|
||||
- **Гибкая настройка** — поддержка до 8 учебных периодов в день
|
||||
|
||||
### 📝 Система заметок
|
||||
- **Временные метки** — привязка заметок к конкретным датам и времени
|
||||
- **Фильтрация по периодам** — просмотр задач за день, неделю, месяц
|
||||
- **Статусы выполнения** — отслеживание прогресса выполнения задач
|
||||
- **Редактирование в реальном времени** — мгновенное обновление данных
|
||||
|
||||
### 🔧 Дополнительный функционал
|
||||
- **Кроссплатформенность** — работа на Windows, macOS, Linux
|
||||
- **Локальное хранение данных** — автономная работа без интернета
|
||||
- **Резервное копирование** — защита данных пользователя
|
||||
|
||||
## 🛠 Технический стек
|
||||
|
||||
| Компонент | Технология | Версия |
|
||||
|-----------|------------|---------|
|
||||
| **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
|
||||
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 # Описание интерфейса Qt Designer
|
||||
├── table.db # База данных SQLite (создается автоматически)
|
||||
├── image.ico # Иконка приложения
|
||||
└── README.md # Документация
|
||||
```
|
||||
|
||||
## 🗄 Схема базы данных
|
||||
|
||||
### Таблица `timetable`
|
||||
```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`
|
||||
```sql
|
||||
CREATE TABLE notes (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
date TEXT NOT NULL,
|
||||
day INTEGER,
|
||||
note TEXT NOT NULL
|
||||
);
|
||||
```
|
||||
|
||||
## 🤝 Участие в разработке
|
||||
|
||||
Мы приветствуем любой вклад в развитие проекта!
|
||||
|
||||
### Процесс контрибуции
|
||||
1. Fork репозитория
|
||||
2. Создайте feature-ветку (`git checkout -b feature/AmazingFeature`)
|
||||
3. Зафиксируйте изменения (`git commit -m 'Add some AmazingFeature'`)
|
||||
4. Push в ветку (`git push origin feature/AmazingFeature`)
|
||||
5. Откройте Pull Request
|
||||
|
||||
## 📄 Лицензия
|
||||
|
||||
Этот проект распространяется под лицензией MIT.
|
||||
|
||||
## 👨💻 Автор
|
||||
|
||||
**Деев Егор Викторович**
|
||||
- GitHub: [@DeevEV](https://github.com/DeevEV)
|
||||
- Email: egor@deev.space
|
||||
- Telegram: [@Egor_Deev](https://t.me/Egor_Deev)
|
||||
|
||||
---
|
||||
|
||||
<div align="center">
|
||||
<sub>Создано с ❤️ от вашего дорогого - deev.space ©</sub>
|
||||
</div>
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue