Frontend & Flutter contractor

I take products from an empty repo to something people open every day.

Ten years of production React, TypeScript and Node. Flutter when the thing needs to live on a phone. One person for the whole job: the UI, the state, the data layer, and the edge cases nobody thought to scope.

Based
Remote · EU hours
Business
Registered in NL · KvK 42120935
Open to
Contract & freelance
Before you commit
Published prices · spec from €300
01What I do

Two lanes, both end to end.

Most teams don't need a specialist in exactly one framework. They need someone who can pick up whatever is already there and finish a whole feature.

01

Business

Web apps

Production React and TypeScript. Component architecture, state that doesn't rot as the app grows, and the boring parts done properly: auth, forms, data fetching, error and empty states.

ReactTypeScriptAstroViteThree.jsMUI
See the business work →
02

Mobile

Flutter apps

One codebase to Android, iOS, web and desktop. Offline-first data, custom rendering when the design needs it, and interactions that don't feel like a website in a wrapper.

FlutterDartRiverpodgo_routerDriftSQLite
See the mobile work →

How I work

  • You see it in slicesReviewable increments as we go. No black box that opens in week eight.
  • Existing codebases welcomeGreenfield is the easy case. Most real work is inheriting something and making it better without breaking it.
  • Tests where they earn itMoney, dates, tax rules, state machines. Not a coverage number for its own sake.
  • Proof before commitmentEvery project below is public and running. I'll build a demo of your idea before you sign anything.
02Solutions & prices

Every price is already on the page.

Fixed-scope packages with the hour estimate, the price and the delivery date published before you talk to me. No discovery call to find out whether you can afford it. Send an order and a written quotation comes back within two working days.

  1. €300Spec SprintA written fixed-scope plan with the hours in it, in 5 working days. Credited in full against a build.
  2. €900Prototype SprintYour riskiest screen, running on a link you can send to a partner or a bank.
  3. €600–€10,500BuildsWebshops, mobile apps, booking systems, internal tools. Nine packages, each with its exclusions written down.
  4. €95/moCare plansBecause software nobody maintains stops working — slowly, then all at once.

Nothing is charged on this site — you send an order, I reply within 2 working days with a written quotation. All prices ex. VAT. Dutch customers pay 21%; EU businesses with a valid VAT number are invoiced at 0% under the reverse-charge rule.

03Selected work

Shipped, not slideware.

These are my own projects, not client work behind an NDA. You can open the app and read the code before we ever speak.

01 / 02

Business

Tools people open to get work done: bookkeeping, dashboards, teaching interfaces. Local-first where it helps, tested where being wrong would cost money. The first one runs my own company.

Sole Ledger screenshot
Mobile appMy own one-person company

Sole Ledger

The bookkeeping app that runs this business.

Bookkeeping for a Dutch sole trader living in Japan: log time, photograph receipts, pull unbilled hours into an invoice, and see what to set aside for tax. Two tax systems, two currencies, no server and no subscription.

  • Unbilled time pulls straight into tri-lingual (EN/NL/JA) PDF invoices, with the right VAT wording per client.
  • Photograph a receipt and on-device OCR fills in the amount, tax and date. Nothing is saved without a look first.
  • A dashboard card turns year-to-date profit into a Japanese income-tax reserve, so March isn't a surprise.
  • The whole ledger is one SQLite file, synced between laptop and phone with Syncthing.
FlutterDartRiverpodDrift (SQLite)pdf / printingML Kit OCRgen-l10n
kakeibo 家計簿 screenshot
Web appAnyone who bounced off a bookkeeping textbook

kakeibo 家計簿

Track your money, learn accounting by accident.

A personal finance app on a real double-entry engine. Log 'money moved from X to Y' and it shows you the journal entry underneath, debits and credits included. The lessons then run on your own numbers.

  • A tested double-entry core: normal balances, validation, trial balance. The UI won't let you post an unbalanced entry.
  • The entry form doubles as the teacher. It previews the journal entry and explains each side.
  • Lessons use your live data, so the accounting equation holds true against your actual finances.
  • Everything stays in your browser. One-click JSON export and import, no account.
TypeScriptReact 19ViteTanStack RouterDexie (IndexedDB)Tailwind CSS v4VitestPlaywright
karakuri からくり screenshot
Web appBeginners who need to see it, not read it

karakuri からくり

Programming you can watch happen.

Block programming with turtle graphics, where the point is visibility: a sandboxed interpreter runs your program step by step and lights up each block as the turtle draws. Loops and nesting stop being abstract.

  • Stepped execution with live block highlighting and a speed slider you can slow right down.
  • Custom turtle blocks alongside Blockly's loops, math, logic, variables and functions.
  • Lessons check the shape you actually drew, not which blocks you used to draw it.
  • Workspace auto-saves locally, with JSON export and import.
TypeScriptReact 19ViteBlocklyJS-InterpreterCanvasTailwind CSS v4Vitest
02 / 02

Mobile

Flutter apps to Android, iOS, web and desktop from one codebase. Offline-first, with custom rendering where the design earns it. All of these came out of my own life around Japan: studying the language, and moving there.

Kurashi 暮らし screenshot
Mobile appFirst-time movers to Japan

Kurashi 暮らし

Your first year in Japan, in the right order.

Moving to Japan front-loads everything: a dozen offices in three weeks, each wanting the document the last one produced, and rubbish rules that change between neighbouring wards. Kurashi turns that into a dated plan, and teaches you the Japanese words you'll hear at the counter while you work through it.

  • One onboarding pass covering your dates, city, housing and plans generates the whole personalised checklist and rubbish schedule.
  • Deadlines are real calendar dates from your own arrival date, with the legally binding ones flagged.
  • Prerequisites are enforced: the bank account stays blocked until your address is registered, because that's how it works.
  • Every task carries the phrase to say in Japanese, kana and romaji. Tap it to enlarge and hold it up at the counter.
FlutterDartRiverpodgo_routerLocal notificationsshared_preferences
Chronomap screenshot
Mobile appPeople who like history and hate timelines

Chronomap

A history map you scrub through time.

Drag the epoch slider between 2000 BCE and today: borders morph, events fade in around their date, and the whole colour mood shifts from parchment-warm in the deep past to crisp and modern now.

  • Six modes: military history, literature, philosophy, medicine, natural disasters, plus live geography.
  • Event data pulled from Wikidata, merged with a bundled seed set and ranked by real prominence.
  • Hand-rolled zoom clustering and border morphing, built to outlive a fast-moving mapping library.
  • Fourteen architectural archetypes rendered procedurally in 2.5D, building and collapsing as you scrub.
FlutterDartRiverpodflutter_mapWikidata SPARQLOpenStreetMap
LinguaPop screenshot
Mobile appLearners past the beginner stage

LinguaPop

Read real Japanese novels, not textbook dialogue.

Import an EPUB, or a paired original and translation, then read it with per-word JLPT colour coding, tap-to-look-up, select-to-translate, switchable view modes and text-to-speech.

  • Per-token JLPT colour coding, so you can judge a page's difficulty before committing to it.
  • Tap any word for a dictionary entry, or select a passage to translate.
  • Reading modes and custom themes built for long sessions, not for screenshots.
  • Built-in speech for listening practice alongside the text.
FlutterDartRiverpodgo_routerHiveMeCab tokenizerTTS
Off the clock

I also build games, for the love of it.

Not a service I sell. It's where the harder rendering, physics and audio tricks get their first outing, and a few of them ended up in the paid work later.

SpinTop ArenaA beyblade-style physics battler, drawn entirely in code.Play ↗
Kotodama 言霊剣A typing samurai game where your keyboard is the sword.
GrimoireAn arena brawler where every spell casts differently.
04About

One person, whole product.

I'm Serge Kamel. Frontendienst is my registered Dutch business, which is how I take on contract and freelance work after ten years of building production frontends.

Every project on this page I designed, built and shipped on my own, front to back. That's how I work with clients too: one person who owns the whole problem instead of a hand-off between three specialists.

The Japanese running through half of it isn't a theme I picked. I study the language every day and I'm moving there. Three of these apps exist because I needed them myself: the bookkeeping one runs this business, and the newest one is getting me through the paperwork of the move. I do better work on things I use myself.

Games are the other half. Not something I sell, but it's where the rendering, physics and audio work comes from, and that ends up paying off in the client work.

  • 10 yrsProduction React, TypeScript and Node, including API design and management
  • 7Shipped side projects, every one of them public and running
  • 0Hand-offs. The person who designs it is the person who ships it
05Get in touch

Tell me what you're building.

The project, the stack, roughly when you need it. I'll reply with whether it's a fit and a ballpark quote. If you'd rather see something than read about it, I can build a working demo of your idea first.

faultless.git@gmail.com
Registered as
Frontendienst · KvK 42120935
Address
Geurdeland 17 g, 6673 DR Andelst, Netherlands