Это мой личный проект по изучению FastAPI — современного Python-фреймворка для создания web-приложений и API. Я только начинаю разбираться в web-разработке и делаю записи, чтобы лучше понять основные концепции FastAPI на практике и по официальной документации (FastAPI на русском).
В процессе знакомства с web-разработкой я немного попробовал Django и Flask, но изучал их очень поверхностно.
Меня особенно привлек FastAPI за его свободу разработки, асинхронность, лаконичность кода и современный подход — писать
на нём не только приятно, но и удобно, без излишней “нагруженности”, как в некоторых других фреймворках.
В этом репозитории я постепенно собираю заметки, примеры кода и практические упражнения — всё, что помогает мне глубже
понять FastAPI.
Для успешного старта желательно освежить в памяти:
- Модуль
typing— для строгой типизации. - Основы работы с
Pydantic— для создания моделей и валидации данных (будет подробнее в заметках). - Простейшие понятия асинхронного программирования в Python (
async,await).
THEORY/— теоретические заметки и примеры.CONTROL_WORK/— вопросы, ответы и практические задания для закрепления материалов изученных в теоретических материалах.FRONTEND/— изучение теории по frontend, для создания ui приложениям на базе templates.PRACTICE/— практические задания (появятся позже).REPETITION/— повторение/закрепление теории.UTILS/— вспомогательные модули, которые использую для упрощения работы с кодом.INFO/- вспомогательные информационные материалы (например таблица статус кодов) и другие.BONUS/- некоторые темы будут рассмотрены чуть глубже, это не обязательный раздел, но очень полезный для понимания некоторых концепций, например обзор как реализована архитектура fastapi на уровне декораторов и другое. Аналог рубрика "а вы знаете что?".
-
Установить необходимые библиотеки:
pip install -r requirements.txt -
Запустить пример FastAPI приложения (после появления первых файлов):
uvicorn THEORY.lsn0:app --reload
- Документация Swagger: http://127.0.0.1:8000/docs
- Документация ReDoc: http://127.0.0.1:8000/redoc
P.S. Сейчас в проекте ещё мало материалов, он будет наполняться по мере моего изучения FastAPI!
06.08.2025 — запуск FastAPI приложений стандартизирован через функцию
app_runиз пакетаUTILS.APP_RUN.
Это позволяет запускать приложения без жёсткой привязки к имени файла (избегая необходимости вручную править строки видаuvicorn.run(app="filename:app")при переименовании файлов),
что значительно повышает удобство поддержания и рефакторинга проектов.
09.09.2025 — 🥳🥳🥳 закончено изучение базового руководства пользователя. Дальше только практика и ещё раз практика, а потом и расширенное руководство пользователя, чтобы приложения стали ещё более крутыми и интересными.