Eight pieces of production work, rebuilt so you can use them.
Admin platform, on-site search, recommendations, a widget builder, push and the tools around them, built at a B2B marketing SaaS. Each page rebuilds the product as an interactive demo with synthetic data.
- 200+brands on the search overlay
- ~12klines, slider core
- ~28klines, admin platform
- Hundredscommits to the team panel
- −40%LCP after perf work
Pick a system and try it
Admin platform
A back-office console written from scratch, with cited AI answers over internal documents
A back-office console I wrote from scratch as its only author. Staff run accounts, contracts, invoices, support and billing from one place.
- React 19
- TypeScript
- Vite 6
- RAG
- ~28k lines
Site search overlay
One script that puts search and autocomplete on any storefront, live on 200+ brands
A search overlay and autocomplete that attaches to a storefront's own search box with one script, configured per brand without code.
- Vanilla JS
- esbuild
- ARIA combobox
- 10 presets
- 200+ brands live
Search rollout
A CLI that took search from one brand to 200+ without touching a storefront
A TypeScript CLI that installs the search overlay through the loader each site already runs, and dry-runs by default.
- TypeScript
- Node 22
- CLI
- Dry-run first
Recommended products slider
Recommendations rendered in the store's own card design and carousel
One config-driven script that copies a real product card from the page, fills it with recommendation data and starts the store's own slider on it.
- Vanilla JS
- Slick
- Owl
- Swiper
- ~12k lines core
On-site widgets
A no-code builder that compiles a marketer's settings into a storefront script
A daily deal widget built from scratch: a builder that turns settings into a self-contained storefront script, with a live preview.
- React
- Vanilla JS runtime
- Jest
- postMessage
Email product block
Paste a product URL and the email block fills itself in
A block for the panel's drag-and-drop email builder that fills in a product's title, price, image and description from its URL.
- React 18
- Email HTML
- 4 block variants
Panel engineering
A guard that stops saves landing on the wrong brand, and three years of panel work
Work inside the company's main marketing panel, a React codebase with years of history and many contributors.
- React 18
- Redux Toolkit
- Chart.js
- i18next
- Hundreds of commits
Mobile push
Push notifications that open the right screen from any app state
The React Native side of push for the platform's mobile clients, from token registration to deep-link routing.
- React Native 0.79
- FCM
- Notifee
- Deep links
The pattern
Most of this work runs on other companies' websites, so it has to fit hundreds of storefronts I don't control.
Each system ships as one script with per-brand configuration, so a new brand is a config file, not a code fork. The hard parts repeat on every host: leaking CSS, competing scripts, slow networks, Turkish formats and keyboard users.
About the demos
These are production systems I built and shipped, used by hundreds of brands. The code belongs to the company, so each one is rebuilt as an interactive demo with synthetic data. Every company, person, product, price and chart value in the demos is invented. Nothing calls a real API.
I built these systems; I did not build everything around them. Each page marks what I owned and what I integrated with, for example the recommendation strategies and the push backend, which come from other teams.



Notes on this post
Join in
Leave a comment.
Sign in to add your note to this post.
Only your name and avatar are used.