← HomePortfolio

Systems that actually run

Every system below was built for one specific operation, around what it does every day. From the POS that keeps selling with no internet to the ERP that runs on the delivery driver's phone.

23

systems built

16

sectors served

2

countries

Featured

B2B services · infrastructure2026

Hosting platform with a per-client master switch

Outsourcing and public-tender services company that hosts its own clients websites

@alphaprime.licitacoes

Hosts the company's own client websites on a single server and switches each one on or off from a checkbox in the panel, with recurring billing. Switching a site off takes effect in about eight seconds.

  • Per-client master switch at the edge proxy (ForwardAuth): a checkbox in the panel became the on/off switch for the hosted sites, without touching a single container.
  • Fail-open at the gate and fail-closed on the platform own site, as a documented decision: a database hiccup must never take down third-party sites hosted there.
  • Middleware order chosen by measurement, the rate limiter deliberately sits before the gate, so a flood against one site never becomes a flood against the whole platform. The thresholds were calibrated against a real load test of 654 requests per second.
  • Recurring billing with an idempotency key on checkout and customer reuse at the gateway, plus a manual override that exists only in code and wins over subscription status, the client cannot unlock themselves from the panel.
  • Headless CMS serving content across domains: the client registers an entry in the panel and another client site reflects it with no redeploy; if the fetch fails, the section simply does not render.

4

client sites served through the gate

8 s

for a site switch-off to take effect

~9.218

lines of TS/TSX across 101 files

346

SSH brute-force attempts blocked in 7 days

Next.js 16 (App Router)React 19Payload CMS 3TypeScriptSQLite / libsqlTailwind CSS v4StripeGSAP + LenisDockerTraefik (ForwardAuth, rate limit, Let’s Encrypt)docker-mailserver
Marketing · AI content2026

Instagram content factory operated over WhatsApp

H&I Digital’s own operation plus a regional news page on the northern coast of São Paulo state

@conexao.litoralnorte

You send a link or a photo over WhatsApp and get the finished post back for feed, story, carousel or reel, with the copy adjusted in conversation and an approval queue before publishing.

  • The only interface is a WhatsApp conversation: not commands, but natural language rewriting the copy field by field (kicker, headline, highlight, subhead, call to action, caption and hashtags).
  • HTML is the single authoring language: the same piece becomes a PNG through a headless render or an MP4 through a deterministic timeline, no step ever passes through a graphics editor.
  • Real computer vision in the framing: offline face detection in roughly 100 ms with a 230 KB model, angle measured from the eye line and the bust crop computed geometrically rather than guessed by a language model. The background is then removed and the person composited between backdrop and frame.
  • Publishing through the official Meta API, with the explicit decision not to use browser automation so the client account reach is never put at risk.
  • A daily scheduler that sweeps news across the covered towns and offers the five hottest as posts, with a state queue (draft, generating, rendered, approved, published) and an approval dashboard.

117

content jobs on record

468

media files generated

18

backend services

4

output formats (feed, story, reel, carousel)

Node.js + ExpressReact + Vitewhatsapp-web.jsClaude Code CLIRemotionHyperFrames (HTML + GSAP para MP4)SharpPlaywrightMeta Graph APIPython + OpenCV (YuNet)rembgGroqGemini
Restaurants · POS2025

A point of sale that works without internet

Sushi restaurant on the northern coast of São Paulo state

@burycambury

The order leaves the table tablet or the waiter's phone and reaches the kitchen in real time over the local network, with no internet needed and each item going to the right printer.

  • Runs with the internet down: local database in WAL mode and real-time updates over Socket.IO inside the venue. The cloud is never in the order path.
  • Three operating modes (tablet at the table, order pad on the waiter phone, QR code for the customer) with per-device override, the choice is made per device, not by a global switch that changes the whole system.
  • Over-the-air updates through a purpose-built C# launcher: it compares the remote version, downloads the package and replaces itself, with path-traversal protection on extraction and processes killed before any file is copied.
  • Session secret generated on first boot on the customer machine (64 bytes, restricted permissions), the JWT secret is never baked into the distributed binary.
  • Thermal printing routed by zone and product category: each item prints at the right station (kitchen, sushi bar, till) with nobody shouting the order across the room.

14

published releases (v1.1.2 to v1.2.4)

33

REST endpoints

~15

documented real-time events

101

items in the sample menu, importable in one click

React 19TypeScriptViteTailwind CSSNode.jsExpress 5better-sqlite3 (SQLite WAL)Socket.IOJWT + PBKDF2C# (.NET)Inno Setupesbuild + pkgMercado Pago API
Car parts · management2024

Pricing and catalogue system for a car-parts business

Car-parts shop that buys and resells with prices calculated from a parameter table

@paizao_metais

Every part's price comes from an in-house pricing engine, checked to the cent, with a catalogue, a discount calculator and pricing parameters editable in a table.

  • Sessions in an HMAC-SHA256 signed cookie compared in constant time, httpOnly and scoped to the site. The signing secret is mandatory in production: without it the application refuses to start rather than falling back to a development value.
  • The token carries a fingerprint of the credential: changing the admin password or a customer access code instantly invalidates every old session on every device, with no session table in the database.
  • Access control in three layers, a middleware guard, per-request revalidation of the user in the layout (deleted, blocked or credential-changed drops straight to logout) and a check inside every server action. Each customer carries a role, a block flag, a confirmation flag and a separate permission for the pricing screen.
  • Login and password recovery are rate-limited per email and per IP, with a single generic error that never reveals whether an address exists, and a single-use reset link that expires in 30 minutes because it embeds a fingerprint of the current password.
  • Auditing and a small attack surface: every sign-in records date, user and device; uploads are admin-only with a MIME allowlist, a size cap and a randomised filename; the billing webhook is signature-verified and re-checked at source; transactional email leaves from a dedicated container on an internal network with no port exposed on the host.

10

database tables

20

screens across admin and catalogue

13

automated tests on the pricing engine

~4.770

lines of TypeScript

Next.js 15 (App Router, Server Actions)React 19TypeScriptPrismaSQLite / PostgreSQLTailwind CSSbcryptZodStripePostfix (DKIM) + NodemailerDocker + TraefikPWA
Retail · paint stores2023

In-house ERP and operations app for three stores

Paint and building-materials chain with three branches (São Paulo and Minas Gerais)

@castelodascorestintas

Clocking-in, deliveries with photo and location, stock transfers and cash control on every employee's phone. It works offline and syncs on its own once the signal comes back.

  • Offline sync resolves per field, not per record: two employees editing the same delivery from different places never overwrite each other, and every resolved conflict is written to an audit table.
  • Mutation queue in IndexedDB that flushes on reconnect, on window focus and every 15 seconds, the driver records the drop-off in a signal blackspot and the data arrives intact.
  • Three live integrations at once: tax ERP over OAuth, finance system with one credential pair per store entity, and a queue-orchestrated Playwright robot for the legacy portal that has no API.
  • National ID numbers encrypted at rest, plus a data-protection endpoint that hands each employee their own record as JSON.
  • Per-user theme is computed, not picked: the chosen colour generates the whole HSL palette and text contrast is decided by luminance (WCAG AA), injected server-side so nothing flashes on load.

62

database tables

199

HTTP endpoints

44

screens

~82.400

lines of TypeScript

Next.js 15React 19FastifyDrizzle ORMPostgreSQLRedis + BullMQPlaywrightSerwist (PWA)Dexie / IndexedDBArgon2idMinIODockerCaddyTurborepo + pnpm
Retail · handmade goods2023

Online shop, POS and store-credit ledger in one system

Shop selling handmade crochet bags and accessories

@libertasstore.com.br

Selling over the counter, on WhatsApp and online from one system: stock by colour, a store-credit ledger with partial payments and pricing for handmade pieces.

  • Channel isolation on every order (counter, WhatsApp, online): the new shop never contaminates the till or the credit ledger, and the upgrade shipped with zero regression in what was already selling daily.
  • Price and shipping are recalculated on the server, the value coming from the browser is never trusted. That fixed a genuine security flaw in the previous model.
  • Stock is only decremented for good once payment is approved, with an idempotent webhook and oversell detection inside the SQL function itself, which evolved across three migrations.
  • Self-service credential vault: the owner pastes her own payment and shipping keys into the admin, they sit in a table with row-level access policies, and the panel only reads a masked view returning "configured" plus the last four digits.
  • Five Deno serverless functions for shipping quotes, checkout, payment webhook, label purchase and integration storage, no secret ever reaches the browser.

6.252

lines of TypeScript

9

admin screens

5

serverless functions

4

migrations with row-level access policies

React 19TypeScript 5.8Vite 6Supabase (Postgres, Auth, Storage, RLS)Deno Edge FunctionsPostgreSQL (migrations + plpgsql)Tailwind CSSFramer Motionvite-plugin-pwa (Workbox)Mercado PagoMelhor Envio

More projects

In-house product · personal fintech2026

Personal finance and productivity assistant over WhatsApp

H&I Digital’s own product, live and in daily use

Logging expenses by sending text, a voice note or a photo of the receipt on WhatsApp, with a spending dashboard, bills and planner in the same system.

React 18 + Vite 5Tailwind CSS 3Firebase Auth + FirestoreNode.js (ESM)
Construction · site management2026

Construction management platform with an offline site diary

Mid-sized construction company

Projects, receipts, costs and payroll in one system, with a site diary filled in on a phone with no signal on site that uploads itself once the network returns.

Next.js 15 (App Router)ReactTypeScriptPrisma
Restaurants · delivery2026

From PDF menu to ordering site, from a single source of truth

Hawaiian and Japanese food restaurant trading at a large rodeo festival

A price changes in one place only: the PDF menu and the ordering site come from the same list of items, and the customer builds a basket and closes the order on WhatsApp.

Python 3PillowChrome headlessfontTools
Politics · election campaign2026

Campaign website and digital card with supporter capture

State-deputy candidacy in inland and coastal São Paulo

The campaign's own address with twelve pages, an interactive regional map and a diary, plus a digital card and supporter capture, standing up to traffic spikes from social media.

Next.js 16 (App Router)React 19TypeScriptTailwind CSS v4
Audiovisual · video as code2026

Celebration video rendered from code

Trader and organiser of a street market on the northern coast of São Paulo state

A 45-second vertical video for social media, with the graphics appearing on the exact second each subject is mentioned and its own soundtrack, no external samples and no copyright.

Remotion 4React 19TypeScriptTailwind CSS v4
Music · brand and website2026

Brand, website and an artwork factory built in code

Country music duo with a touring schedule

@joyedaniel.oficial

A website on its own domain, a visual identity built from scratch, commercial PDF proposals and event artwork regenerated in bulk whenever a date or a town changes.

HTML5 + CSS3JavaScript vanillaChrome headless (render de artes)Python
Infrastructure · lead capture2026

The lead vault that sits outside its own access gate

Multi-tenant hosting platform, serving all of its client sites

Brings together in one place the sign-ups from every site on the platform, with its own panel and CSV export, and capture stays up even when the platform's admin panel goes down.

Node.js 22Express 4better-sqlite3 (SQLite WAL)JavaScript ESM
Community · local outreach2026

Profile-frame generator that runs on the phone itself

Community leader connected to a street market on the northern coast of São Paulo state

The visitor picks the campaign frame, adjusts their own photo and downloads the finished image from a phone. It all happens in the browser: the photo never leaves the device.

HTML + CSS + Canvas puroNext.js 16 (export estático)React 19TypeScript
Services · cleaning (London)2026

Bilingual conversion landing page for a cleaning company

Domestic and commercial cleaning company in London

A seven-section page that asks for a quote in English and Portuguese, with instant language switching and no page reload, and accessibility treated as a requirement.

HTML5 semânticoCSS3 (custom properties, keyframes)JavaScript vanilla (IntersectionObserver)i18n próprio (EN/PT)
E-commerce · B2B SaaS2026

Multi-tenant SaaS for marketplace sellers

H&I Digital’s own product, in development

Tracks the seller's listings, sends a WhatsApp alert when a sale lands or a listing is paused, and suggests a price from the margin rule.

TypeScriptNestJSNext.js (App Router)Prisma
Retail · advertising piece2026

Advertising video made in the browser, with no editor

Mobile phone and electronics reseller

A vertical piece of about 16 seconds for stories and reels, built as a page in the browser and captured to video without ever touching an editor.

HTML5CSS3 (@property, conic-gradient, mask-composite, blend modes)PlaywrightSVG inline
Politics · data2026

Electoral Atlas

Campaigns and candidates

Shows where the votes are: official voting data becomes a navigable map, with performance by town and voting zone and comparison across elections.

Next.jsTypeScript
Politics · operations2026

Campaign command centre

State-level parliamentary campaign

Brings into one panel who holds each task, the editorial calendar, piece approvals, per-profile metrics and the CRM for prospecting in the region.

Next.jsTypeScriptMeta API
Real estate · lettings2026

Property and tenancy management system

Landlord with a portfolio of let properties

Brings properties, tenants, contracts, invoices and expenses into one system, with automatic due-date alerts and history per unit.

Next.jsPrismaPostgreSQLDocker
Community · local trade2026

Street market portal

Local street market on the São Paulo north coast

Shows who the traders are and what each one sells, with news and announcements the organisers update themselves through the admin panel, without depending on the developer.

Next.jsTypeScript
Politics · mobilisation2026

Digital mobilisation card

Community movement on the São Paulo north coast

Gathers the movement's channels into one link, with a form where the person picks their region, saves the contact to their phone and joins the right group.

Next.jsGSAPDockerTraefik
Security · tooling2026

Web security auditor

Internal tool

Runs a site's security checks in one pass and returns the report: protection headers, certificate, redirects and exposed files.

PythonHTML

The next operation on this list could be yours.

The 23 systems above run at companies that decided to stop depending on someone remembering. None of them started with a proposal: they started with a 30-minute conversation about what is still done by hand. You leave with a written plan, talking to the people who will build it, and in the end the repository is in your company's name.

No salesperson in between. Whoever runs the review is who writes the code.

Start with the 30-minute review