A Telegram bot
The easiest possible way to give yourself a mobile interface.
Build time ~2 hrs
A Telegram bot is a shortcut to a mobile app: notifications, buttons, text input, file sending — with no app store, no signing, and no client to build.
1. It's just HTTP
You send messages by calling an API. You receive them either by polling, or by Telegram POSTing to your webhook. Polling is simplest to start and needs no public URL, which makes local development easy.
Build a Telegram bot that <does what>. - Token from an environment variable, obtained from BotFather. - Start with long polling, and structure it so switching to webhooks later is a small change. - Commands: /start with a real explanation of what this does, plus <your commands>. - Restrict it to my own user ID — I don't want strangers using it. Show me how to find that ID. - Handle: unknown commands, messages sent while busy, and the API being unreachable. Log every incoming message with the sender's ID.
2. Lock it to you
The default for a personal bot. Anyone who finds the username can message it, and if it does anything meaningful — runs commands, spends money, returns your data — that's a problem. Check the sender's ID against an allowlist on every single message.
3. Use it as your notification channel
This is the underrated part. Any script you write can now message your phone: the backup finished, the site went down, the price dropped, the scraper found something. One HTTP call, no push infrastructure, no app.
Inline keyboards give you buttons, so you can approve or reject things from your phone without building anything resembling an interface.
4. Watch the edges
Messages are capped at 4096 characters — split long output or send a file. Markdown formatting fails on unescaped special characters, which is a surprisingly common crash. And a webhook must respond fast: acknowledge, then work.
Start with a bot that just forwards you your own logs. It's twenty lines, it's immediately useful, and it teaches the whole API.