Skip to content

The training blog's api to learn FastAPI and SQLAlchemy

License

Notifications You must be signed in to change notification settings

evi1ghost/blog_on_fast_api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Blog API

ТЗ взято из учебного проекта, но выбран иной стек технологий.

Краткое описание:

API для блога, в котором пользователи могут публиковать записи/сообщения и просматривать сообщению других пользователей. Реализованы механизм комментариев к записям, возможность подписки на публикации интересующий авторов, регистрация пользователей. Для аутентификации используется JWT-токен. В проекте использованы следующие инструменты: Python3, FastAPI, Pydantic, SQLAlchemy, Alembic, python-jose and bcrypt

Подготовка проекта

Установить менеджер пакетов, создать и активировать виртуальное окружение, установить зависимости:

pip install --user pipenv
pipenv shell
pipenv sync

Переименовать файл .env.example (/project_dir/blog/app/.env.example) в .env и указать в нем недостающую информацию:

Для генерации SECRET_KEY:

openssl rand -hex 32

Полученное значение копируем в .env

Создать базу и применить миграции:

Из корневой директории проекта выполнить:

alembic upgrade head

Запустить проект:

uvicorn blog.main:app

Документация доступкна по url: http://127.0.0.1:8000/redoc/

About

The training blog's api to learn FastAPI and SQLAlchemy

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published