The quarterly pack, and the numbers underneath it
Figures thatagree with each other

The quarterly LP pack is sent as a PDF and comes back as questions. What is ownership now, after the bridge. Which companies moved on revenue, and which moved because somebody else repriced them. Answering either one from a model that gets rebuilt every quarter means opening the model. A reporting layer holds the definitions instead. One meaning for TVPI, one for gross against net, one for the date a mark was struck.
Book a 15-minute callSend the details below. I'll reply by email to arrange a time.
London, UK · Available for new projects
What actually slows private equity and venture firms
The pipeline lives in Affinity and in somebody's head
Affinity or DealCloud holds the record, and the record is only as good as what somebody remembered to log after the call. So the working pipeline ends up in a spreadsheet one person maintains. When that person is on holiday, the firm's view of its own deal flow goes quiet.
Each deal leaves its diligence in a different room
Intralinks for one deal, Datasite for the next, a shared drive for the one that never closed. Access lapses when the deal does, so what survives is whatever somebody downloaded. Years later, somebody asks what was actually disclosed, and the answer depends on who still has the folder.
The LP report is assembled by hand each quarter
Founders send the quarter in whatever they use. A PDF, a deck, a reply in the body of an email. Somebody rekeys it into the master model, checks ownership against Carta and the side letters, and the LP report is built from there. Every quarter, the same way.
data, modelling and reporting
A dashboard request is usually an argument about what counts as won and when a month ends. Have it, write it down, and then the pipeline. Data pulled from the source systems, features built from it, parameters searched, and the model tested against data it has never seen.
- Definitions agreed before anything gets built
- What counts as a customer, an order, a live account, and when a month ends. Also the fields that are typed too loosely to count, which is why two reports on the same week disagree.
- A number you can trace to source
- Each figure on the report opens onto the query and the rows behind it. Challenge a total in a meeting and you can show the working there and then, instead of going away to check.
- How often the model gets it wrong
- The model is checked on data it never saw in training, and scored against a plain average. Now and then it loses, and you get told, which saves you building on top of a guess.
Selected projects
Products I built and open-source projects I maintain. Open a project to see the work for yourself.
- 01
2026Continuum
Web3 · DeFi protocol
A Solana DeFi protocol for 24/7 synthetic exposure to real-world assets

Deposit USDC, mint matched long and short tokens at NAV, sell the leg you don't want. A constant-product invariant keeps the pair redeemable back to the deposit.
- Rust
- Anchor
- Solana
- TypeScript
- Pyth
- Next.js
- Bun
- Railway
Pre-mainnet. Devnet markets, audits pending.
Protocol · Frontend · Infra
- 5 Solana smart contracts in Rust
- 8 synthetic markets on devnet
- 4-state oracle risk machine
- Volatility-scaled fee curve
- 02
2025 →Delta Xi
E-commerce · Brand
A mathematics apparel brand on a storefront I wrote from scratch

I built the cart, checkout, product recommendations, affiliate programme and support desk, and run the infrastructure myself.
- Next.js
- React Server Components
- Stripe
- Auth.js
- Tailwind
- Umami
- Chatwoot
- Cloudflare
Founder · Engineer · Operator
- Custom checkout on Stripe + Klarna
- Server-rendered recommendation engine
- Self-hosted analytics and live chat
- 50+ STEM explainers driving organic search
See 4 more projects
- 032026
Dr Flavia Pretti Aslanian
Healthcare · Practice site
A bilingual dermatology website for a practice in Harley Street and Wimbledon

A new landing page guides patients to medical, aesthetic and surgical care. The practice edits its own content, and staff have a password-protected dictation tool in the same app.
- Next.js
- Sanity CMS
- Tailwind v4
- Radix
- Motion
- ISR
- Railway
- Cloudflare
Design · Build · Deploy
- 84 published English and Portuguese routes
- 72 treatment pages with clinic-editable content
- Custom before/after comparison UI
- Internal clinician dictation tool
- 042026
Dray
AI tools · Product website
A product website for keeping project context across AI agents

An editorial landing page introduces shared project context, shows illustrative agent workflows and explains setup and privacy ahead of beta.
Beta coming soon. The public demos illustrate the workflow; they are not live agent connections.
Design · Build
- Interactive agent-linking illustration
- Project-context walkthrough
- Setup and privacy guidance
- 052026
Tallylamp
Open source · Browser infrastructure
A browser for AI agents that you can watch and take over

I built the browser service, dashboard, MCP server and public website. Agents use Chrome on your server while you watch the same browser live. Take control to sign in, then hand it back; saved profiles carry between sessions.
- TypeScript
- Next.js
- Chrome
- MCP
- SQLite
- Docker
- Railway
Public site at tallylamp.dev. The browser service and dashboard are self-hosted.
Creator · Engineer · Maintainer
- Live viewing and explicit human handoff
- Separate agent permissions and reusable profiles
- MIT licensed, with a Railway deploy template
- 06
2025 →CarClout
SaaS · AI content engine
A subscription app that turns a phone photo of a car into something worth posting

Upload a photo, pick a template, get the edit back a moment later. Thirteen AI models sit behind a metered credit ledger, next to a layer editor, a post scheduler and a live chat room.
- Next.js
- SurrealDB
- Auth.js
- Stripe
- fal.ai
- Cloudflare R2
- Stream.io
- Railway
Engineering · Infra · SEO
- 724 generated landing pages, all live
- 128 API routes behind one app
- 13 AI models on a metered credit ledger
- Instagram posting, scheduling and analytics
One runs on the client's own domain and one is internal to theirs, so there is nothing here of mine to show you.
- ClientJooyontechAI sales assistant, Korean and English
- ClientPHFWeb, AI and automation · private medical practices, UK
Not everything is public. A fair amount of the work sits in private repositories I cannot hand you a link to. Ask, and I will walk you through it.
Ask to see moreHow a project runs
- 01Before code
Scope
One call, then a written spec. What it does, what it deliberately does not do, and what milestone one is. You sign that off before I write a line.
- 02Early
First deploy
A narrow slice that actually works, running where it belongs. A URL you can open, a build on your phone, a job on your own servers. Real data, real hosting, no placeholder screens.
- 03Ongoing
Build in the open
Deploys land as the thing fills in, not in one drop at the end. You watch it happen. And you get to change your mind while changing it is still cheap.
- 04Handover
Yours to run
The product runs in your accounts, with the domain, hosting and documentation under your control. Source-code transfer is quoted separately; we agree what is included during scoping.

Rafael Aslanian
I got my hands on a computer at 6 and never really stopped.
Now it is decentralised finance, tokenising real-world assets and topological deep learning, then building whatever those turn into. Continuum came out of that. So did Delta Xi (δξ, an infinitesimal change in a random variable).
Bossa nova and MPB were always on at home, so I sang before I played anything. Guitar and piano came later, then jazz.
- Based
- London, UK
- Languages
- English, Portuguese; intermediate Spanish and Chinese
- Focus
- Web3, DeFi, real-world asset tokenisation
- Also
- Music
Have an idea? Tell me.
Need the audience too?
I can build the thing. Getting people to notice it is a separate job, and not mine. For that I work with Nytforge, who film, edit and put the work in front of a local audience. They are strongest with automotive and local businesses.