For six years I've built software end to end, from the Postgres schema to the screen a customer taps, and stayed for the part after launch. Most of it is multi-tenant SaaS for Turkish businesses, where KVKK, consent records and local payment providers are part of the spec, not a cleanup task. In between, I write small tools for the problems I keep running into along the way.
mustafabaser.net · Portfolio · Blog · LinkedIn · X · Medium · info@mustafabaser.net
Each of these started as a question I got tired of answering by hand.
agentcheckup: Claude Code, Codex, Cursor and Copilot read different files from the same repository, and rarely say what they skipped. This shows what each one actually loads, and flags the MCP servers, hooks and permissions a pull request adds.npx agentcheckup · npm · GitHub Action
Field Guide: an architecture map that can't go stale, because it is derived from the import graph and commit history every time you ask. What depends on what, what changes together, and who knows the part you are about to touch.
VS Code extension and MCP server · Marketplace
Port Authority: something is already listening on port 3000. This tells you what it is, which project started it, and stops it safely.
VS Code extension · Marketplace
claude-commit-skill: /commit for Claude Code that follows your repository's convention and refuses the commits you can't take back, like one made mid-merge or one carrying a secret.npx claude-commit-skill · npm
HeyPilot: multi-tenant voice AI for customer service, outreach and appointments, with a no-code assistant builder, white-label widgets, a KVKK encryption layer and IYS-ready consent capture. Live at heypilot.com.tr.
Next.js 15 · Turborepo · Prisma · PostgreSQL · Redis · VAPI · OpenAI · Claude · ElevenLabs · Deepgram
LayeredMindAI: multi-provider AI chat with Turkish market data and multi-organization RBAC, plus a Flutter app for iOS and Android.
React · Node.js · Express · MongoDB · Flutter · Riverpod
Broker Desk: RSS in, publishable posts out. Financial news is enriched with LLMs, given branded visuals and sent to email and X from one analyst dashboard.
Next.js 16 · React 19 · TypeScript · Tailwind CSS 4
StitchAI: takes a frame from an industrial camera, segments it with Segment Anything, generates a toolpath and drives a CNC machine over Modbus.
Python · PyQt6 · OpenCV · PyTorch
More work
- Relio: clipboard manager for macOS that encrypts everything on-device and expires API keys and card numbers on its own. Swift 6, SwiftUI.
- Novadesk CRM: back office for virtual office and coworking providers. Contracts, billing, room bookings, KVKK-aware data handling.
- KYC and document OCR: merchant onboarding for a Turkish payment processor. Identity OCR, tax document extraction, IBAN validation, a review queue.
- EpicTales: Android app that writes age-appropriate children's stories with Gemini and reads them aloud in nine languages. On Google Play.
- Currency Converter: live exchange rates in Kotlin and Jetpack Compose. On Google Play.
The full list, with stacks and screenshots, is in the portfolio.
- Derive, don't document. An architecture diagram starts going stale the day it is drawn. The import graph and the commit history can't.
- Identify before you act. Killing the process is the easy part. The work is finding out whose process it is.
- Coverage isn't correctness. Coverage tells you a line ran, not that it was right. A test earns its place by what it tells you when it breaks.
- Make it reversible. Every migration ships with its rollback, and good tools refuse what can't be undone.
Mostly in Turkish, on mustafabaser.net/blog.
- Testler Yeşil ama Prod Yanıyor: Test Kalitesi Rehberi Jul 2026
- Building an Intelligent Commit Skill for Claude Code Feb 2026
- 4Ls Retrospective: Sprint Retrospektiflerini Daha Değerli Hale Getirmek Jan 2026
- Port Zaten Kullanımda Hatası: Portu Bulma ve Güvenle Kapatma Sep 2025
- Docker Temelleri: Temelden Gerçek Proje Kullanımına Mar 2025
Day to day: TypeScript, Next.js, Node.js, PostgreSQL and Supabase, Docker.
Everything else I've shipped with
| Area | Tools |
|---|---|
| Languages | TypeScript, JavaScript, Java, Kotlin, Python, C#, Go, Swift, Dart |
| Backend | NestJS, Express, Fastify, Spring Boot, ASP.NET Core, Django, Flask, REST, GraphQL, OpenAPI |
| Frontend | React, Next.js, Vue.js, Tailwind CSS, Radix UI, TanStack Query |
| Mobile and desktop | Android (Kotlin, Jetpack Compose), Flutter, SwiftUI, PyQt |
| Data | PostgreSQL, Supabase, MySQL, SQL Server, Oracle, MongoDB, Redis, Prisma, TypeORM, Hibernate/JPA |
| AI | LLM integration across providers, MCP servers, voice agents, Gemini, OpenCV, Segment Anything |
| Infrastructure | Docker, Kubernetes, Terraform, GitHub Actions, Jenkins, AWS, GCP, Vercel, Nginx, PM2, Linux |
| Testing | Jest, Playwright, JUnit, Mockito, Pytest |
| Integrations | Stripe, Iyzico, Salesforce, n8n |
| Architecture | Domain-Driven Design, Clean Architecture, modular monoliths, microservices, multi-tenant SaaS |
Open to freelance and contract work, from a first schema to a production launch. Write to info@mustafabaser.net or find me on LinkedIn.
If one of these tools saved you some time, you can buy me a coffee.




