FastApi
Курс по FastAPI от Артёма Шумейко
Ссылка на YouTube курс
В курсе создается каркас веб-приложения для трекинга своего портфеля в Тинькофф Инвестициях.
Библиотеки, планирующиеся к использованию: alembic, sqlalchemy, fastapi-users, fastapi-cache, celery, redis, jinja.
Технологии: аутентификация пользователей (fastapi-users), кэширование запросов (redis), отложенные задачи (celery + redis), тестирование (pytest).
Фронтенд: react (в этом курсе не разбирается).
Расширенный курс по FastAPI
Ссылка на расширенный курс по FastAPI
Если вам хочется глубже познакомиться с FastAPI, а также научиться работать с
- Асинхронной SQLAlchemy
- Кастомная аутентификация и авторизация
- Redis
- Celery
- Docker
- Nginx (и деплоить свое приложение на реальный сервер)
- Логирование
- Мониторинг
То я приглашаю вас на свой курс. На него записано уже больше 150 человек. Развернутые отзывы можно прочитать здесь.
Список уроков
- Зачем учить FastAPI
- Установка и запуск
- Эндпоинты, Параметры Пути и Запроса
- Валидация данных с Pydantic
- Базы данных и миграции Alembic
- Регистрация и Авторизация Пользователей
- Роутеры и Файловая Структура
- Проектирование REST API
- Кэширование через redis
- Фоновые задачи с Celery, Redis и Flower
- Тестирование API с pytest и pytest-asyncio
- Связываем Фронт и Бэк: CORS и Middleware
- Верстка с Jinja. Как украсить API
- Вебсокеты (онлайн-чат)
- Depends зависимости
- Docker и Docker Compose
- Деплой приложения
Дополнительно
Инструкция
Для локального тестирования необходимо создать виртуальное окружение командой 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
для просмотра доступных эндпоинтов.
История звездочек от вас
Языки
Python
- HTML
- Dockerfile
- Shell
- Mako