Проект реализован как сайт, который объединяет в себе возможности блога и социальной сети. Неавторизованные посетители могут просматривать все публикации на главной странице сайта, либо перейти в тематическую группу, в которой блоги отфильтрованы по соответствующим темам. Зарегистрированному пользователю предоставляется возможность публиковать собственные блоги на сайте, добавлять их в тематические группы, подписываться на других авторов, добавлять комментарии к постам других автором. Авторизованному пользователю доступна страница избранное, где выводятся посты любимых авторов и страница профиля, на которой можно просмотреть собственные блоги. Стандартными инструментами фреймворка реализована зона для администрирования сайта. Администратор, может изменять права, удалять и создать нового пользователя, редактировать посты. Создавать новые группы может только администратор сайта.
- python 3.7.9 - язык программирования, который задействован в проекте.
- django 2.2.16 - Фреймворк, который содержит большое количество инструментов для быстрого создания масштабируемых проектов.
- SQLlite3 - база данных используемая при разработке.
- django templates - встроенный в фреймоврк инструмент для построения клиентской части проекта.
- bootstrap - библиотека для быстрого построения визуальной клиентcкой части.
- pytest - библиотека для тестирования кода.
Создание виртуального окружения на MacOs:
python3 -m venv venv
Активация виртуального окружения для MacOs:
source venv/bin/activate
После скачивание проекта для работы потребуется интерпретатор языка Python. Дополнительные зависимости устанавливаются из файла requirements.txt, для этого нужно прописать в командной строке
pip install -r requirements.txt.
Все настройки проекта содержатся в файле settings.py Запуск проекта происходит командой в терминале из директории blog_yatube/yatube/
python manage.py runserver
Сайт доступен по адресу
http://127.0.0.1:8000/