Skip to content
md ~/projects

Project Archive

Every project I've built, with the year, the stack and the links.

YearProject
2026NabızLive

Cookie-free, privacy-friendly web analytics: counts visitors without identifying them, needs no cookie banner and stores no personal data. A live visitor strip, sources, goals, funnels and team sharing; use it for free or install it on your own server as a single Go program.

Go · SQLite · TypeScript · Vite · Argon2id · Caddy · systemd · Oracle Cloud

2026ZarfLiveDownload

End-to-end encrypted file sharing: the file is encrypted on the device, the key stays in the part of the link after #, and the server can't see the contents. Send a link, request files from someone, or send right away with a short code, in the browser or from the command line.

Go · TypeScript · Vite · Web Crypto API · WebRTC · WebSocket · CPace · SQLite · Caddy · Oracle Cloud

2026Real-Time LeaderboardLocal

A real-time leaderboard for games. Scores are kept in a Redis sorted set, and each new score reaches every connected player at once through Socket.io. It runs locally with Docker Compose.

Node.js · Express · Socket.io · Redis · PostgreSQL · Prisma · React · Docker Compose

2026SeansLive

A booking site for a small cinema: a live seat map, Stripe payments, signed QR tickets by e-mail, a phone-camera ticket check at the door, and film, showtime and sales management.

React · Express · PostgreSQL · Prisma · Stripe · Tailwind CSS · Vercel

2026KVKK Document AssistantLive

A web app that finds Turkish personal data (names, ID numbers, IBANs, phone numbers…), replaces it with pseudonyms and lets you ask an AI model about the document without sending that data. Names are found by a Turkish BERT model I trained.

Python · FastAPI · PyTorch · ONNX Runtime · Hugging Face Transformers · RAG · Groq · Gemini · Docker · Render

2026Data Visualization SystemDownload

A desktop app that detects column types in a CSV file or a pasted table and builds a dashboard of charts with grouping, aggregation and filters. It ships with ready-made dashboards for three real open datasets (Our World in Data, NASA, Istanbul Municipality).

Java · JavaFX · AtlantaFX · Gson · JUnit · jpackage · Inno Setup

2026Airline Reservation SystemDownload

A desktop flight booking app with flight search, a visual seat map, online check-in and a staff panel. Passengers manage their tickets with a booking code and last name; staff manage flights and passenger lists.

Java · JavaFX · AtlantaFX · SQLite · Bouncy Castle (Argon2id) · Apache PDFBox · JUnit · jpackage · Inno Setup

2026Bank ManagerDownload

A two-sided desktop banking app that runs locally, with a branch panel and a customer panel: atomic IBAN transfers, currency exchange, time deposits, spending insights and PDF receipts.

Java · JavaFX · AtlantaFX · SQLite · Bouncy Castle (Argon2id) · Apache PDFBox · JUnit · jpackage · Inno Setup

2026Hospital ManagerDownload

A role-based desktop management app for clinics and small hospitals: conflict-free appointments, weekly doctor calendars, examinations, prescription PDFs and reports.

C++ · Qt · SQLite · libsodium (Argon2id) · CMake · Inno Setup

2026Password VaultDownload

A desktop password manager built around a single encrypted vault file unlocked with one master password. Includes a password health report, breach check, 2FA codes, a password generator and import from browsers.

C++ · Qt · libsodium · CMake · Inno Setup

2026Car Rental SystemDownload

A desktop management app for a small car rental office. Fleet, customers, double-booking-free reservations, pick-up and return, maintenance tracking, PDF contracts and revenue reports in one app, with picture cards filtered by budget and a clickable dashboard.

C++ · Qt 6 · SQLite · CMake · Inno Setup

2026YouTube DownloaderDownload

A desktop app built with Python and Tkinter that downloads YouTube videos (MP4), audio (MP3/M4A) and playlists with yt-dlp. It has a queue with thumbnails, quality choice, progress with speed and time left, stopping, automatic link pasting from the clipboard, light/dark themes and a Turkish/English interface. It keeps working after release by updating yt-dlp and the JavaScript runtime YouTube requires from PyPI, verified with SHA-256. Verified by 33 unit tests and shipped as a Windows installer with FFmpeg included.

Python · Tkinter · yt-dlp · Deno · FFmpeg · Pillow · unittest · PyInstaller · Inno Setup

2026Audio Video ConverterDownload

A desktop audio and video converter built with Python and Tkinter that runs FFmpeg in the background. Files are queued with drag and drop and converted to MP4, MKV, WebM, MOV, MP3, M4A, WAV, FLAC or OGG, or the soundtrack is extracted from a video. Quality and resolution can be chosen, and compatible files convert in seconds with a fast mode that skips re-encoding. It shows real progress and time left, can be stopped, and has light/dark themes and a Turkish/English interface. Verified by 38+ tests and shipped as a Windows installer with FFmpeg included.

Python · Tkinter · FFmpeg · tkinterdnd2 · unittest · PyInstaller · Inno Setup

2026Unit ConverterDownload

A desktop app built with Python and Tkinter that converts 58 units in 9 categories, including currency, with exact results. It covers Turkish kitchen measures (su bardağı, yemek kaşığı), the dönüm and the GB vs GiB difference. 166 currencies are converted with daily rates, and with the last saved rates when offline. It offers two-way live conversion, an all-units table, history, light/dark themes and a Turkish/English interface. Verified by 38 unit tests and distributed as a Windows installer built with PyInstaller and Inno Setup.

Python · Tkinter · ExchangeRate-API · unittest · PyInstaller · Inno Setup

2026Weather AppLive

Current weather, a 24-hour chart and a 5-day forecast, with a search that understands Turkish spelling, optional location and world capitals. No API key and no server.

JavaScript · HTML · CSS · SVG · Open-Meteo · OpenStreetMap · node:test · Vercel

2026Quiz AppLive

Questions by category and difficulty (easy, medium, hard), playing with friends at the same time with a room code, AI questions checked by a second model and a daily question that is the same for everyone. Answers stay on the server, so it cannot be cheated from the browser.

JavaScript · HTML · CSS · Vercel Functions · Node.js · Server-Sent Events · Upstash Redis · Gemini · Groq · Caddy · Oracle Cloud · node:test

2026HangmanLive

A hangman game that runs in the browser, with about 1,000 Turkish and 1,000 English words in 21 narrow categories across 7 groups (birds, capital cities, kitchen items, chemical elements…), so the player always knows what they are guessing. Every word starts with some letters revealed. Play with the on-screen keyboard or your own, with correct handling of Turkish letters (ı/i, ç, ğ, ö, ş, ü). It has a hint button, win streaks, a dark and light theme and screen reader support.

JavaScript · HTML · CSS · Fetch API · JSON · Node.js Test Runner · Vercel

2026Tic-Tac-ToeLive

A tic-tac-toe game that runs in the browser. Besides the classic 3×3 game, it has 4×4 and 5×5 boards where every three in a row scores a point until the board is full. Play a friend on the same device or the computer on easy, medium or hard, which never loses on 3×3. Turkish and English, dark and light theme, full keyboard support.

JavaScript · HTML · CSS · Minimax (alfa-beta) · Node.js Test Runner · Vercel

2026Email ClientDownload

A desktop email client built with Java and JavaFX. It reads mail over IMAP and sends it over SMTP with Jakarta Mail; replying, forwarding, deleting and marking as read happen on the server, so everything stays in sync with the Gmail web and mobile apps. HTML emails are shown as plain text for safety, the password is encrypted with Windows DPAPI, and connections use TLS with certificate checks. It has a modern AtlantaFX interface, tests against an in-memory GreenMail server and a Windows installer that bundles Java.

Java · JavaFX · Jakarta Mail · IMAP · SMTP · AtlantaFX · JUnit · GreenMail · jpackage

2026Dating AppDownload

A desktop dating app built with C++ and Qt 6. It ranks profiles by a compatibility score based on shared interests, age and city, with like/pass matching. Each of the 100 fictional characters has its own personality and replies to chats in character using AI: Ollama running locally by default, or the user's own Claude API key. Passwords are hashed with Argon2id, the API key is encrypted with Windows DPAPI and data is stored in SQLite. Includes unit tests and a Windows installer.

C++ · Qt 6 · SQLite · libsodium · Ollama · Claude API · CMake · Inno Setup

2026Advanced CalculatorDownload

A standard and scientific desktop calculator inspired by the Windows Calculator, built with Python and Tkinter. Expressions are evaluated by a hand-written recursive descent parser with correct operator precedence, without using eval(). Supports trigonometric functions (degrees/radians), logarithms, factorial, percentages and implicit multiplication. Includes a history panel, memory keys, light/dark themes and Windows-compatible keyboard shortcuts. Covered by 17 unit tests and distributed as a Windows installer built with PyInstaller and Inno Setup.

Python · Tkinter · unittest · PyInstaller · Inno Setup

2026Ad Conversion PredictionLive

A web app that predicts how likely someone who sees an ad is to buy, from their age and salary. The decision map of five classifiers is drawn in halftone dots, and precision, recall and the ROC curve update as you move the threshold.

Python · scikit-learn · pandas · NumPy · JavaScript · SVG · pytest · Vercel

2026Sheep & Wolf: Logic PuzzleDownload

A logic puzzle played with sheep and wolves: every row and column needs 3 sheep and 3 wolves, and the same animal can never appear three times in a row. It has 300 levels across 6 difficulties, locked progression, hints and stars, and runs on the phone with no account and no internet.

React Native · Expo · TypeScript · Zustand · Reanimated · react-native-svg · EAS Build

2026Brain Weight PredictionLive

A web calculator that predicts adult brain weight from head size with a 95% prediction interval. Five regression models were compared with repeated cross-validation; the chosen model runs in the browser with no server.

Python · scikit-learn · pandas · NumPy · SciPy · JavaScript · SVG · pytest · Vercel

2026AI Integrated To-Do AppLocal

A desktop task manager built with Electron, React and Firebase. Users type a goal and Gemini turns it into a 5-step action plan, returned as structured JSON through a response schema. Tasks sync in real time with Firestore and send desktop notifications before deadlines.

TypeScript · Electron · React · Tailwind CSS · Zustand · Firebase · Gemini API

2026Cipher - Final ProjectClosed source

A peer-to-peer (P2P) mobile messaging app with no central server, built with a teammate. We compiled our Go communication core for Android and iOS with Gomobile and connected it to a Flutter app. Messages are encrypted with AES-256-GCM and sent directly over WebRTC, falling back to UDP; if they can't be delivered, the encrypted packet is left in a mailbox on Firestore. It supports one-to-one and group chats, file sharing, delivered/read receipts and online status.

Go · Flutter · WebRTC · Gomobile · Firebase · AES-256-GCM

2025E-commerce Sales AnalysisLocal

Funnel analysis, RFM customer segmentation and trend analysis on an e-commerce store's sales and visit data. The analysis code lives in Python modules separate from the notebooks; the data is a synthetic dataset generated by scripts, and the results become interactive Plotly charts.

Python · Pandas · NumPy · Plotly · Jupyter

2025Spy GameLive

A real-time spy party game for 3 to 12 players, each on their own phone. Play together or apart: apart, questions are typed in turn and the room gets a chat. Join with a room code or a QR code, secret cards that show only while held, a choosable list of 102 places, live voting, optional accounts and a weekly leaderboard.

C# · ASP.NET Core MVC · SignalR · Redis · PostgreSQL · Entity Framework Core · Docker

2025Gym and E-commerce ApplicationLocal

A gym website with an online store, built with ASP.NET Core MVC in a layered architecture. Members can book sessions with trainers, and appointment updates appear in real time with SignalR. Data access uses Entity Framework Core.

C# · ASP.NET Core MVC · Entity Framework Core · SQL Server · SignalR · MediatR · AutoMapper

2025Crypto ToolkitLive

A cryptography toolkit that runs in the browser: password-based AES-GCM encryption, RSA hybrid encryption, ECDSA signatures and SHA-2/HMAC. Data never leaves the device.

C# · ASP.NET Core MVC · JavaScript · Web Crypto API · xUnit · Docker · Render

2024Sahaf: Online BookshopLive

An e-commerce site built with ASP.NET Core MVC that sells public-domain classics in its own cover series. It has a searchable catalogue, a cart, Stripe checkout, bulk orders with net terms for schools, order tracking and a full admin panel, in Turkish and English with light and dark themes.

C# · ASP.NET Core MVC · Entity Framework Core · PostgreSQL · ASP.NET Core Identity · Stripe · Resend · Docker · Render · xUnit