BroadcastChannel
Turns a public Telegram channel into a microblog with RSS feeds, a sitemap and search, served from a Worker in your Cloudflare account
BroadcastChannel demo timeline with a forwarded post and a photo post, under a header with search
BroadcastChannel reads the posts of a public Telegram channel and renders them as a website, with a timeline, a page for every post, tags and search. Writing still happens in Telegram, so the site changes whenever the channel does. Pages are rendered on the server and send no JavaScript to the browser. The site also serves RSS and JSON feeds and a sitemap, and ten optional themes change its look.
There is no admin panel and no database. The Worker reads the channel through Telegram’s public web preview at t.me/s and turns each post into a page. Text, photo albums, video and audio posts all render, forwarded posts show where they came from, and media is served through a built-in proxy that only reaches an allowlist of hosts. Everything else is set with environment variables. CHANNEL, the channel’s username, is the only required one. Optional ones set the locale and time zone, links to Telegram, X, GitHub, Mastodon, Bluesky or Discord profiles, navigation links and tags, Google site search, noindex and nofollow, and raw HTML for the header or footer. A theme is picked by loading one stylesheet in that header HTML: Sepia, Aria, four Terminal colors, HN News, TG Channel, ZAE or Polar. On Cloudflare the site runs on Workers: build with SERVER_ADAPTER=cloudflare_workers, then run wrangler deploy. Server rendering on Cloudflare Pages stopped working with Astro 6, so the README points Pages users to Workers. The same code also runs on Netlify, Vercel, EdgeOne and in Docker.
Built for: Writers, projects and communities that already post to a public Telegram channel and want a website for it
What you can use it for
- Run a blog by posting to a Telegram channel
- Give a channel a website on its own domain
- Offer a channel to readers outside Telegram through RSS and JSON feeds
- Let search engines index a channel’s posts through a sitemap
Deploy
CLI
The build must run with SERVER_ADAPTER=cloudflare_workers. CHANNEL is the part of the channel link after t.me/ and can also be set in the Workers dashboard.
git clone https://github.com/miantiao-me/BroadcastChannel.git cd BroadcastChannel pnpm install SERVER_ADAPTER=cloudflare_workers pnpm build pnpm exec wrangler deploy pnpm exec wrangler secret put CHANNEL
Only CHANNEL is required. Locale, time zone, links, tags and theme are optional variables that can be added later.
Good to know
The channel must be public, and Restricting Saving Content must be off in its settings. Content comes from Telegram’s public web preview, so the site breaks if Telegram changes that page or hides the channel from public view. There is no editor: posts are written, edited and deleted in Telegram. Changes to environment variables need a redeploy. Server rendering on Cloudflare Pages is not supported.
Cost on Cloudflare
Likely fits the free plan
The site is one Worker with static assets and no database or storage, so it runs on Workers Free, which includes 100,000 requests a day.
The estimate is based on Cloudflare’s documented limits and the app’s configuration. What you pay depends on your usage and plan.
Where this comes from
- Repositoryhttps://github.com/miantiao-me/BroadcastChannel
- Demohttps://broadcast-channel.run-on.workers.dev/
- Documentationhttps://github.com/miantiao-me/BroadcastChannel#configuration
Listing history
- Oct 9, 2026 · BroadcastChannel listed
Similar apps
All CMS & Publishing apps
Headless CMS with an admin panel, where developers define content in code and editors publish, running on Workers with D1 and R2
- Deploy
- One-click
- License
- MIT
- GitHub stars
- 45.4k stars
- Last commit

Open-source Astro CMS from Cloudflare for blogs and marketing sites, with a WordPress-style admin and sandboxed plugins
- Deploy
- One-click
- License
- MIT
- GitHub stars
- 13.8k stars
- Last commit

Self-hosted CMS that publishes podcasts, posts, photos and links as a website, RSS feed and JSON Feed on Cloudflare
- Deploy
- CLI
- License
- AGPL-3.0
- GitHub stars
- 4.1k stars
- Last commit