The coin studio on the web
The coin studio on the web
/dashboard/emoji-design opens a two-tab studio: Banner and Coin Emoji. The Coin Emoji tab offers 2 spin styles, 6 colours, 7 textures and 21 finish-toggle options — a different option set from the Telegram wizard's 11 spins and 7 colours.
Opening the studio
The page is /dashboard/emoji-design. Two tabs, remembered in the browser's dashboard.emojiDesignTab storage key: Banner and Coin Emoji. Each tab is a card with an Open button and a hover gallery of packs already published from that tab.
Access
| Setting | Value |
|---|---|
| To open the studio | A logged-in session with a configured folder. No Telegram Premium, plan, or bot-ownership check is required just to open it. |
| Bot list offered inside it | Filtered to your Telegram bots that have botCreated set. |
| To generate against a specific bot key | That bot must be yours, on the telegram platform, and botCreated — otherwise the request is rejected with "telegram bot not found". |
Spin, colour and texture
Every option below is a button group — there are no dropdowns and no checkboxes anywhere in the coin designer.
Motion — 2 spin styles
| Value | Label | Hint shown in the UI |
|---|---|---|
| classic | Classic | "unhurried, grounded" |
| drift | Drift | "dreamy slow float" |
Colour — 6 options
| Value | Label |
|---|---|
| gold | Gold |
| silver | Silver |
| rosegold | Rose |
| emerald | Emerald |
| blue | Blue |
| black | Onyx |
The same 6 swatches, plus a custom hex-colour picker, also set the coin's border/rim colour, independently of the face colour above.
Finish — 7 textures, plus an Auto default
| Value | Label | Hint shown in the UI |
|---|---|---|
| (none — Auto) | Auto | the spin style's own default finish |
| smooth | Smooth | "sealed flat metal wall" |
| film | Film | "filmstrip slats around the edge" |
| brushed | Brushed | "satin hairline brushing" |
| reeded | Reeded | "classic dense coin reeding" |
| luxe | Luxe | "watch-bezel channels, bold zones" |
| screw | Screw | "interrupted milling blocks" |
| duotone | Duotone | "paired light/dark grooves" |
Limit
holo is a valid colour value, and hammered, fluted, gear, wave and inset are valid texture values — the render engine accepts and implements all of them — but none of these six have a button anywhere in this designer. They are not selectable options here.
Finish toggles
21 individually selectable options across 9 segmented button groups, plus an Animation Speed slider running 50–200% in steps of 5%.
The 9 toggle groups
| Group label | Options |
|---|---|
| Coin Thickness | Slim / Standard / Chunky |
| Hold Time | Quick / Standard / Long |
| Flash Effect | Yes / No |
| Flip Style | Half Flip / Full Flip |
| Spin Direction | Right / Left |
| Ground Shadow | On / Off |
| Landing Bloom | On / Off |
| Rim Lip | Flat / Standard / Bold |
| Bezel Sweep | On / Off |
The asymmetry with Telegram
The two surfaces do not offer the same options.
Telegram wizard vs. web studio
| Option | Telegram wizard | Web studio |
|---|---|---|
| Spin styles | 11 | 2 |
| Colours | 7 | 6 (no Holo button) |
| Textures | None | 7, plus an Auto default |
| Finish toggles (thickness, hold, flash, flip, direction, shadow, bloom, lip, sweep) | None | 21 options across 9 groups |
| Border/rim colour | Not available | 6 colours + custom hex |
| Where the coin is rendered | Dashboard host, server-side | Browser, client-side |
The coin is baked in the browser
The web studio's coin file is generated client-side and uploaded to the server as a finished tile. Two server entry points refuse outright if a build is attempted server-side.
cmd_pack (scripts/banner_designer.py)
ValueError: the coin is built in the browser — export ships that tile
cmd_prebake (scripts/banner_designer.py)
{"ok": false, "error": "coin tiles come from the browser"}
Export, name, create
From a finished design to a delivered pack
- Design the coin using the pickers and toggles above.
- Click Export. It reads "Exporting…" while the coin tile is baked in the browser and uploaded.
- Type a name in the field that appears — placeholder "My Emoji Pack", 48 characters max.
- Click Create emoji. It reads "Generating…" while the pack job runs; Cancel stops it, and a partially uploaded set is removed from Telegram.
- On success the panel shows "Success — check your DMs", with a View in Telegram link.
Note
Delivery is always to your Telegram DM from @memescalebot — never from your own bot, even when a specific botKey was used to generate the pack.
The coin creator in Telegram
/newpack (or /emojipack) with no premium emoji attached opens the coin flow: an image first, then a choice between full customization and an instant…
Pack management and fleet minting
/mypacks lists every pack you've created, 10 per page. Each one opens a detail card with 6 buttons for editing, adding to, sharing or deleting it.