Программное решение для проекта ПоВузам, которое позволяет:
- Искать образовательные программы и вузы по фильтрам (регион, форма обучения, стоимость, ЕГЭ и др.)
- Получать персонализированные рекомендации с учётом приоритетов пользователя
- Быстро и удобно принимать решения по выбору университета
- Python 3.12
- SQLAlchemy
- PostgreSQL
- Pydantic
- FastAPI
- Make
Сборка проекта автоматизирована с помощью Makefile. Важные этапы:
- make docker-build — установка зависимостей, подготовка среды.
- make docker-up — запуск собранных сервисов
- make init-db — инициализация базы данных (создание схем, миграции).
⚠️ Важно: после выполненияmake clean,make rebuildнеобходимо снова вызватьmake init-db, так как база данных будет очищена.
make docker-up # Сборка проекта (pip install ...)
make init-db # Инициализация базы данных
make docker-clean # Очистка проекта от временных файлов
make style-check # Проверка кода PEP8
make test # Запуск тестов- Соответствие баллов пользователя проходному баллу программы
- Рейтинг вуза
- Наличие общежития
- Статус государственного вуза
- Стоимость обучения / бюджет
- Заполненность данных
- Количество свободных бюджетных мест
- Регион: Москва
- Тип: Государственный
- Общежитие: True
- Форма: Очная
- Баллы ЕГЭ: 230
- Предметы: Математика, Русский, Информатика
http://localhost:8000/docs
GET http://localhost:8000/university-filtering
/university-filtering?
region=Москва&
is_goverment=true&
has_dormitory=true&
education_form=Очная&
user_score=230&
user_exams=Математика&
user_exams=Русский&
user_exams=Информатика&
page=1&
page_size=5[
{
"id": 42,
"long_name": "Московский государственный технический университет",
"short_name": "МГТУ",
"geolocation": "Москва",
"is_goverment": true,
"rating": 89,
"dormitory": true,
"army": true,
"programs": [
{
"id": 101,
"direction": "Информатика и вычислительная техника",
"profile": "Прикладная информатика",
"education_form": "Очная",
"is_free": true,
"price": null,
"passing_score": 227
}
]
}
]