Перейти до вмісту

Мої проєкти.

Guess the Band

Музична вікторина із serverless API та статистикою складності

Фулстек-застосунок — від дизайну до API.

  • React
  • Vite
  • TypeScript
  • Supabase
  • Motion

Сайт ↗Код ↗

Vercel Functions проксіюють Deezer API на боці сервера, а не відкривають його браузеру. Кожен раунд і кожна відповідь потрапляють у Postgres, щоб рахувати складність кожного треку. Анонімна гра працює завжди й синхронізується, щойно ви входите в акаунт.

Guess the Band

Podhod

Фулстек-застосунок для силових тренувань на Cloudflare Workers і D1

Фулстек-застосунок — від дизайну до API.

  • React
  • TypeScript
  • Hono
  • Cloudflare Workers
  • Drizzle ORM

Сайт ↗Код ↗

Двомовний конструктор і трекер тренувань, зроблений повністю самостійно. Бібліотека з 1 324 вправ, прогресія для кожної вправи, яку обчислює чистий рушій, вхід через Google і CI-пайплайн, що мігрує базу перед кожним деплоєм.

Podhod

Slovníček

Offline-first PWA з власним рушієм синхронізації

Фулстек-застосунок — від дизайну до API.

  • Next.js
  • TypeScript
  • Dexie
  • Supabase
  • PWA

Сайт ↗Код ↗

IndexedDB тут — джерело істини, а не кеш. Найскладніша частина — двостороння синхронізація: last-write-wins з окремим watermark для кожної таблиці й свідомий порядок «спочатку pull, потім push», щоб застарілий офлайн-запис ніколи не перезаписав новіший серверний.

Slovníček

Rječniček

Той самий рушій, переорієнтований на хорватську

Фулстек-застосунок — від дизайну до API.

  • Next.js
  • TypeScript
  • Dexie
  • Supabase
  • Vitest

Сайт ↗Код ↗

Slovníček, перебудований для члена родини, який вивчає хорватську: словник рівня B1–B2, доповнений фаховою лексикою електрика. Доказ того, що разовий застосунок можна перетворити на продукт, який легко повторити.

Rječniček

Gipper Platform

Чотирнадцять мікрофронтендів, ШІ-конвеєр для генерації графіки, SSR у продакшені

  • React
  • TypeScript
  • Vite
  • MobX
  • Module Federation
  • Fabric.js
  • MUI

Сайт ↗

Платформа для спортивного контенту, з якою я працюю щодня; нею користуються тисячі організацій. Агент Claude інтерпретує запит природною мовою, фронтенд рендерить React-шаблони поза екраном, вимірює текстові слоти через getBoundingClientRect і збирає canvas на Fabric.js.

job-feed-bot

Мій перший проєкт на Python, що працює за розкладом із першого дня

  • Python
  • GitHub Actions
  • Telegram Bot

Код ↗

Агрегатор вакансій із п’яти джерел за підключуваним інтерфейсом джерела, зі сповіщеннями через Telegram-бота, який запускається за розкладом GitHub Actions кожні чотири години й пам’ятає вже показані вакансії. Мій перший проєкт на Python — і причина, чому я тепер до нього повертаюся.