Hi,
I am Aleksei and this is my pet projects site.
There are two projects here. Now you are on the main page of the first one, The Blog.
The second one, the more complex project, is the HR Bot. You can reach it by this link.
Both projects are on Python 3.12
My contact is below the page.
The Blog project
Project features:
- Blogs creation, editing and deletion
- Commenting on blogs, comments deletion
- Bloggers' pages
Stack and technologies:
- Django 5. The standard set of MTV - Models, Templates, Views - is used. The views are created as classes.
- PostgreSQL - default DB setup is applied.
- Bootstrap styles - it is easy and, subjectively, nice.
- HTMX - you can refresh the bloggers list or update your bio (you have to be authenticated) without reloading the whole page. Just wanted to proof this concept.
- REST API by Django REST Framework. Documentation is available in swagger or redoc formats
- Tests - unit tests are based on django.test and rest_framework.test libraries
HR Bot project
Project features:
- Telegram Bot with static answers and an option to send message to HR manager
- Admin panel with static answers' editing and responding to the messages.
Stack and technologies:
- FastAPI & SQLAlchemy & Alembic for backend.
- Nicegui for frontend.
- Aiogram for bot.
- Pydantic & Pydantic Settings & Loguru globally.
DevOps
- Github - the source code is released here: The Blog, HR Bot.
- Docker - the set of containers and volumes is built by Docker Compose.
- VPS - the project is deployed on virtual private server with domain name and SSL certificate. Nginx is used as a web-server and reverse proxy server.
Content
Site content is AI-generated and doesn't make any sense.
Contacts
Originally there was a web form here. I thought it would be a good idea to let the user fill the form and the e-mail would be sent to me. How naive I was. How many CEO optimization spam I received...
Let's try again. You can reach me by sending a message to account with the user name as this site domain stands on Google main mail domain. Will see how it goes.