← Back to Blog
·7 min read·

Example: a Ten-Card Kanban Mini App for a Team That Already Lives in a Group

Not Jira in a webview. A small board opened from a work group: three columns, haptic on move, a bot line when a card hits done. Why `chat_instance` is the board, and what I would refuse to build.

Telegram Mini AppsExampleProductivityTeamsUX

This is the Mini App I reach for when a team already works in a Telegram group and the “process” is screenshots of Trello, a pinned message that is three days stale, and “who is doing the invoice?” every afternoon. The Wall showed that a visual board can live in a chat and even charge for extra seats. I would steal the board. I would not steal a project-management suite.

The product is ten cards on three columns that the people in this group can move with a thumb. If you need epics, sprints, and time tracking, you already have Linear. Putting Linear in a Telegram sheet is how you get a tool nobody opens.

1. The user path in this example

The board is the group. Adding the bot does not create “Workspace 1.” It attaches three columns to this `chat_instance`.

  • Someone adds the bot. The Mini App opens from the menu button. Empty board: Todo / Doing / Done. MainButton = new card. Title, optional assignee from the member list Telegram already knows.
  • Move a card: drag or tap the next column. Haptic on drop. The row updates `column` and `updated_at`. Nobody types “moved to doing” in the chat.
  • When a card hits Done, the bot posts one line in the group: “Invoice for client X - done (Olena).” That is the notification Mini Apps still cannot do well on iOS. The chat stays the inbox. The sheet stays the board.
  • Cap at ten open cards (Todo + Doing). Done can archive after seven days. The constraint is the product. A board that accepts 200 cards is Trello again, opened from the wrong app.

2. Why the Mini App, not a pinned poll

A group can fake a board with a message. It cannot fake drag, assignees, or a Done that pages the channel without someone copy-pasting.

  • `chat_instance` is the board id. A second work group is a second board. Do not offer “create workspace” - they already did, by creating the chat.
  • Members are Telegram user ids. Assignee is a tap on a face, not an email field. If they are not in the group, they are not on the card.
  • Read-only for lurkers is fine. Writes need HMAC’d initData. A forged “move to done” from DevTools is how a joke becomes a fake ship.

3. What I would build first (and what I would not)

A first board is a status wall. It is not an operating system for the company.

  • Ship: three columns, ten-card cap, assignee, haptic, bot line on Done, archive, HMAC on writes, MainButton = add.
  • Ship next if they pay: a fourth column named after their actual work (“waiting on client”), or Stars for a second board in a second group. That is how The Wall sells seats without becoming Jira.
  • Do not ship first: subtasks, file attachments bigger than a Telegram photo, Gantt, estimates, SSO, “sync with Jira,” custom fields, a desktop admin that is the real product. If they need that, sell a website with a login. The Mini App is the pocket view of ten cards.

4. Monetisation I would actually try

A work group will not watch rewarded ads. Stars for a cap raise (ten → thirty cards) or a second board is a clean upgrade. Free ten cards must still finish the week or they will mute the bot.

A kanban Mini App is a wall in the room you already have

I would ship this for a three-to-eight-person studio, a small agency pod, a café shift group, or any Telegram work chat that currently pastes screenshots of another tool. Next.js board, Postgres cards keyed by `chat_instance`, a ten-card cap, haptic, a bot that only speaks when something is done. If that is your group - write via the form. We will scope a first version that moves a real card this month, not a Jira clone with a Telegram header.

Need this built, not just explained?

Telegram Mini App development: Next.js, payments, bots. Direct contractor.

Telegram Mini App development

Ready to discuss your project?

I'm a senior web engineer specializing in React and Next.js - available for freelance projects worldwide.

Location

Kyiv, Ukraine

Telegram

Contact me

WhatsApp

Contact me