// the find
bespoyasov/frontend-clean-architecture
React + TypeScript app built using the clean architecture principles in a more functional way.
A reference implementation showing how to structure a React + TypeScript app around clean/onion architecture (domain, application, adapters, UI) done in a functional style rather than classes and DI containers. It's aimed at frontend devs who've read about Clean Architecture/DDD on the backend and want to see what it looks like translated to a React app, not at teams looking for a production starter.
The layering is concrete, not just diagrammed — domain/, application/, services/ (adapters), and ui/ map directly to folders, and ports.ts shows real interface boundaries with separate adapter implementations for auth, payment, storage, and notifications. The accompanying long-form post walks through the actual design decisions instead of just dumping code. The README is unusually honest about its own shortcuts (shared kernel coupling, a domain function reaching for currentDatetime, hand-rolled DI) rather than pretending the example is a canonical, production-ready pattern.
No tests anywhere in the tree despite 'testability' being one of the architecture's main selling points — the author even admits in the README that orderProducts is still framework-coupled through the hook and can't be tested in isolation, which undercuts the pitch. DI is done by hand via hooks-as-a-container, which doesn't scale past a toy app and isn't shown solved, just acknowledged. It's a single-author demo app (ordering cookies/pizza) with no CI config visible and no commits since Jan 2025, so there's no evidence the patterns were pressure-tested on anything bigger than this sample.