Free Image Hosting solution, Flickr/imgur alternative. Using Cloudflare Pages and Telegraph.
English|中文
Use tg channel/chat for storage
How to use?
First, you need to create a new telegram bot to obtain the token and a telegram channel to obtain Chat_ID
If you don't have a Telegram account yet, please create one first. Then, follow these steps to get the Bot_Token
and Chat_ID
:
-
Get the
Bot_Token
- In Telegram, send the command
/newbot
to @BotFather, and follow the prompts to input your bot's name and username. Once successfully created, you will receive aBot_Token
, which is used to interact with the Telegram API.
- In Telegram, send the command
-
Set the bot as a channel administrator
- Create a new channel and, after entering the channel, go to channel settings. Add the bot you just created as a channel administrator, so it can send messages.
-
Get the
Chat_ID
- Use @GetTheirIDBot to get your channel ID. Send a message to this bot and follow the instructions to receive your
Chat_ID
(the ID of your channel).
- Use @GetTheirIDBot to get your channel ID. Send a message to this bot and follow the instructions to receive your
The only thing you need to prepare in advance is a Cloudflare account
3 simple steps to deploy this project and have your own image hosting
1.Fork this repository (Note: In order to make this work. You have to using Git or Wrangler CLI to deploy this project. Document)
2.Open the Cloudflare Dashboard, enter the Pages management page, choose to create a project, then choose Connecting to the Git Provider
- Follow the prompts on the page to enter the project name, select the git repository you need to connect to, then click
Deploy
-
Unlimited number of images stored, you can upload an unlimited number of images
-
No need to buy a server, hosted on Cloudflare's network, when the use does not exceed Cloudflare's free quota, completely free
-
No need to buy a domain name, you can use the free second-level domain name
*.pages.dev
provided by Cloudflare Pages, and also support binding custom domain names -
Support image review API, can be opened as needed, after opening undesirable images will be automatically blocked, no longer loaded
Inside the custom domain of pages, bind the domain name that exists in your Cloudflare account, the domain name hosted in cloudflare, will automatically modify the dns record
-
Please go to https://moderatecontent.com/ to register and get a free API key for reviewing image content
-
Open the settings of Cloudflare Pages, click
Settings
,Environment Variables
,Add Environment Variables
in turn -
Add a
variable
name asModerateContentApiKey
,value
as theAPI key
you just got in the first step, clickSave
to
Note: Since the changes will take effect on the next deployment, you may need to go to the Deploy
page and redeploy the project
When image review is enabled, the first time image load will be slow because it takes time to review, but the subsequent image load will not be affected due to the existence of cache
-
Since the image files are actually stored in Telegraph, Telegraph limits the size of uploaded images to a maximum of 5MB
-
Due to the use of Cloudflare's network, the loading speed of images may not be guaranteed in some areas.
-
The free version of Cloudflare Function is limited to 100,000 requests per day (i.e. the total number of uploads or loads of images cannot exceed 100,000), if this is exceeded, you may need to choose to purchase the paid package of Cloudflare Function.
Ideas and code provided by Hostloc @feixiang and @乌拉擦