Rebranding
your name, your colour, your bot.
Most branding is done in the console with no code change: name, accent colour, logo and disclaimer. The bot's own name and picture are set in @BotFather. Deeper changes are in a few clearly separated files.
01In the console (no code)
| Setting | Where it shows | Console |
|---|---|---|
| Product name | Site header, page titles, the bot's /start text, the badge, the top bar of the data screens when opened on their own | Brand → Product name (or SITE_NAME) |
| Accent colour | Buttons, highlights and links on the public site and the data screens. The colour's hue is used (rounded to 5°), so the site keeps its contrast in dark and light themes. | Brand → Accent colour |
| Logo | Replaces the check-mark icon in the header. Stored as an image in the console (PNG, SVG, WebP or JPEG). | Brand → Logo |
| Disclaimer | Site footer and bot reply cards | Legal → Disclaimer |
| Public address | Every link the bot sends, share cards, the wallet-link message | Site → Public address (restart) |
Changes to name, colour, logo and disclaimer apply at once. Tagline, support email, website, terms and privacy URLs are stored by the console but not shown on the public site in this version.
02The bot's name and picture
These belong to your bot in Telegram, not to the server. In @BotFather:
/setname: the display name./setuserpic: the profile picture./setdescriptionand/setabouttext: what people see before pressing Start.
The command list (/top, /follow …) is registered by the server on each start; you do not need /setcommands.
03In the files
| What | File |
|---|---|
| Browser tab icon | src/web/public/favicon.svg |
| Colours, spacing, type scale (design tokens) | src/web/public/tokens.css; components in components.css and app.css |
| Fonts (Geist, Geist Mono, self-hosted) | src/web/public/geist-sans.woff2, geist-mono.woff2; share-card fonts in src/cards/fonts/ |
| Bot texts | src/alerts/commands.ts, src/alerts/format.ts |
| Console product name and accent | src/admin/manifest.ts (product) |
Restart after editing files. Static files get a content hash in their URL, so browsers pick up the new version.
Every file you edit must be merged again when you update. Prefer the console settings. Keep a list of the files you changed. The site's Content Security Policy only allows its own scripts, styles, fonts and images: a logo or font from another domain will not load.
04Domain and theme
- Use any domain or subdomain: point it at the server and set it as the public address.
- Visitors switch dark and light themes with the header button; the choice is kept in a cookie.
05What stays
The measuring rules are published on /methodology exactly as configured, and labels such as "not reachable", "not checked", "unpriceable", "Paid listing" and "Sponsored" are part of how the record stays honest. Rebrand freely, but keep them.