gitwtfhub

wtf is telegraph-image?

cf-pages/telegraph-image — explained in plain English

Analysis updated 2026-06-26

4,539HTMLAudience · developerComplexity · 3/5Setup · moderate

TL;DR

A self-hosted image sharing service that stores your uploads on Telegram's free servers and serves them through Cloudflare Pages, so you get a personal image host with no storage costs and no server to maintain.

Mindmap

mindmap
  root((repo))
    What it does
      Free image hosting
      Telegram as storage
      Cloudflare CDN
    Setup Needs
      Cloudflare account
      Telegram bot
      Private channel
    Features
      Content moderation API
      Admin dashboard
      Batch delete
      Auto-update via Actions
    Limits
      50MB per file
      100k requests per day
      Free tier only

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Host and share images for free using Telegram as backend storage without paying for a server or cloud bucket

REASON 2

Replace ad-heavy image hosts like Imgur with a self-controlled URL you manage through a web dashboard

REASON 3

Enable content moderation through a third-party API that automatically blocks inappropriate image uploads

REASON 4

Keep your fork automatically up to date with upstream changes using the hourly GitHub Actions sync

What's in the stack?

HTMLJavaScriptCloudflare PagesTelegram APIGitHub Actions

How it stacks up

cf-pages/telegraph-imagesofish/typo.csshakimel/css
Stars4,5394,5414,529
LanguageHTMLHTMLHTML
Setup difficultymoderateeasyeasy
Complexity3/51/51/5
Audiencedeveloperdeveloperdesigner

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · moderate Time to first run · 30min

Requires a Cloudflare account plus a Telegram bot configured as admin of a private channel, credentials must be set as Cloudflare Pages environment variables.

License terms are not specified in the explanation.

Wtf does this do

Telegraph-Image is a free image hosting service you can deploy yourself, intended as an alternative to paid or ad-heavy platforms like Imgur or Flickr. Once set up, it gives you a personal URL where you can upload and share images without paying for storage or a server. The way it works is a bit indirect: when you upload an image, the system sends it to a Telegram channel through a Telegram bot. Telegram stores the file on its own servers, and the project then gives you a link to access it. This means your images are actually living on Telegram's infrastructure, which is free and has no storage limit, though individual files are capped at 50 megabytes per upload. The hosting side of the project runs on Cloudflare Pages, also free within standard usage limits, so the entire setup costs nothing as long as traffic stays below Cloudflare's free tier thresholds. Setting it up requires a Cloudflare account, a Telegram account, and a few steps: creating a Telegram bot through the BotFather interface, making that bot an administrator of a private Telegram channel you create, getting the channel ID, and then entering those credentials as environment variables in your Cloudflare Pages project. After forking the repository and connecting it to Cloudflare, it deploys automatically. Extra features include optional content moderation through a third-party API that automatically blocks inappropriate images, a backend management page where you can browse uploaded images, manage whitelists and blacklists, and delete images in batch. The management page supports grid and waterfall display modes. There is also an automatic update feature that syncs your fork with the upstream project hourly through GitHub Actions. Limitations are mainly the 50MB per file Telegram cap, potential slower load times through Cloudflare in certain regions, and a 100,000 requests per day ceiling on the free Cloudflare plan. The README notes the original Telegraph API it was built around has been shut down, so the Telegram bot setup is now required.

Yoink these prompts

Prompt 1
Walk me through setting up telegraph-image from scratch: creating the Telegram bot, making it admin of a private channel, and connecting it to Cloudflare Pages with environment variables.
Prompt 2
My telegraph-image deployment is live but I want to enable content moderation to block inappropriate uploads. How do I configure the third-party moderation API?
Prompt 3
How do I use the telegraph-image admin dashboard to browse all uploaded images, delete specific ones in bulk, and manage whitelist and blacklist entries?
Prompt 4
I hit Cloudflare's 100,000 requests per day free tier limit on my telegraph-image deployment. What are my options to scale beyond that without changing all my existing image URLs?

Frequently asked questions

wtf is telegraph-image?

A self-hosted image sharing service that stores your uploads on Telegram's free servers and serves them through Cloudflare Pages, so you get a personal image host with no storage costs and no server to maintain.

What language is telegraph-image written in?

Mainly HTML. The stack also includes HTML, JavaScript, Cloudflare Pages.

What license does telegraph-image use?

License terms are not specified in the explanation.

How hard is telegraph-image to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is telegraph-image for?

Mainly developer.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.