Projects

Data and AI

  • MIHENK-ITS

    MİHENK is an AI layer that turns a social media feed into short, balanced and verifiable summaries. It is a team entry in the NSosyal İnovasyon Yarışması 2026 (NSosyal Innovation Competition).

    • Leaves the order of the feed untouched and adds a reading layer on top of the chronological feed.
    • Builds each summary from the most representative post of every framing rather than the most engaged posts, and shows the mix of framings as a balance score.
    • Checks claims against open web sources and gives no verdict when it cannot find enough sources.
    • Runs summarisation and clustering locally, and verification through a remote model that can be Claude, OpenAI or Gemini.
    • Next.js
    • React
    • TypeScript
    • Tailwind CSS
    • FastAPI
    • Python

    artificial intelligence, natural language processing, competition

  • GeoEconoViz

    GeoEconoViz is an interactive atlas that shows World Bank development indicators on a 3D globe. It runs in the browser with no server, database or API key.

    • Covers nine indicators from 1990 to today with a year slider; the colours and the country ranking follow the selected year.
    • Compares two countries on a shared axis, and every view can be shared through its own link.
    • Reads data straight from the World Bank API and caches it in the browser with IndexedDB.
    • Can be used with the keyboard and respects the reduced motion setting.
    • JavaScript
    • CesiumJS
    • IndexedDB
    • World Bank API

    web, data visualization

  • crypto-sentiment-tracker

    Crypto Sentiment Tracker is a web and mobile platform that scores cryptocurrency news with the FinBERT language model, shows the scores next to live prices and sends risk alerts.

    • Collects prices from Binance and news from RSS feeds and Reddit; FinBERT turns each news item into a sentiment score between −1 and +1.
    • Alerts set by the user are delivered by email and by mobile push notification.
    • The FastAPI backend uses JWT authentication and per-endpoint rate limits, and is covered by pytest tests.
    • The backend, database and web interface start with a single Docker Compose command.
    • Python
    • FastAPI
    • PostgreSQL
    • FinBERT
    • Celery
    • Redis
    • Next.js
    • Flutter
    • Docker

    natural language processing, sentiment analysis

  • Twitter-Sentiment-Analysis

    Twitter-Sentiment-Analysis is a sentiment model that classifies English tweets about video games as positive or negative.

    • Cleans the text with regular expressions, turns it into vectors with TF-IDF and classifies it with logistic regression.
    • Removes the neutral and irrelevant classes, which carry no sentiment, before training.
    • Reaches 92% accuracy on a separate validation file that is not used in training.According to the notebook in the repository
    • Python
    • pandas
    • scikit-learn
    • Jupyter

    natural language processing, sentiment analysis

  • Kalp-Hastaligi-Tahmini

    Kalp-Hastaligi-Tahmini is a classification model that predicts heart disease from medical data such as age, cholesterol and blood pressure.

    • Works with the Cleveland subset, the most complete part of a dataset collected at four medical centres.
    • Improves a logistic regression model with feature scaling and compares it with a random forest.
    • Reaches over 88% accuracy on the test set.According to the notebook in the repository
    • Python
    • pandas
    • scikit-learn
    • Google Colab

    machine learning, classification

  • netflix-streamlit-dashboard

    netflix-streamlit-dashboard is a multi-page interactive dashboard, built with Streamlit and Plotly, for exploring the Netflix content dataset.

    • The home page gives an unfiltered overview, and the yearly and geographic pages go into detail with interactive filters.
    • Shows hierarchical data as a treemap.
    • Data loading and filtering live in one shared module.
    • Python
    • Streamlit
    • Plotly
    • pandas

    data visualization, web

Web and software development

  • Local-Password-Vault

    Local Password Vault is an offline password manager that encrypts passwords with AES-GCM and keeps them only on the user's computer.

    • Derives a key-encryption key from the master password with Scrypt; a separate data key, protected by it, encrypts the database.
    • Backups are encrypted too, and a copied password is cleared from the clipboard after 15 seconds.
    • The interface is built with CustomTkinter and can be packaged as a single-file Windows app with PyInstaller.
    • Python
    • CustomTkinter
    • cryptography
    • SQLite

    security, desktop

  • gunluk-app

    Günlük is a serverless personal diary that encrypts entries in the browser with AES-256-GCM and stores them there, with no account needed.

    • The encryption key is derived from the password with PBKDF2 and kept only in memory.
    • Offers rich text, a calendar, full-text search and encrypted file attachments.
    • Stored content is sanitised with DOMPurify on write and on read, and a strict Content Security Policy blocks inline scripts.
    • React
    • Web Crypto API
    • IndexedDB
    • DOMPurify

    web, security

  • LuckDraw

    LuckDraw is a web app that picks random winners from a list of participants, either with a spinning wheel or in a raffle with several winners.

    • Participants can be added by hand or loaded from a .txt file.
    • The number of winners can be set, and the result is announced with an animation.
    • Works on desktop, tablet and phone.
    • React
    • React Router
    • react-custom-roulette
    • CSS

    web

All repositories on GitHub