Why I Built Frihet Solo: One Developer, Zero Investors
The story behind building an AI-powered ERP as a solo developer. No VC funding, no team, no compromises -- just the tool I needed.

Key Takeaways
- Frihet was built by one developer who needed the tool himself
- No investors means the product serves users, not shareholders
- AI-native from day one: 40+ Gemini tools, not a bolt-on chatbot
- Open ecosystem: REST API, webhooks, MCP server for Claude Code
Three years ago I was billing clients from a Google Sheet, tracking expenses in a second spreadsheet, reconciling bank transactions in a third, and manually moving numbers between all of them at quarter end. I had tried every ERP on the Spanish market. Each one solved part of the problem while introducing new ones: slow interfaces, features I'd never use, pricing that made no sense for a solo freelancer, and a general sense that the software was designed for a company with an IT department, not for one person working alone.
So I built Frihet myself.
The problem I was solving
The Spanish ERP market is full of tools built for larger companies that were later "simplified" for freelancers. The architecture stayed the same -- heavy, slow, enterprise-grade. What changed was the interface: fewer menu items, a lighter color scheme, a smaller price tag.
None of that addressed the actual problem. When you work alone or run a small team, the bottleneck is not which modules you have access to. The bottleneck is friction. Every unnecessary click, every form with twelve fields when you need three, every time you have to leave your work context to go find a number -- that adds up to hours every week. Hours you're not billing.
I wanted a tool that operated at the speed of thought. Not "fast for an ERP." Actually fast.
The decision to build it myself
I did not start with a business plan or a pitch deck. I started with a list of things I was doing manually that a computer could handle better. Automatic invoice numbering. OCR for receipts. A dashboard that shows the current state of my business without me having to generate a report.
The first version ran locally and handled only my data. It took about two months before I showed it to anyone else. The second freelancer who tried it asked for features within forty-eight hours. That was the signal.
I kept going. No investors, no co-founder, no team. Just the tool I needed, built the way I would build any software: incrementally, with real user data (initially just my own), and with the assumption that if I found something annoying, others would too.
What makes Frihet different
After a year of building and shipping daily, these are the things that actually distinguish Frihet from the alternatives.
AI-native, not AI-added. Frihet's AI copilot is not a feature that was bolted onto an existing product. The 40+ Gemini function tools were designed into the architecture from the beginning. You can create an invoice, query your outstanding balance, or ask for a summary of Q1 expenses by talking to the assistant in plain language. The AI has full context of your actual data -- your clients, your invoices, your history -- not a generic financial knowledge base.
Keyboard-first. Every action in Frihet is reachable via Cmd+K. New invoice, new expense, switch to dashboard, find a client -- all of it from the keyboard without touching the mouse. This sounds minor until you've used it for a week and tried to go back to a click-based ERP.
Developer ecosystem. Frihet has a complete REST API, 14 webhook event types, and an official MCP server published on npm as @frihet/mcp-server with 31 tools. If you use Claude Code, Cursor, or any MCP-compatible client, you can manage your entire invoicing workflow without opening a browser tab. I use this daily. The MCP server is open source under MIT -- the code is on GitHub if you want to see exactly what it does with your data.
40 integrations. Stripe, Stripe Connect, WooCommerce, Shopify, Gumroad, Lemon Squeezy, Google Sheets, PayPal, GoCardless, Toggl, Clockify, Slack, Google Calendar, n8n, Zapier, Make, and more. 25 active today, 15 on the way. When a Stripe payment comes in, it appears in Frihet as an invoice automatically. When you log a Toggl time entry, it maps to a billable item. The integrations exist because I needed them, which means they were designed to solve real problems.
VeriFactu compliance. Spain is rolling out mandatory invoice certification (VeriFactu) and Frihet is over 95% compliant ahead of the user-facing deadline. Phases 0 through 3 are done: immutability, SHA-256 hash chain, gap-free numbering, locked fields, corrective invoices, AEAT QR codes, invoice register, and the XML+SOAP submission layer to AEAT's backend. What remains is the configuration UI and sandbox testing. Your invoices are legally valid.
The name
Frihet means freedom in Swedish. I'm half Swedish and the name came naturally. The Spanish market uses "libertad" and the English market uses "freedom" -- both words carry a lot of baggage in product names. Swedish felt clean and unused.
The name captures the actual goal: freedom from tools that slow you down. Freedom from spreadsheets patched together with formulas. Freedom from ERPs designed for companies ten times your size. Freedom to focus on the work, not the administration of the work.
The technical choices
Some decisions I made early that shaped the product significantly.
React + Firebase. Not the trendy stack, but the right stack for this. Firebase Auth, Firestore, and Cloud Functions gave me a backend that scales without ops overhead. The tradeoff is vendor lock-in, which I accept because the alternative is maintaining a server cluster alone.
Gemini for AI. Not OpenAI. Google Gemini's function calling is clean, well-documented, and the pricing is reasonable at scale. The AI features run through about 40 typed function definitions -- invoice creation, expense queries, client lookups, financial summaries. Every function call is logged so users can see exactly what the AI did.
Capacitor for mobile. One codebase for web, iOS, and Android. I built the web app first, then wrapped it with Capacitor. The native plugins (camera for OCR, haptics, push notifications) work well. I haven't published to the app stores yet because the web app needed to be solid first.
No React Router. Frihet's SPA uses a custom router. This sounds like an antipattern, but the custom router is about 50 lines and gives me precise control over navigation without fighting framework abstractions. I can change transition behavior in an afternoon instead of debugging router internals.
Open source where it makes sense. The MCP server is open source (MIT). The API is public with documentation. Webhooks are documented and versioned. The core product is closed source -- I need revenue to keep building -- but the integration layer is open so developers can trust and verify it.
The honest numbers
Frihet launched on February 13, 2026. I'm not going to give you a vanity number to make the launch look better than it is.
What I can tell you: the product works, it's being used by real customers billing real money, and it has not had a single outage since launch. The Stripe integration syncs correctly. The OCR on receipts works on phone photos taken in bad lighting. The AI assistant handles ambiguous queries without hallucinating numbers.
The part I'm most proud of is not a metric -- it's that every feature in the product is something I use myself. There is no "enterprise tier" graveyard of features that exist only to justify pricing.
What comes next
The public roadmap is live. The immediate priorities are:
VeriFactu UI + sandbox -- the XML+SOAP submission backend is complete. What's left is the configuration screen for the user's digital certificate and testing against AEAT's sandbox. Mandatory before 2027.
More integrations. Wise, Qonto, HubSpot, and WhatsApp Business are next. The integration framework is solid -- adding a new integration takes days, not months.
Advanced multi-currency. We already support 40 currencies across 71 countries with precision-aware rounding. The next level is multi-currency dashboard analytics and automatic exchange rate tracking.
Mobile apps. The Capacitor shell exists and works. iOS and Android publishing is a matter of weeks, not months.
I post updates on what I ship and what I'm working on. The roadmap is honest about what's planned vs. what's live.
Try it
Frihet is available now at app.frihet.io. Free plan with no time limit -- invoicing, expenses, clients, and products included. No credit card required.
If you're launching from Product Hunt: use the code PRODUCTHUNT for 30% off your first three months on any paid plan. 500 uses, valid through April.
I built this because I needed it. If you're a freelancer, consultant, or small team who has been patching together tools that don't talk to each other, try it. The worst case is you spend ten minutes and go back to your spreadsheet.