crkayes
← Projects
The Suitmade crest, a gold crown above a shield with the letter S

Alfaiate

Live

The made-to-measure tailoring platform behind Suitmade

The Suitmade suit builder: a double-breasted, peak-lapel suit in Prince of Wales check drawn on a model, with jacket options on the left and the order summary on the right
The Atelier builder on suitmade.eu, drawing the suit in the chosen cloth
The jacket options in the suit builder, with pictures for each jacket type and lapel style
Every option has its own picture, and the suit updates as you choose
The fabric preview in the suit builder, showing a close-up of Prince of Wales check with its composition, weight, mill, pattern and season
Fabric preview, with the details of each cloth
The suitmade.eu home page: Your signature look, tailored in real-time
The Suitmade store at suitmade.eu
The admin orders list with order numbers, customers, items, totals, order status and payment status, using invented data
Orders in the admin, with invented data
The production jobs list with job and order numbers, product, priority, status, assignee and due date, using invented data
Production jobs, with invented data
A printable production sheet with the customer note, garment, style choices and every body measurement, using invented data
A production job sheet, with invented data
Diagram of an order's journey, five steps on suitmade.eu followed by review, job sheet, production, quality control and shipping in the admin, plus fabric stock and how the builder draws a suit
From a click to a finished suit

Alfaiate (Portuguese for "tailor") is the software that runs Suitmade, an online made-to-measure suit shop at suitmade.eu. It covers the whole business: the store where a customer designs and pays for a suit, and the admin where the team turns that order into a garment and ships it.

Designing a suit

The heart of the store is the Atelier, a visual builder. The customer picks a jacket style, lapels, vents, a vest, trousers, lining and a monogram, and chooses from the fabric library. The suit is drawn on a model as they go, in the actual cloth, from the front or the back, on one of three models. A fabric preview shows a close-up of each cloth with its mill, composition, weight and season, and the price updates with every choice.

Under the hood, each part of the garment is a layer of artwork for each model and view. The chosen fabric is tinted into each zone of the garment on a canvas, and an overlay pass adds folds and shading so the cloth sits naturally instead of looking flat. Rules keep combinations valid, and every option and fabric can carry its own price.

From order to garment

After designing the suit, the customer adds their measurements, saved as profiles that keep every version, and their fit preferences, then pays through Stripe. The store picks the right language, currency and units for each visitor, and they can change them.

At checkout, the configuration, measurements and price are frozen into the order, so later changes to products or prices never alter what the customer bought. In the admin, the team:

  • Reviews and approves each order.
  • Creates a production job with a printable job sheet: the customer's note, the garment, every style choice, each body measurement and the fit profile.
  • Tracks production with assignees, priorities and due dates, through quality control to shipping.
  • Ships using shipping zones, package sizes and garment weights.
  • Handles fit issues after delivery, which can be approved as an alteration or a remake.

Fabric stock

Tailoring runs on cloth, so stock is built in. Each fabric's stock is tracked precisely, fabric is reserved for orders so the available amount is always real, and the admin shows low-stock alerts, reorder suggestions and suppliers. Reports cover stock movements, popular and slow-moving fabrics, a stock forecast and wastage.

How it's built

Alfaiate is a Turborepo monorepo with three apps:

  • API: NestJS with Prisma on PostgreSQL, Stripe for payments, and documented endpoints. Customer and staff sign-in are completely separate.
  • Storefront: Next.js, with the Atelier builder drawing on a 2D canvas.
  • Admin: Next.js, with roles for admins, operations, support and content editors, and an audit log.

Money is stored in cents, and the admin covers the catalogue, fabrics, suppliers, the CMS, translations and shipping as well as orders and production.

How it was made

I designed Alfaiate and wrote its planning documents: the data model, API specification, business rules, roles, customer flow and build order. A developer wrote most of the code with me, phase by phase. The first commit was on 3 April 2026, the full first build landed at the end of April, and the visual Atelier builder followed in July.

Get Alfaiate

Built with

  • Next.js
  • React
  • TypeScript
  • NestJS
  • Prisma
  • PostgreSQL
  • Stripe
  • Canvas 2D
  • Tailwind CSS
  • Turborepo
  • Swagger

Changelog

  1. Atelier

    A new visual suit builder: layered garment artwork tinted with the chosen fabric, front and back views, three models, more garments (blazer, tuxedo, waistcoat, dress shirt), pricing and rules editors in the admin, and one fabric library for the builder and the shop.

  2. 0.1.0

    First tagged release, with improvements to the fabric configurator.

  3. Phase 2

    The full first build: storefront, admin and API, with accounts, the product catalogue, fabrics, measurements, fit profiles, cart, Stripe checkout, orders, production jobs, fit issues, shipping, CMS and roles.

  4. Start

    First commit, working from planning documents for the data model, API, business rules, roles and build order.

Posts about Alfaiate

Started 3 Apr 2026