Умная система онлайн-записи на услуги
Прочный код, точное время, удобный сервис
SteelTime — это современный сервис для записи на услуги, который избавит от необходимости звонить, ждать ответа и вручную искать свободное время.
Проект объединяет надёжность стали и гибкость кода: прочная архитектура, понятный интерфейс, быстрая работа.
✅ Backend на FastAPI — быстрый и современный API-сервер
✅ JWT-авторизация — безопасный вход и защита данных
✅ Управление пользователями — регистрация, вход, профили
✅ Управление услугами — создание, редактирование, удаление
✅ Система записи — выбор услуги и времени, бронирование
✅ База данных — хранение всех данных с помощью SQLAlchemy
🔹 Веб-сайт — удобный интерфейс для записи через браузер
🔹 Telegram-бот — возможность просмотреть активные записи и возможно запись на услугу прямо из мессенджера
🔹 Уведомления — напоминания о предстоящих записях и новых записях для предпринимателей
- Python 3.10+
- FastAPI — веб-фреймворк для API
- SQLAlchemy — работа с базой данных
- JWT — авторизация и аутентификация
- Pydantic — валидация данных
SteelTime/
├── main.py # Точка входа в приложение
├── config.py # Конфигурация проекта
├── logger.py # Логирование
├── limiter.py # Ограничение запросов
│
├── auth/ # Модуль авторизации
│ ├── auth.py
│ ├── dependencies.py
│ └── jwt_handler.py
│
├── routes/ # API эндпоинты
│ ├── users.py
│ ├── services.py
│ └── appointments.py
│
├── schemas/ # Pydantic-схемы
│ ├── user_schema.py
│ ├── service_schema.py
│ └── appointment_schema.py
│
└── services/ # Бизнес-логика
├── user_service.py
├── service_service.py
└── appointments_service.py
git clone https://github.com/your-username/steeltime.git
cd steeltimepip install -r requirements.txtСоздайте файл .env в корне проекта:
DATABASE_URL=sqlite:///./steeltime.db
SECRET_KEY=your_secret_key_here
ALGORITHM=HS256
ACCESS_TOKEN_EXPIRE_MINUTES=30uvicorn src.main:app --reloadПерейдите по адресу: http://127.0.0.1:8000/docs
curl -X POST "http://127.0.0.1:8000/auth/register" \
-H "Content-Type: application/json" \
-d '{"email":"user@example.com","password":"securepass123","name":"Иван"}'curl -X GET "http://127.0.0.1:8000/services/"curl -X POST "http://127.0.0.1:8000/appointments/" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"service_id":1,"date":"2026-01-25","time":"14:00"}'- Единая база данных для всех каналов взаимодействия
- Масштабируемая архитектура — легко добавлять новые функции
- Безопасность — JWT-токены и проверка прав доступа
- Документация API — автоматически генерируется через Swagger
Проект распространяется под лицензией MIT. Подробности в файле LICENSE.
Если у вас есть вопросы или предложения — пишите!
GitHub: @your-username
Email: contact@steeltime.ru