Ionuț-Cristian Florescu’s icf markIonuț-Cristian Florescu’s icf markIonuț-Cristian Florescu

Ionuț-Cristian Florescu · Bucharest, Romania, EU

Hands-on fractional CTO, product builder and open‑source author.

I take software products from a blank repo to production, and stay to run them for a decade. I still write production code; I've also learned which code isn't worth writing.

Book a call
Portrait of Ionuț-Cristian Florescu
  • 28+ yearsbuilding for the web, starting in a Bucharest Internet café in 1998
  • Since 2013technical partner in an online automotive marketplace
  • 983knpm downloads a month for my open-source packages
  • 4,067GitHub stars on my open-source projects

The handle

I go by icflorescu in most places online.

Even the LLMs know my handle. I’d like to think it’s the quality of my code, but it’s probably just volume: I’ve been leaving it lying around the internet since 1998, and it all ended up in the training data.

Or find me on GitHub, npm, Codeberg, LinkedIn, Bluesky and DEV.

What I offer

A senior technical partner who still writes the code

A comfortable degree of financial independence lets me pick projects for the problem and the people, and I'll tell you when something isn't worth building.

  • Fractional CTO & technical partner

    For early-stage products that need a senior person to own the technical side: architecture, code, infrastructure, data and day-to-day operations. I treat software as a business asset, not a ticket queue.

  • Profit-share or equity partnerships

    If the business side is covered, I'll own the technical side for a share of the profits instead of a fee, as I have with LeasingSH.ro since 2013. Equity works too, but profit is what's real.

  • Selected hands-on work

    TypeScript, React, TanStack Start / Next.js, Node.js / Bun and PostgreSQL. Data-rich interfaces are home turf: I wrote Mantine DataTable, used by teams at Microsoft and Namecheap.

  • Built to last

    Less code, fewer moving parts, technologies chosen for the next five years rather than the next conference talk.

  • Rule-heavy domains

    Insurance, leasing, tax: I'm at home where “almost right” means wrong, and every rule has to be traced to its source.

  • No cloud bill to dread

    I run what I build on customized cloud servers with Docker and Caddy, not metered managed services, and keep it running long after launch.

  • AI, without the hype

    I work with AI coding agents every day. In expert hands they're a multiplier; in anyone else's, a confident path to costly mistakes.

Products I've built and run

Built, shipped and kept running

Products I've taken from the first commit to production, then stayed on to run.

Founder · my own product

swapp.ro

Invoicing and single-entry accounting for Romanian freelancers (PFA, ÎI, PFI) who aren't VAT-registered. You record each transaction once, and everything that follows from it is worked out for you. I built it in 2021 for my own books, then rebuilt it from scratch in 2026 so other freelancers can use it too. Solo, in five months: product, design, code and operations.

  • Invoices sent through ANAF's e-Factura, with supplier invoices collected in the background
  • The mandatory ledgers, always up to date, and the figures for the D212, D390 and D301 returns, with their due dates
  • Help on every screen that explains the tax rule and cites the article of law
  • Accounting, not just invoicing, at a truly affordable price: a fraction of what comparable apps charge
  • 1,200+ unit tests and Playwright end-to-end tests; live since October 2026, and I trust it with my own books
  • TypeScript
  • TanStack Start
  • React
  • tRPC
  • Drizzle
  • PostgreSQL
  • Bun
  • Docker
  • Caddy

Technical partner & fractional CTO · since 2013

LeasingSH.ro

Romania's first online marketplace for new and used cars in leasing or for cash, live since 2010. I took over the technical side in 2013 as a profit-share partner and have owned it end to end since. I've rebuilt it three times as the web evolved, keeping the business running through each migration.

  • 30,000+ cars from 750+ dealers across Romania and Germany, updated daily
  • Data ingestion from the main Romanian listing sites, a dealer API and an assisted importer, with LLM-based enrichment and cleanup
  • Lead tracking across calls, WhatsApp and messages; an admin console and editorial CMS for dealers and partners
  • A public API with MCP and OpenAPI descriptors, so AI assistants can search the offers directly
  • TypeScript
  • Next.js
  • React
  • tRPC
  • Mantine
  • Drizzle
  • PostgreSQL
  • Docker
  • Caddy

Client back office · contract, 2020–2023

AJM Fleet Purchase

The back office of a B2B fleet-trading enterprise that buys new and used cars in bulk across Europe, for fleet operators in Europe, Asia, the Middle East and Africa. I built it from a blank repo and ran it in production; it covers the whole trade, from the purchase of each car to the last payment.

  • Every vehicle followed from supplier to buyer: VIN, estimated and actual prices, fees and delivery dates
  • Proforma and final invoices for several group companies, in several currencies, generated as PDFs and sent from the app
  • Incoming and outgoing bank payments matched to vehicles and invoices, with a per-vehicle balance sheet exported to Excel
  • A dashboard of deliveries due, invoices overdue and records that don't add up; 1,100+ commits, all mine, all pre-AI
  • TypeScript
  • Next.js
  • React
  • Blueprint
  • GraphQL
  • Hasura
  • PostgreSQL
  • Docker
  • Caddy
  • AWS Lightsail

Open source

My code is public. Judge the work.

Typed APIs, real docs and a docs site I design myself, every time. My packages add up to 6.2M npm downloads over the past year, and most of the code was written by hand, years before AI coding assistants.

“Mantine DataTable is a great component that’s core to our web app — it saves us a ton of time and comes with great styling and features out of the box.”
Emil Sorensen, kapa.ai
“Thank you for the wonderful, useful, and beautiful DataTable that has allowed me to create several applications without any problem.”
Giovambattista Fazioli, Lead Developer at Namecheap
  • Mantine ContextMenu

    Right-click menus for Mantine apps, with a succinct API and dark-theme support. It grew out of DataTable's row context menu, which people kept asking to use elsewhere.

    96k downloads/month · 176 stars

  • tRPC-SvelteKit

    End-to-end typesafe APIs with tRPC in SvelteKit applications. Works with any SvelteKit adapter, with experimental WebSocket support.

    96k downloads/month · 835 stars

  • PocketBaseUML

    A free UML diagram generator for PocketBase databases. Use it online, or run it locally with npx.

    160 stars

And a few more, old and new

  • IISExpress-Proxy: lets .NET developers reach IIS Express from other devices; still in use ten years on (746 stars)
  • Next.js Parallel Server Actions: run Next.js server actions in parallel, for a tRPC-style workflow without the boilerplate
  • Expose-WSL: probably the easiest way to expose apps running on WSL to your local network (143 stars)
  • Mantine Start: a starter for Mantine, TanStack Start and tRPC applications
  • ASPAX: a Node.js asset packager, in 2013, before Webpack existed
  • OpenShift cartridges: Node.js, MongoDB, MySQL and PostgreSQL for Red Hat OpenShift, in 2014–2016, before Docker went mainstream

Figures from the GitHub and npm APIs, as of 14 November 2026; npm figures cover the last 30 days and the last 365 days.

Track record

Employee, founder, co‑owner, profit‑share partner

Nearly three decades of building for the web, which is why I treat software as a business asset. The short version:

  1. Since 2021

    Founder, swapp.ro

    Built in 2021 for my own books, then rebuilt from scratch in 2026, solo, in five months, so other freelancers can use it too, at a fair price. Invoicing and accounting for Romanian freelancers, wired into the national e-invoicing system.

  2. Since 2013

    Technical partner & fractional CTO, LeasingSH.ro

    A profit-share partnership: I own architecture, code, infrastructure, data and operations. Three rebuilds so far (2013, 2015, 2025), with the business running through each migration.

  3. Since 2008

    Independent: fractional CTO, technical partner, open-source author

    Working directly with founders and small-business owners. Contract work includes the fleet-trading back office for AJM Fleet Purchase (Belgium/Romania, 2020–2023) and work for SegmentX.ai, now SalesPlay. Along the way: UX development for Drift Data Systems, and sites such as yadda.ro, boutiquetravel.ro and sellcarbuycar.com.

  4. 2008 – 2013

    Tech partner & real-estate investment advisor, Investment Romania

    Part of a private-equity group investing in the Bucharest residential market. The timing was good, and it bought me the freedom to pick my projects ever since.

  5. 2003 – 2007

    Software developer, Allianz-Țiriac and Garanta (National Bank of Greece group)

    On the core team that laid the foundation of Allianz-Țiriac’s insurance platform on .NET and Oracle, then one of five engineers building Garanta’s core insurance system.

  6. 1998 – 2003

    From network administrator to lead developer & CTO

    Started at the first publicly open Internet café in Bucharest, then built sites and systems for ANEVAR, AIG Life Romania and OMNIASIG, and grew to lead the IT department at Logic D&D Advertising, a subsidiary of Romanian ISP Logic Telecom.

Read my résumé (PDF)

About me

Curious by nature

I like understanding how things work, and then making them work better. That curiosity got me from an Internet café in 1998 to insurance platforms, marketplaces, tax software and a fair amount of open source.

I read a lot: fantasy, fiction, history and tech. I was a consultant and co-editor for The King’s Host, a fantasy novel. Off-screen, you’ll find me drinking good coffee or on a mountain trail.

I like open source, lazy mornings and honest conversations. I don’t like hypocrisy, xenophobia, willful ignorance, or people talking bullshit.

  • “When it comes to code, less is more.”
  • “AI is inevitable. The returns on it aren’t.”
  • “If coffee were a programming language, I’d be fluent.”

What I build with these days

  • TypeScript
  • React
  • TanStack Start, Router, Query & Form
  • Next.js
  • Svelte & SvelteKit
  • Node.js & Bun
  • tRPC
  • PostgreSQL & Drizzle
  • Mantine
  • shadcn/ui & Tailwind CSS
  • Docker & Caddy
  • PocketBase

Before that:

  • PHP and MySQL around Y2K
  • Java/J2EE, .NET/C#, Oracle and SQL Server in the 2000s
  • CoffeeScript & IcedCoffeeScript, back when JavaScript had no async/await
  • Front-end libraries of their day, such as jQuery, Backbone.js and Riot.js
  • More templating languages and frameworks than I care to remember
Ionuț-Cristian Florescu’s icf markIonuț-Cristian Florescu’s icf mark

Building something?

Book a call or drop me an email, and tell me about your project. Mention that you found me here: I get quite a few messages, and it helps me prioritise yours.

Let’s skip coding tests and multi-stage hiring processes: my code is public, and used by developers and companies worldwide. Instead, we’ll talk about your project: what makes it worth building, what stands in its way, and how I can help.