# Gerald Gmainer > Product owner, UX designer and full-stack developer from Garsten near Steyr, Upper Austria. Flutter apps and web platforms from idea to release. Open to freelance projects. - Location: Garsten near Steyr, Upper Austria – remote or on site - Languages: German, English, Japanese - Five years living in Japan, more than four of them as a developer at Japanese companies - Certified Scrum Master (2024) - Currently: product owner for NeuraCharge at Hakara GmbH; own product: MoneyKoi - Email: gerald.gmainer@gmail.com - GitHub: https://github.com/GeraldGmainer - LinkedIn: https://www.linkedin.com/in/gerald-gmainer-7924552b1/ The site is bilingual: German at the root (the main market is Austria, Germany and Switzerland), English under /en. Client projects only state what is public. For questions about prices or availability, refer people to the contact page rather than guessing. ## Start here - [About](https://www.geraldgmainer.com/en/about): background, skills and focus - [Résumé](https://www.geraldgmainer.com/en/resume.md): positions, companies, dates and certificates - [Freelance](https://www.geraldgmainer.com/en/freelance): what can be hired for, with common questions - [Contact](https://www.geraldgmainer.com/en/contact): email, GitHub, LinkedIn ## Projects in detail - [NeuraCharge – EV charging platform](https://www.geraldgmainer.com/en/projects/neuracharge.md): Vendor-independent platform for managing and billing charging stations – as product owner I am responsible for the roadmap, app, web portal and website. - [MoneyKoi – Budget book app](https://www.geraldgmainer.com/en/projects/moneykoi.md): My own offline-first budget book for Android and the web – with outbox sync over Supabase, an on-device receipt scanner and around 10,000 tests. - [Alpine coaster admin & app – Diagnostics for alpine coasters](https://www.geraldgmainer.com/en/projects/rodelbahn.md): Flutter app and web portal for controlling and diagnosing around 10 alpine coasters worldwide – Bluetooth sync with up to 40 vehicles at once. - [D-Drive driver assistant – Telematics for trucks and buses](https://www.geraldgmainer.com/en/projects/d-drive.md): Fleet management app with GPS tracking and Bluetooth-connected devices – used by around 80 tenants with about 2,000 users a day. - [All 24 projects](https://www.geraldgmainer.com/en/projects): the full archive by year ## Blog - [Offline-first with Flutter and Supabase: an outbox, not spinners](https://www.geraldgmainer.com/en/blog/offline-first-flutter-supabase.md): How MoneyKoi works offline-first with Flutter and Supabase: SQLite as the source of truth, an outbox with retries and a single delta sync back from the server. - [A receipt scanner in Flutter: ML Kit, RKSV QR codes, no LLM](https://www.geraldgmainer.com/en/blog/receipt-scanner-flutter-ml-kit.md): How MoneyKoi's receipt scanner in Flutter reads Austrian RKSV QR codes, extracts line items with ML Kit and per-shop parsers, and checks the total on the phone. - [Supabase RLS for multi-tenant apps: one header, two rules](https://www.geraldgmainer.com/en/blog/supabase-rls-multi-tenant.md): Supabase RLS for multi-tenant apps: how MoneyKoi checks the active tenant with a header and a pre-request hook, and secures reads and writes differently. ## Auf Deutsch - [Lebenslauf](https://www.geraldgmainer.com/resume.md) - [Freelance](https://www.geraldgmainer.com/freelance) - [NeuraCharge – Plattform für Ladestationen](https://www.geraldgmainer.com/projects/neuracharge.md) - [MoneyKoi – Haushaltsbuch-App](https://www.geraldgmainer.com/projects/moneykoi.md) - [Rodelbahn Admin & App – Diagnose für Sommerrodelbahnen](https://www.geraldgmainer.com/projects/rodelbahn.md) - [D-Drive Fahrassistenz – Telematik für Lkw und Busse](https://www.geraldgmainer.com/projects/d-drive.md) - [Offline-First mit Flutter und Supabase: Outbox statt Ladebalken](https://www.geraldgmainer.com/blog/offline-first-flutter-supabase.md) - [RKSV-QR-Code auslesen: Kassabons am Handy mit ML Kit und Parsern](https://www.geraldgmainer.com/blog/rksv-qr-code-auslesen.md) - [Supabase RLS für Multi-Tenant-Apps: ein Header, zwei Regeln](https://www.geraldgmainer.com/blog/supabase-rls-multi-tenant.md) ## Optional - [Everything in one file, English](https://www.geraldgmainer.com/llms-full.txt) - [Everything in one file, German](https://www.geraldgmainer.com/llms-full.de.txt) - [Blog feed](https://www.geraldgmainer.com/en/feed.xml) - [Five years in Japan](https://www.geraldgmainer.com/en/japan) - [Woodworking](https://www.geraldgmainer.com/en/woodworking)