Production experience

Enterprise Resource Management SPA

Enterprise Resource Management SPA

Built complex SPA interfaces, scalable frontend architecture with stores and reactive model classes, custom UI components including virtual tables and forms, and AI-agent-assisted delivery with E2E verification.

Hotel and Train Ticket Booking SPA

Hotel and Train Ticket Booking SPA

Vue 3 / TypeScript / Vite SPA for hotel and train ticket reservations, with custom Vite plugins, interactive maps, dynamic SVG train-seat layouts, client-side filtering, complex booking state, and a reusable form validation framework.

Alek Labs Projects

Stereo Reader

Stereo Reader

A reader aimed to improve vision by training or relaxing your eyes while reading books. Supports text, PDF, EPUB, and FB2 files in stereo or mono mode.

Keyboard Layer

Keyboard Layer

A Windows keyboard command layer for faster programming and text editing. Adds ergonomic shortcuts for navigation, selection, deletion, copy, paste, undo, redo, and Enter while keeping standard QWERTY typing unchanged.

JS Benchmark

JS Benchmark

A script for creating embeddable JavaScript benchmarks, adding them to Stack Overflow answers or personal websites, comparing algorithms and data transformations, and learning how to write high-performance JavaScript.

Youtube: Send to AI chat

Youtube: Send to AI chat

A browser extension that sends YouTube transcripts to AI chats for timestamped summaries, Q&A, inline video playback, clickable timestamp navigation, and customizable prompts.

comment-line Articles

Stop Turning the Mobile Web Into a Second-Class Platform

Stop Turning the Mobile Web Into a Second-Class Platform

I argue that app-first strategies are weakening the mobile web by forcing web-shaped products into closed containers. Browsers provide tabs, links, bookmarks, extensions, interoperability, and user control. Developers should support PWAs and better mobile browser capabilities to preserve open software.

Why Every Frontend Project Should Have Its Own UI Layer

Why Every Frontend Project Should Have Its Own UI Layer

I argue that frontend projects should own an internal UI layer instead of scattering third-party components across product code. Wrappers create stable contracts, centralize accessibility, theming, defaults, localization, and vendor quirks, reduce migration risk, and make UI architecture product-owned.