Drago
Software architecture · Development · Technical direction
Roberto Drago. From idea to product.
I design and build software. I own the technical choices, the code and the team's work, all the way to release.
Inside my workInterface / Logic / Data
01 / Work
Selected projects. Under the surface.
Ventures, labs and client platforms. Open a project for the context, my role and the technical decisions.
11 products
01VentureMatchRoom
Rooms for rent where tenants and hosts choose each other, and chat opens only on a mutual yes.Live on iOS · Android soon
My part
In a team of three, I built the application: the mobile app, the backend and the site. I made the technical choices, the user experience and the release, all the way to the App Store.
Key decision
- Problem
- A check against Apple's and Google's criteria came back as a no-go: data access rules trusted too much of what the app sent, and there was no blocking, reporting or verified account deletion.
- Solution
- Move the permissions into the database, add blocking, reporting and a moderation console enforced there, and test account deletion end to end before publishing.
02Ventureposa
A shared camera for events: a few shots each, all revealed together.Live

01Shoot
A few shots each. The counter is the film.

02Wait
Photos stay locked until the roll develops.
Shared venture with Giulio
My part
I built the whole web side, worked on the Supabase backend and did about half of the app: I redesigned the rolls and the photo detail screens, optimised the camera and how photos are displayed, and added reactions and sharing.
Key decision
- Problem
- Taking, uploading and viewing photos was slow: every guest pulled full-size files, often on a weak party connection.
- Solution
- Compress on the phone at the moment of the shot, show a lighter copy in the grid and the viewer, and serve the original only when someone downloads it.
How it's built
03VentureBooka
Five apps for salons and barbers, one shared database underneath.In production
Shared venture with Giulio
My part
I built the three web applications: the public booking site, the management suite and the superadmin console. I designed the database together with Giulio, who built the two mobile apps.
Key decision
- Problem
- Five apps with different users and release rhythms had to share the same businesses, staff, clients and appointments without keeping five versions of the truth.
- Solution
- One monorepo with shared packages, each app deployed on its own, and a separate repository that owns the database: migrations, RLS, RPCs. The data stays single, the releases do not.
04VentureEveryOneSeated
From the first RSVP to the last seat, one plan for the event.In development
Shared venture with Giulio
My part
I am developing the product with Giulio: a web and mobile workspace that connects the layout of an event with its guest list, seating and RSVP responses.
Key decision
- Problem
- A table moved in the floor plan and a guest assigned to a seat must refer to the same event across web and mobile.
- Solution
- Shared domain and planner packages with one Supabase data model. Each platform has its own canvas renderer, while geometry and seating rules stay in common code.
05VentureBeep
Driving theory, one quiz at a time. Understand mistakes and revisit them.In development
Shared venture with Giulio
My part
I am developing Beep with Giulio: from the study flow and quiz review to a family of apps for different licence categories, built on the same foundation.
Key decision
- Problem
- Different licence categories need focused apps without separate implementations of quizzes, review and progress tracking.
- Solution
- One codebase, four build variants. Each selects its categories and visual identity, with progress stored locally and kept separate by licence category.
06VentureLembi
Photos, paper and small keepsakes, composed in a notebook of your own.Live on the App Store
Independent personal product
My part
My own product, from the concept and visual direction to the native iPhone and iPad app. I built the canvas, material capture, local persistence and notebook export around the feeling of composing a physical journal, and released it on the App Store.
Key decision
- Problem
- Moving a fragment into a pocket, undoing a gesture or exporting a page must preserve the whole composition.
- Solution
- One page document for the canvas, saving, undo and export, backed by transactional SQLite persistence. Materials remain distinct from the instances placed on pages.
07Client workIonian Experience
Hospitality · five languagesIn production
Client project
A multilingual hospitality platform that turns destination storytelling into qualified enquiries.
The risk
A public contact form writing into the same database that holds every lead. The contact list had to stay private by design.
The fix
I rebuilt the submission path end to end: validation, APIs, transactional email, database policies. Writes go through the server. Reads never leave it.
System & result
System built
Internationalised Next.js frontend, server APIs, Supabase RLS, service-bound lead capture, transactional email, GDPR-shaped data flows.
Result
Five languages, one write path, zero public reads.
08Client workFabbrichiere
Creator platform · Italian visual artistsClosed beta
Client project · I also invest in it
A curated platform where Italian visual artists publish portfolios, exchange real feedback and keep their print-quality originals private.
The trap
Portfolio, community and commerce in one place, without reproducing the noise of a global social network or leaking a single full-resolution file.
How I built it
Product model, artist workflows, auth, storage policies, social interactions, admin controls, and a commerce layer designed to stay switched off until the community earns it.
System & result
System built
Next.js and Supabase across artist profiles, artwork discovery, private originals, RLS, feedback loops, and a Printful and Stripe model on paper.
Result
An invite-only beta running. Commerce architecture designed, deliberately not built.
09VentureGran Finale
Cross-platform media · event experienceBuilt MVP
Guests film short prompted clips at a party. Nobody sees them. Days later, everyone receives one edited film.
The hard part
The guest experience had to stay emotionally simple while identity, sealed media, asynchronous rendering, payments and an actual event night happened underneath it.
All of it
The whole product: party entry, anonymous-to-creator identity, sealed media permissions, rendering workers, Stripe payments, notifications, retention.
There is also a manual fallback, because on the night of the party nobody is going to debug a render queue.
System & result
System built
Expo clients, Supabase permissions and storage, FFmpeg workers, Stripe, notifications, and one human escape hatch.
Result
Built to pilot. Media sealed by default, payments live, nothing that requires an engineer at midnight.
10LabOpen Agent Skills
AI governance · developer enablement · agent workflowsOpen source
My open-source skills
Evidence-driven agent workflows for complex work: auditing AI systems against the EU AI Act and turning unfamiliar codebases into ready-to-deliver workshops.
AI Act Audit
A six-step engineering audit for prohibited AI practices and content-transparency duties. It inventories features, checks applicability, traces findings to file-level evidence and primary sources, then produces a conservative report for engineering and legal review.
Workshop Generator
A repository-first discovery workflow that turns an unfamiliar codebase into a structured onboarding workshop and an animated Remotion deck, adapted to its actual stack and audience.
Two installable skills. No runtime, API key or platform lock-in: the method travels with the repository.
System & result
System built
Portable SKILL.md workflows, selectively loaded primary-source references, fixed reporting templates, repository discovery rules, a Remotion deck template and behavioral evals.
Result
One open-source collection spanning AI governance and developer enablement: complex knowledge turned into repeatable, evidence-backed operations for multiple coding agents.
11LabAletheia
Private journal · phone-first PWALive
A private journal for the gestures, silences and fragments people communicate through. It never sends anything anywhere.
What's inside
The mobile flow, the ambient motion, the clue model, offline install, and JSON export, import and delete.
No account, no server, no analytics. Clear your browser and it is gone. That is the feature, not a limitation.
System & result
System built
A phone-first React PWA, local-only persistence, installable offline support, explicit export and deletion controls.
Result
Live and installable. The user holds the only copy.
02 / Method
The role changes with the problem.The ownership doesn't.
Four stages. Every project goes through all of them. Rarely in this order.
A plan people can approve
Client needs, constraints, missing information. I turn them into a direction the client can sign off and a team can start on Monday.
- Stakeholder context
- Scope design
- Delivery path
Range in practiceThe same person at every layer.+
BuildReact / Next.js · Vue / Nuxt · Angular · React Native / Expo
SystemsNode / NestJS · Supabase / PostgreSQL · Strapi · Docker
OperateVercel / Cloudflare · Azure / MSAL · CI/CD · AI / RAG
03 / About
Production teaches.The team shouldn't pay twice.
Software architect at The Wave Studio. I lead client delivery, stay close to the code and turn what we learn into foundations the next project can reuse.
- 01Make the decision explicit.
- 02Follow it to production.
- 03Leave a stronger default.
04 / Start a conversation
Bring me the thing nobody wants to own.
Software architecture, fractional technical direction, product leadership or senior hands-on delivery. I am most useful when the work needs breadth and depth at the same time. Tell me what is stuck, and within a day I will tell you whether I am the right person for it.