Hi there! I'm a beginner software developer with a passion for learning and building real-world applications. I'm currently focusing on Python and expanding my skills in asynchrony (FastAPI
, aiogram
).
-
Cookbook (Django REST Framework + Deployment)
▸ REST API backend for SPA of cooking recepies site
▸ Available to print cumulative ingredients list of all recipes in cart in PDF
▸ Containerized with Docker (PostgreSQL, Nginx, backend, frontend)
▸ CI/CD pipeline with GitHub Actions (automatic testing and deployment)
▸ Configured Nginx as reverse proxy for backend/frontend
▸ Implemented Docker volumes for static/media files and database persistence -
YaMDb API (Django REST Framework)
▸ Team project (3 developers) with role-based distribution
▸ REST API for review platform of books/movies/music
▸ User authentication implemented using JWT token with data verification and password reset via email
▸ Complex database relationships with cascade deletion
▸ Complex serialization with nested serializers
▸ Data import from CSV file using custom management-command -
Charity Fund Service (FastAPI)
▸ The project is implemented as an API using the FastAPI framework. ▸ User authentication using JWT
▸ Implemented donation logic:- Administrator (superuser) can create and edit charity projects for various purposes, specifying the required amount.
- Regular users can make donations and add comments.
- Each donation is automatically allocated to the first open project that has not yet reached its funding goal.
- If a donation exceeds the required amount, or if there are no open projects, the remaining funds are kept until a new project is opened.
- When a new project is created, all unallocated donations are automatically invested in it.
▸ Charity projects reports generation to Google Sheets using Google API.
-
Blogicum Platform (Django)
▸ User Management: registration, authentication, and profile customization
▸ Technical Features: custom error pages, pagination for posts and comments, email notification system
▸ Content Management: create, edit, and delete posts; upload and display post images; add/remove comments