About us - A small studio in São Paulo

Mellofattura builds web applications, native Apple software, and AI features for teams who care about craft.

Strategy, design, and engineering stay in one team, which is mostly why a launch ends up focused instead of padded.

We are in Brazil and work remotely. Swift and SwiftUI on Apple platforms, Next.js and TypeScript on the web, and AI systems when the product genuinely needs them.

Next.js, TypeScript, Convex, and Clerk
Web
iOS and macOS apps
Apple
Agents and LLM features in real products
AI

Our culture - How we work

We hold a high bar on craft and stay close to the teams we build for. The rest is mostly discipline about what we say no to.

  • New tech has to earn it. A technology gets in when it makes the product clearer or the system steadier. Being new is not a reason on its own.
  • Architecture that holds. Readable code and a considered structure are what let a product keep changing after launch without turning brittle.
  • Built for the daily user. Interfaces should feel obvious when someone is in a hurry. We design for the person who opens the product every day, and a demo is a poor stand-in for that.

Our stack - What we build with

A short list, on purpose. Each of these has shipped in a product we still maintain, and each earns its place by cutting the number of moving parts rather than adding to it.

Web & mobile front-end

On the web the front-end is a Next.js app. On mobile we go native rather than wrapping a web view: Swift and SwiftUI for iPhone, iPad and Mac, Jetpack Compose when the product needs Android too.

  • Next.js. The web front-end: server-rendered React with a build step we know inside out.
  • Swift & SwiftUI. Native Apple apps, from the first prototype to the App Store build.
  • Jetpack Compose. Native Android when the product needs to be on both platforms.

Backend & database

Convex is the backend when the product has a shared source of truth: it is the database, the server functions and the realtime layer in one place, and the client stays in sync without a cache to babysit. SwiftData is the store when an Apple app is local-first and the data belongs on the device. Some products use both.

  • Convex. Database, server functions and realtime sync in one backend.
  • SwiftData. On-device persistence for local-first Apple apps.

Authentication

Sign-in, sessions and organisations are a solved problem, so we do not solve them again. Clerk gives every product the same login across web and mobile, and it plugs straight into Convex.

  • Clerk. Sign-in, sessions and organisations, shared across web and mobile.

Payments

Two tools, one per storefront. Stripe handles cards, invoices and subscriptions on the web. RevenueCat wraps App Store and Google Play billing so a subscription is one thing in the code, not three.

  • Stripe. Cards, invoices and subscriptions on the web.
  • RevenueCat. In-app purchases and subscriptions on iOS and Android, behind one API.

The tools are the smaller half of it. How a project runs is where most of the difference shows up.

Leadership

  • Marcello Gonzatto Birkan

    Founder

From the blog

Notes on shipping product software: architecture decisions, and the details that only show up after launch.

Building iOS apps from the cloud: Claude Code and Revyl

One night, two iOS apps, 19 merged PRs and Xcode never opened. How Claude Code's cloud sessions and Revyl's remote simulator fit together, and where the Mac still comes in.

Read more

iOS development with my Mac switched off

I sent a task by message and the app came back written, built, installed on a cloud iPhone, photographed and with a PR open. The whole loop inside a thread: what works, what it costs, and what it still cannot do.

Read more

Tell us about your project

Where we are

  • São Paulo
    São Paulo, SP
    Brazil