Skip to content

ArronScript/fastapi_course

 
 

Repository files navigation

Курс по FastAPI от Артёма Шумейко

В курсе создается каркас веб-приложения для трекинга своего портфеля в Тинькофф Инвестициях.

Библиотеки, планирующиеся к использованию: alembic, sqlalchemy, fastapi-users, fastapi-cache, celery, redis, jinja.

Технологии: аутентификация пользователей (fastapi-users), кэширование запросов (redis), отложенные задачи (celery + redis), тестирование (pytest).

Фронтенд: react (в этом курсе не разбирается).

Расширенный курс по FastAPI

Если вам хочется глубже познакомиться с FastAPI, а также научиться работать с

  • Асинхронной SQLAlchemy
  • Кастомная аутентификация и авторизация
  • Redis
  • Celery
  • Docker
  • Nginx (и деплоить свое приложение на реальный сервер)
  • Логирование
  • Мониторинг

То я приглашаю вас на свой курс. На него записано уже больше 150 человек. Развернутые отзывы можно прочитать здесь.

Список уроков

  1. Зачем учить FastAPI
  2. Установка и запуск
  3. Эндпоинты, Параметры Пути и Запроса
  4. Валидация данных с Pydantic
  5. Базы данных и миграции Alembic
  6. Регистрация и Авторизация Пользователей
  7. Роутеры и Файловая Структура
  8. Проектирование REST API
  9. Кэширование через redis
  10. Фоновые задачи с Celery, Redis и Flower
  11. Тестирование API с pytest и pytest-asyncio
  12. Связываем Фронт и Бэк: CORS и Middleware
  13. Верстка с Jinja. Как украсить API
  14. Вебсокеты (онлайн-чат)
  15. Depends зависимости
  16. Docker и Docker Compose
  17. Деплой приложения

Дополнительно

Инструкция

Для локального тестирования необходимо создать виртуальное окружение командой python3 -m venv venv и активировать его. Команда venv\Scripts\activate.bat - для Windows; source venv/bin/activate - для Linux и MacOS.

Затем необходимо перейти в папку с нужным уроком и установить зависимости командой pip install -r requirements.txt.

Затем необходимо перейти в папку src командой cd src и запустить команду uvicorn main:app --reload для запуска сервера uvicorn.

После этого можно зайти в браузере по адресу http://localhost:8000/docs для просмотра доступных эндпоинтов.

История звездочек от вас

Star History Chart

About

Вводный курс по фреймворку FastAPI на YouTube

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 91.1%
  • HTML 5.8%
  • Mako 2.6%
  • Other 0.5%