Matchmaking Platform
Baxtiyor Oila
A matchmaking service for the Uzbek community in Germany, delivered as user-facing and admin Telegram Mini Apps with a profile-matching algorithm. Built with React, a Go API backend, and a Python notification bot.

Overview
Baxtiyor Oila is a matchmaking platform built for the Uzbek diaspora in Germany — a community with limited ways to meet compatible partners within their culture. The whole service lives inside Telegram as a Mini App, so users don't need to download anything. A matching algorithm surfaces compatible profiles, and a Python bot keeps users notified of new matches.
What I built
Built the user-facing Telegram Mini App in React — profile creation, browsing matches, and messaging — plus a separate admin app for moderation.
Developed the Go REST API backend — user profiles, matching logic, and all data persistence.
Built the matching algorithm and the Python notification bot that tells users when a new compatible profile appears.
Architecture
Two React Telegram Mini Apps — one for users, one for admins — talk to a Go REST API that handles profiles and matching logic. A separate Python Telegram bot handles asynchronous notifications, so users get a message the moment a new match appears without polling.
Under the hood
Telegram Mini App initData verification for both user and admin apps — each request is verified against Telegram's cryptographic signature spec, so only legitimate Telegram users can authenticate.
Profile-matching algorithm that evaluates age range, shared interests, and location to surface ranked candidate profiles — giving users the most compatible matches first.
Python notification bot that pushes real-time match alerts via Telegram Bot API — decoupled from the main API so match delivery doesn't depend on the user opening the app.
What I learned
Delivering inside Telegram eliminates the hardest part of any new consumer app — getting users to install something. Distribution was built-in from day one.
Separating the notification layer (Python bot) from the API was the right call — it meant we could deploy, update, or restart either service without affecting the other.
Built with
Frontend
- React
- TypeScript
- @telegram-apps/sdk
Backend
- Go
- REST API
Bot & Notifications
- Python
- Telegram Bot API