Projects
Things I build outside work, from backend services to small tools that solve my own problems.
Personal finance tracker, Apr 2026 – Present
Imports bank statements (PDF and Excel), categorizes transactions automatically and shows monthly income and expense summaries per user. Supports ING credit card and account statements, A101 Hadi and Garanti BBVA exports.
Built with a strategy pattern for adding new banks, duplicate protection on import, token-based authentication, detection of transfers between the user’s own accounts, and a Vue dashboard with cash-flow and category breakdowns.
Stack: Java 21, Spring Boot, Spring Data JPA, PostgreSQL, PDFBox, Apache POI, Vue 3, Vite
Source code
Reliability guard for AI coding agents, Sep 2026
A global OpenCode plugin that stops coding agents from jumping from the first plausible search result straight into code changes. Agents can investigate, reproduce and run diagnostics freely, but product edits stay locked until an analysis step is recorded, and every change ends with a diff and targeted validation.
Currently at v4, with separate modes for bug fixes and for batch generation of tests and scripts.
Stack: TypeScript, OpenCode, PowerShell, AI tooling
Source code
Desktop tool for Android storage cleanup, Sep 2026
Frees up storage on Redmi and other Android phones by clearing the temporary files folder over ADB, without root access. Detects connected devices automatically, shows the folder size before cleaning, asks for confirmation and logs every operation. Turkish and English interface.
Available as a beta release. It is still being tested, so try it on your own device before relying on it.
Stack: Python, Tkinter, ADB
Source code
Tap-to-copy personal info on your phone, 2026
Keeps the details you keep typing into forms, such as addresses, IBANs, ID numbers and emergency contacts, in one list. Tap a line to copy it, hold it to edit. Comes with ready-made field groups, hides sensitive values behind dots while still copying them, and backs up to a JSON file you can restore on any device. Turkish and English interface.
Installable on Android and iOS and works offline. By default the data stays in the browser on the device, with no account needed. Optional sync with Google sign-in keeps the list the same on phone and computer: each entry is encrypted in the browser with AES-256-GCM before upload, so the server only stores ciphertext. No dependencies and no build step.
Stack: PWA, JavaScript, Firebase, Web Crypto
Source codeOpen app
Home workout timer for the exercise bike, 2026
Interval timer for a home exercise bike, built to run alongside music from another app. Pick a 30, 40, 45, 50 or 60 minute flow: an easy warm-up, steady moderate blocks, then one-minute moderate and hard intervals, and an easy cool-down. The screen changes colour with each level, and short beeps count down every change without pausing the music. Optional Turkish voice cues, vibration, and the screen stays on for the whole session.
Also includes fat-burning circuits using bodyweight and a single 7.5 kg dumbbell, with how-to notes for 24 exercises, a weekly summary, workout history and calorie estimates. Installable on Android and iOS and works offline. No dependencies and no build step.
Stack: PWA, JavaScript, Web Audio, Wake Lock
Source codeOpen app
Serverless personal finance app for your phone, 2026
The phone version of aybashim, with no server, account or backend. Bank statements are read on the device, transactions are categorized automatically and the app shows monthly income and expense summaries, a spending breakdown and six months of cash flow. Reads ING account and credit card statements, A101 Hadi (PDF) and Garanti BBVA (XLS) exports, with the bank detected automatically.
The bank parsers and category rules are ports of the web version, refined with real statements. Duplicate protection on import, separate handling of transfers between your own accounts, refunds netted against the matching category, and JSON backup and restore. Data stays in the browser on the device (IndexedDB). Installable on Android and iOS and works offline.
Stack: PWA, Vue 3, Vite, IndexedDB, pdf.js
Source codeOpen app