Skip to content

Portfolio and contact

Name

Isroil Baxtiyorov

I build bots and automation — and I run the infrastructure they live on.

Not ship-a-bot-and-disappear. I am the technical administrator of two live communities: I write the features, keep them running, and answer for them when load arrives.

More about me
Position
Bot and automation developer · technical administrator
Platforms
Discord · Telegram · VK · web automation
City
Tashkent, Uzbekistan
Education
IT Park University (ITPU), Tashkent — incoming first year, Fall 2026
Languages
Uzbek, Russian — native · English IELTS 6.5 (2024)
Tooling
Python (asyncio) · discord.py, aiogram 3, FastAPI · MongoDB, SQLite + FTS5, IndexedDB · Playwright · TypeScript, React, Next.js · LLM integrations
Infrastructure
VDS · Docker · systemd · GitHub Actions · scheduled nightly jobs · Google Sheets API

I started on ReallyWorld in December 2024. The community was already past 100,000 people and the staff review system was broken. Working out somebody else's running project under load taught me more than any exercise would have.

Bots for Discord, Telegram and VK, plus automation scripts for websites. In the register below, the community projects have confirmed figures behind them and the personal ones do not — those state what was built rather than how many people saw it.

Services

Things I have already done on live projects — not a wish list.

  • Community bots

    Discord, Telegram, VK. Tickets, moderation, roles, and internal systems built to the project.

  • Automation and integrations

    Scheduled exports into Google Sheets, AI-handled tickets, automation scripts for websites.

  • Technical administration

    Looking after what already runs: being on call, fixing what breaks, changing it as the community grows.

Price and timeline depend on the job — and both are stated before work starts. Describe yours on Telegram and you will have an estimate and a plan the same day.

Project register

№ProjectSubjectScale
01ReallyWorld.ruTechnical administratorOpen recordDiscord bot for a Minecraft project’s communityPython 3.10+, discord.py, MongoDB · motor100,000+Discord members10,000+online daily~200tickets per day
02ReallyVisuals.meTechnical administratorOpen recordDiscord bot for a Minecraft client’s communityPython 3.10+, discord.py, MongoDB · motor2,300members800+online daily
Index of worksVerified from the repositories: dates are the first and last commit, and the capabilities are read from the code. None of these has a measured audience.
03Telegram Companion BotDeveloperOpen recordPersonal Telegram assistant with a web panelPython, aiogram 3, SQLiteNot measured
04Telegram LockOnline BotDeveloperOpen recordTelegram bot for intercom records and payments, RU/UZPython, aiogram, MongoDB · motorNot measured
05OLX Smart Deal FinderDeveloperOpen recordFinding worthwhile OLX.UZ listings, rankedPython, FastAPI, PlaywrightNot measured
06Telegram PC Control BotDeveloperOpen recordControlling a home PC from TelegramPython, python-telegram-bot 20.x, FlaskNot measured
07Personal Knowledge GardenDeveloperOpen recordLocal-first PWA for notes, tasks and habitsTypeScript, React 18, React Router 6Not measured

This table describes the case files — the Minecraft projects: the full set runs on ReallyWorld, and ReallyVisuals runs the same set without the clan system and without the AI assistant. The works in the index below are built differently, and each record states its own.

Get in touch

Telegram is the fastest route, and I answer within the day. Email is for formal correspondence and documents.

ducherness@gmail.com

Discord bot for a Minecraft project’s community

ReallyWorld.ru

Technical administrator · December 2024 — present

100,000+
Discord members
10,000+
online daily
~200
tickets per day

Exhibits

The AI staff member handling a ticket
The AI staff member handling a ticket
The nightly statistics export
The nightly statistics export
Server member count
Server member count

What it was before

The staff review system was broken and personal roles were issued by hand — with roughly 200 tickets a day, all of it landed on the administration team.

What was built

  • Staff performance review

    Rebuilt from scratch after the previous implementation failed, including moderator work quotas.

  • AI staff member in tickets

    Answers from a knowledge base, escalates to humans, and closes a ticket after inactivity. DeepSeek V4 Flash.

  • Personal roles

    Previously issued by hand. Now self-service: granting, in-place editing, and delegated rights.

  • Clan system

    Creation, membership, tasks, shop, wars, and progression.

  • Tickets

    Support, complaints, suggestions, clan applications, and donation roles.

  • Moderation

    Mutes, bans, kicks, and appeals.

  • Nightly export loops

    Statistics collected at 23:55 and online figures exported to Google Sheets at 23:57. No human in the loop.

Outcome

The senior administration team's workload dropped substantially: triage is automated, roles are issued without manual work, and the daily logs write themselves.

Stack

  • Python 3.10+
  • discord.py
  • MongoDB · motor
  • Google Sheets API · gspread
  • DeepSeek V4 Flash
  • mcstatus
  • aioschedule

Hosting

Project-provided VDS (Russia)

The AI staff member handling a ticket

Exhibit 1 of 3

The AI staff member handling a ticket

Discord bot for a Minecraft client’s community

ReallyVisuals.me

Technical administrator · June 2026 — present

2,300
members
800+
online daily

Exhibits

Server member count
Server member count

What it was before

The project and its community were built from nothing, and in game communities “write me in DMs” is a standard opening move for a scammer.

What was built

  • Scam-pattern detection

    Public messages are scanned for DM-solicitation patterns, and the warning goes to the recipient rather than only to staff — the person actually at risk is the one who hears about it.

  • Tickets

    Support, complaints, and suggestions with staff review.

  • Moderation

    Mutes, bans, kicks, and appeals.

  • Nightly export loops

    The same scheme as ReallyWorld: statistics and online figures go to Google Sheets on a schedule.

Outcome

Not filled in

Stack

  • Python 3.10+
  • discord.py
  • MongoDB · motor
  • Google Sheets API · gspread
  • mcstatus
  • aioschedule

Hosting

Project-provided VDS (Russia)

Server member count

Exhibit 1

Server member count

Personal Telegram assistant with a web panel

Telegram Companion Bot

Developer · February — July 2026

What was built

  • A schema that survives its own changes

    SQLite with its own column check: the database extends itself in place, and data already written stays where it is.

  • A control panel in the browser

    A separate web panel beside the bot, where the state updates itself without reloading the page.

  • Tests, actually present

    A test suite lives in the repository — not planned, but written and kept alongside the code.

  • One owner, not a public bot

    The bot answers a single owner by id — a privacy decision, not an unfinished feature.

Outcome

A personal assistant in daily use: the database extended itself in place through five versions without losing a single written note, and the tests live beside the code.

Stack

  • Python
  • aiogram 3
  • SQLite
  • aiohttp
  • httpx
  • DeepSeek
  • AI Horde

Hosting

Runs on his own machine

Telegram bot for intercom records and payments, RU/UZ

Telegram LockOnline Bot

Developer · July 2025

What was built

  • Deploys itself

    A push to the repository builds the image and rolls the bot out to fly.io with no manual step: the Docker image, the machine configuration and the workflow all live beside the code.

  • Adding an entrance, step by step

    A six-step dialogue — quarter, house, entrance, floors and apartment range — instead of one form that is easy to get wrong.

  • Reviewing requests

    Requests are approved or rejected by hand, and payment history is available as its own command.

  • Every button in two languages

    Russian and Uzbek are built into the buttons themselves rather than translated over the top — in Tashkent that is not optional.

Outcome

Deploys with one push: a fresh image is built and rolled out to fly.io with no manual step, and both language buttons work out of the box.

Stack

  • Python
  • aiogram
  • MongoDB · motor
  • Docker
  • fly.io
  • GitHub Actions

Hosting

fly.io, Hong Kong region

Finding worthwhile OLX.UZ listings, ranked

OLX Smart Deal Finder

Developer · June 2026

Exhibits

The query, and the sliders that say how much price matters against condition
The query, and the sliders that say how much price matters against condition
Listings with their value score and rank
Listings with their value score and rank
Price analytics: history, and how the result set is distributed
Price analytics: history, and how the result set is distributed

What was built

  • A browser only when there is no other way

    Plain requests first, with a headless browser started only when protection is detected — it costs far more, so it runs when it must rather than by default.

  • Ranked by price against quality

    Each listing's price is scored against the median of the result set, then defects found in the description are subtracted by severity — cosmetic through blocking. The total opens up line by line, so you can see what it is made of.

  • The search reports as it runs

    A long scrape streams its progress into the interface, instead of an empty screen with a spinner on it.

  • Three languages and a dark theme

    The interface is in Russian, Uzbek and English — the same three languages as this page.

  • A database you can swap

    A SQLite file by default, switched to Postgres by configuration — easy to start, and able to grow without a rewrite.

Outcome

Finds and ranks listings on its own scale: prices scored against the median, defects subtracted by weight, and the scrape's progress streamed into the interface.

Stack

  • Python
  • FastAPI
  • Playwright
  • BeautifulSoup
  • SQLAlchemy 2
  • Next.js · TypeScript
  • Tailwind · shadcn/ui
  • DeepSeek

Hosting

Runs locally

The query, and the sliders that say how much price matters against condition

Exhibit 1 of 3

The query, and the sliders that say how much price matters against condition

Controlling a home PC from Telegram

Telegram PC Control Bot

Developer · February — March 2026

What was built

  • Wake-on-LAN

    `/wake` sends the magic packet; `/wakewait` waits until the agent on the machine is actually online.

  • Sleep, hibernate, shut down

    Separate command paths for Windows and for Linux, rather than one written for a single system.

  • Host status

    `/status` and `/health` report whether the machine is reachable and what the agent says.

  • Two processes, not one

    The bot and the agent on the controlled machine are separate programs, so the bot stays reachable while the machine is off.

Outcome

Runs daily on the owner's machine: control commands flow through the two-process design, and the machine's state is visible without standing in front of it.

Stack

  • Python
  • python-telegram-bot 20.x
  • Flask
  • wakeonlan
  • httpx
  • psutil
  • Vosk
  • pycaw

Hosting

Agent on the controlled machine

Local-first PWA for notes, tasks and habits

Personal Knowledge Garden

Developer · June 2026

Exhibits

The day at a glance: activity, habits, how the garden is doing
The day at a glance: activity, habits, how the garden is doing
Quick capture — the screen a thought starts on
Quick capture — the screen a thought starts on
Garden Map: notes as nodes, sized by maturity
Garden Map: notes as nodes, sized by maturity
The journal, searchable
The journal, searchable

What was built

  • The data lives on the device

    IndexedDB via Dexie: five schema versions, three of them migrating notes already saved — the structure changed underneath live data and the data survived it.

  • Installs as an app

    A PWA with auto-update that works offline and accepts links shared from other apps.

  • Voice capture

    Speech transcribed on the device itself through the Web Speech API, with no audio leaving it.

  • A graph of links

    Notes mature through stages and link to one another; the links are visible on their own map.

  • Sync across devices

    Supabase with magic-link sign-in — no password, because there is none to lose.

Outcome

A living notebook on every device the owner owns: five schema changes survived by the data already written, sign-in by a link from email, and no audio ever leaving the device.

Stack

  • TypeScript
  • React 18
  • React Router 6
  • Dexie 4 · IndexedDB
  • Supabase
  • Vite 5
  • Tailwind CSS 3
  • vite-plugin-pwa

Hosting

Netlify — per the repository configuration

The day at a glance: activity, habits, how the garden is doing

Exhibit 1 of 4

The day at a glance: activity, habits, how the garden is doing