← Back

Website · Baku

Ləman Kərimova: video portfolio

2 min read

A portfolio website for a Baku-based reels maker: work, services and WhatsApp contact. The client uploads videos, chooses covers and arranges her work through a private dashboard. The server automatically prepares videos for browser playback.

01About the project

Ləman Kərimova shoots and edits Reels, creates social media content and runs Meta advertising. We built a website for her personal brand with a video portfolio, a separate services page and a private dashboard. The public site is available in Azerbaijani, Russian and English.

02The task

Show the work in motion and give visitors a direct way to discuss a shoot. Keeping the portfolio current should not depend on a developer: the client needs to add videos, choose covers and manage publication herself. Large files from a phone need automatic preparation for the website.

03What we built

  • A homepage with a portrait, positioning and a grid of vertical videos. Playback stays inside each card; only one video plays at a time, and it pauses when it leaves the viewport.
  • A services page covering Reels production, editing existing footage, monthly content and targeted advertising. Booking and revision terms have their own prominent section.
  • A private dashboard for uploading videos, setting titles in three languages, arranging work, publishing and unpublishing.
  • Cover selection from video frames or an uploaded image. A strip of frame previews helps find the right moment without repeatedly seeking through a large video.
  • Chunked uploads that track how much data has already arrived, plus processing progress. Ready videos appear in the public portfolio once published.

04Design and structure

A dark purple background, pale yellow accents, large headings and decorative elements inspired by video and editing. The homepage introduces the specialist and shows her work; the services page explains the offer and terms. WhatsApp remains accessible in the header, becoming an icon on narrow screens. Each language has its own URL and uses ordinary links for switching.

05How video processing works

The server checks the format, frame dimensions, bitrate and frame rate. Suitable exports are remuxed without recompression; FFmpeg converts other files to H.264 MP4 with AAC when audio is present. The index moves to the start of the file so playback can begin before the full download, and source metadata is removed. Jobs run in a queue, with unfinished processing recovered after a server restart.

06Technology

Node.js and Fastify on the server, Nunjucks for HTML pages, SQLite for data and FFmpeg for video and cover processing. The interface uses HTML, CSS and JavaScript. The project includes separate language URLs, canonical tags, hreflang and a sitemap.

07Result

A live video portfolio with content management: visitors watch the work and contact the specialist through WhatsApp, while the client updates videos, covers and their order without code changes. The website is available at lamankarimova.com.

Tech stack

Node.js / FastifyNunjucksSQLiteFFmpeg