
B2B E-Commerce Platform
Full-stack B2B platform for construction materials built with Clean Architecture, React, and Node.js — from greenfield to production.
- TypeScript
- React
- Vite
- Node.js
- PostgreSQL
- AWS
- Docker
- Tailwind CSS
TC Representações is a B2B wholesale platform for construction materials, built for Thiago Carvalho, an independent commercial representative from Mococa, SP who manages partnerships with six brands — Avant, Colson, Irwin, Kalipso EPI, Marluvas, and Termolar. The platform is a deliberate hybrid: a public institutional site for any visitor, and a gated private storefront where access to pricing requires owner approval.
The Constraints
- Solo greenfield project with no design system, no existing codebase, and a strict infrastructure budget
- B2B pricing carries business rules more complex than a standard e-commerce model, requiring a purpose-built pricing engine
- The catalog spans ~2,000 SKUs across multiple brands and must support large bulk updates
- Retailer access is intentionally restricted — protecting negotiated prices from competitor visibility
Storefront
Built the complete SPA with React 18 and Vite:
- Public side: landing page, brand showcase, and contact form — visible to any visitor
- Gated side: registration with email confirmation, manual owner activation, then access to the full catalog
- Infinite-scroll product catalog segmented by brand
- Cart → Quote → Order flow with per-brand separation and automatic quote expiration



API & Backend
Designed the REST API following Clean Architecture with a DDD-inspired domain layer:
- Custom pricing engine built to reflect the specific B2B rules of the business — prices are computed at quote time from per-customer configurations
- Reliable bulk product import pipeline built to handle large catalog updates
- Deployed on AWS with Docker, product images served through CloudFront CDN
Technologies
- React + Vite — SPA storefront and gated customer portal
- Redux Toolkit + React Query — auth state and server-state management with caching
- Node.js + Express — REST API with Clean Architecture layering
- TypeORM + PostgreSQL — persistence with repository pattern
- AWS S3 + CloudFront — product image storage and CDN delivery
- Docker — containerized deployment on EC2
- Sentry — production error tracking
Other projects
Personal Portfolio
Open SourceA full-stack portfolio built with Next.js, DDD, and Clean Architecture in a Turborepo monorepo.
- TypeScript
- React