DEV
Главная Обо мне Мои проекты Контакты
Вернутся к проектам

Интернет магазин

О проекте

Разработал интернет-магазин с разделением frontend и backend на независимые приложения. Backend реализован на Django и Django REST Framework и предоставляет REST API для работы с пользователями, каталогом, корзиной и заказами.

Реализовал регистрацию и аутентификацию пользователей с использованием JWT, разграничение доступа к пользовательским данным и защиту операций с корзиной и заказами.

В магазине реализованы каталог товаров и категорий, просмотр отдельных товаров, загрузка изображений, корзина с добавлением, изменением количества и удалением товаров, а также оформление заказов с сохранением состава заказа и цен на момент покупки.

Реализовал интеграцию с платёжной системой ЮKassa. Платёжная логика отделена от сущности заказа: для каждого заказа могут существовать отдельные попытки оплаты, что позволяет повторно оплачивать неоплаченный заказ после истечения или неудачного завершения предыдущей платёжной сессии. Статус оплаты обновляется после получения информации о результате платежа.

Проект развёрнут в production-среде с использованием Docker Compose и Nginx. Nginx используется как reverse proxy и отвечает за раздачу frontend, статических и медиа-файлов, а также HTTPS. Данные приложения хранятся в PostgreSQL.

Технический стек

Python
Django
Django REST Framework
Simple JWT
PostgreSQL
HTML / CSS / JavaScript
Vite
Bootstrap
Docker
Docker Compose
Nginx
Gunicorn
Let's Encrypt / HTTPS
ЮKassa