Florvale Home
A handcrafted-candle storefront with real card payments and an owner-run catalogue.
- Product design
- UI design
- Full-stack development
Independent designer & developer · Yerevan
Currently taking on work for 2026
I take a business from a blank page to a live site: the positioning, the palette, the interface, the code, the admin panel the owner actually uses, and the deploy. Six production builds this year — an e-commerce storefront with real card payments, a booking funnel, and four marketing sites. Six design systems, no template between them.
Six businesses built in 2026, each with a design system written for it alone. Every screenshot below is the real site, captured from a production build.
A handcrafted-candle storefront with real card payments and an owner-run catalogue.
A car-detailing studio site where the visitor builds a quote instead of filling in a contact form.
A one-page site for a veteran MMA coach, editable by the coach, with git as the CMS.
A WordPress replacement for a collision shop — with the brand colour recovered from the logo itself.
A gallery-first site for a staircase maker: horizontal work rail, filterable portfolio, one lead form.
A Russian-language repair service site where the type choice is a layout decision, not a style one.
Three practices that only pay off together. A design decision that cannot be built is a mood board; an architecture nobody can operate is a bill.
A visual system built for one business, from its own material — its logo, its words, the length of its product names.
Modern React that stays small. Server components by default, client JavaScript only where an interaction earns it.
The part that decides whether a site is used a year later: what the owner can change, and what happens when something is missing.
The same five phases every time, whether it is a one-page site or a storefront that takes card payments. The order matters more than the length of any one step.
Understand the business before the brief.
Who buys, what they are deciding, and what the business has already got — a logo, a phone number, twelve service names, a Facebook page. Most of the design direction is already in that material.
Decide the one thing the site is for.
A quote builder, a catalogue, a booking. Everything designed afterwards either serves that path or gets cut. This is also where I decide what will not be claimed, which is usually the more useful list.
Build a system, not a page.
Colour tokens with measured contrast, a type scale that holds the client's longest words, spacing and motion rules. By the end there is a vocabulary the whole site is written in.
Typed, server-rendered, no shortcuts.
Every component hand-written against the token set. Content lives in a typed model from the first commit, so the admin panel later manages something that has already proven itself.
Live, indexed, and someone else's to run.
Deploy, DNS without breaking the client's email, structured data, a documented environment, and a written list of everything still missing. The site should outlive my involvement.
I came to design from the other end.
For years my work was back-end and desktop software: Java and Spring Boot services over PostgreSQL, schema migrations, roles and permissions, reporting and exports — later carried onto the web with a Vue front end over the same domain. That work teaches you what a data model costs when you get it wrong, and it teaches you almost nothing about what a good page looks like.
Then I spent a year building an entire product end to end — native client, API, database, deployment — and design stopped being a layer somebody else adds at the end. It is the part that decides whether any of the rest gets used.
Now I do both, deliberately, for businesses small enough that one person doing both is the advantage rather than a compromise. There is no handoff to lose things in. A colour decision and a database decision are made by the same person on the same afternoon, and each one knows what the other costs.
2023 — 2025
Enterprise back ends and desktop tooling. Java, Spring Boot, PostgreSQL, Flyway migrations, security, reporting, Excel and CSV pipelines. Then the same domain rebuilt as a web front end.
2026
A full product end to end — native client, API, Postgres, Redis, background workers, CI and deployment. The year that made design non-optional.
2026
Six client sites, six palettes, six type pairings, every component hand-written. Contrast measured rather than assumed; placeholders labelled rather than hidden.
Now
Design and build for small businesses and founders — from the idea to the interface to the thing running in production.
On method
AI is part of how I build, and I would rather say so plainly than have it be a discovery. It is very good at the wide, shallow passes: scaffolding a component set, reading a codebase I have not seen, drafting documentation, catching the accessibility issue I stopped noticing three hours ago.
It is not the thing that decides. Every judgement on these six sites was made and defended by a person: that the brand red had to be read out of the logo file rather than copied from the stylesheet, that red text at 3.4:1 fails and has to be lifted, that a condensed Cyrillic face is a layout requirement and not a mood, that gas work stays off a service list without a licence, that an unverified claim is left out even when the page looks emptier for it.
The useful skill is not prompting. It is knowing which of the answers is wrong, and being able to say why.
Listed second is not listed lesser — it is where the work is older or where the tool serves one job. Either way the tools are the least interesting thing on this page.
What is actually on the desk right now — launches waiting on a key, a domain waiting on a cutover, and one component being generalised across every site above.
A portable “who built this” block for client sites. One folder, no dependencies, eight presentation variants, colours derived from currentColor so it cannot silently lose its palette when copied into a project with different tokens. Rolling out across the sites in this portfolio.
Moving the storefront out of preview: live Stripe keys, the webhook verified against real events, shipping rates and delivery times replaced with confirmed ones.
Repointing a live domain from WordPress to the new build without disturbing the nameservers, so the shop's published email keeps working through the switch.
Finished and deployable, held back until real photography and confirmed numbers arrive. Every placeholder in it is labelled as one, which is the only reason it is safe to leave sitting there.
Currently taking on work for 2026
I take on a small number of projects at a time — websites, storefronts, product MVPs, and rebuilds of sites that have stopped earning their keep. If you have an idea and no idea what it costs yet, that is a fine place to start from.