Portfolio

Projects I have built, from layout to deployment on my own server.

Responsive landing page «Nike Air Mag»

Responsive landing page «California»

Creating and configuring a virtual machine, deploying n8n, and building AI assistants

Two-page layout «Fit Studio»

Data parser for hh.ru

1 / 6
Project screenshot Responsive landing page «Nike Air Mag»

Responsive landing page «Nike Air Mag»

Product page with size selection, a slider, and an order modal window. Stack: HTML/CSS/JS, BEM, responsive layout, SVG icons via `<use>`.

HTML CSS JavaScript БЭМ
Project screenshot Responsive landing page «California»

Responsive landing page «California»

A multi-section landing page for an online electronics store. Stack: HTML/CSS/JS, BEM, responsive layout, SVG icons via `<use>`.

HTML CSS JavaScript БЭМ
Project screenshot Creating and configuring a virtual machine, deploying n8n, and building AI assistants

Creating and configuring a virtual machine, deploying n8n, and building AI assistants

A detailed step-by-step guide to creating and deploying an n8n instance on a Yandex Cloud virtual machine and connecting it to your own domain. It also covers the full setup process for AI assistants. This guide will help you deploy the n8n service on your own server and run it under your own domain. The project is fully functional.

n8n Automation Nginx Docker docker-compose VPS
Project screenshot Two-page layout «Fit Studio»

Two-page layout «Fit Studio»

A fitness club landing page with a news feed and an FAQ accordion, including the homepage and an article page. Stack: HTML/CSS, BEM, responsive layout.

HTML CSS БЭМ
Project screenshot Data parser for hh.ru

Data parser for hh.ru

A new Python project built with Flask and AJAX. The parser is integrated into the Build block for Filament CMS. It retrieves job vacancy data from hh.ru and provides a direct link to each vacancy.

Python Flask AJAX Filament
Project screenshot Email template development for the Taskduck cleaning company

Email template development for the Taskduck cleaning company

An email campaign system with support for MJML-based templates has been implemented. Templates are created in a visual editor with live preview directly in the admin panel, compiled through MJML, and sent via SMTP from a custom domain. A separate media library has also been implemented for managing email assets, with folder support and bulk upload functionality.

Email MJML HTML

bozheslav.ru is also a personal project

Built with Laravel and Filament — from an empty server to a full CMS

Laravel Filament PostgreSQL nginx PHP 8.3 HTML/CSS/JS BEM VPS

The first question I asked myself was how to be useful to the market and business. Most people take the simple path: WordPress, ready-made templates, and plugins for $50 a month.

I chose a different path. My own VPS, Laravel, PostgreSQL — everything from scratch. Too much imagination does not let me work half-heartedly.

Why Laravel, not WordPress?

Laravel makes you think architecturally. There is no plugin magic here — only code you understand and fully control.

laravel-image-1

Technical implementation

Frontend from scratch

HTML/CSS/JS without frameworks. BEM methodology, responsive design, dark and light themes — everything is written by hand. JS scripts are structured as ES modules.

Server infrastructure

Ubuntu 24.04, nginx with virtual hosts, PHP-FPM 8.3, PostgreSQL 16, SSL with auto-renewal. One-command deployment through a bash script.

Security

fail2ban protects SSH from brute force, honeypot and rate limiting on the contact form, HTTP -> HTTPS redirect, and a closed SSH port.


Admin panel capabilities

Filament fully replaced WordPress — without a single paid plugin

Filament now
Filament at the beginning
  • ✅ Portfolio and project management
  • ✅ Media library with ZIP uploads
  • ✅ Blog with categories and SEO fields
  • ✅ Pages with a block editor
  • ✅ Site settings in one place
  • ✅ Logs and cache management in the panel

Ready to discuss a project

Telegram

If you need a Laravel website, server setup, or process automation, message me on Telegram.