SkillAgentSearch skills...

Microfeed

a lightweight cms self-hosted on cloudflare, for podcasts, blogs, photos, videos, documents, and curated urls.

Install / Use

/learn @microfeed/Microfeed

README

</br> </br> <div align="center"> <a href="https://www.microfeed.org/" target="_blank"> <picture> <source media="(prefers-color-scheme: dark)" srcset="https://user-images.githubusercontent.com/1719237/210119945-50e1d444-2d12-43d2-a96d-65bdbccecb70.png"> <img src="https://user-images.githubusercontent.com/1719237/207514210-99ddbd03-f8f0-410a-96c8-80da1afb804d.png" width="280" alt="Logo"/> </picture> </a> </div> <h1 align="center">microfeed: a lightweight cms self-hosted on cloudflare</h1> <p align="center"> <a href="https://github.com/microfeed/microfeed/issues/new?assignees=&labels=bug"><b>Report Bug</b></a> · <a href="https://github.com/microfeed/microfeed/discussions/new?category=ideas"><b>Request Feature</b></a> · <a href="mailto:support@microfeed.org"><b>Email Us Privately</b></a> </p>

Welcome to microfeed, a lightweight content management system (CMS) self-hosted on Cloudflare. With microfeed, you can easily publish a variety of content such as audios, videos, photos, documents, blog posts, and external URLs to a feed in the form of web, RSS, and JSON. It's the perfect solution for tech-savvy individuals who want to self-host their own CMS without having to run their own servers.

microfeed is built by Listen Notes and is hosted on Cloudflare's Pages, R2, D1, and Zero Trust.

If you have any questions or feedback, please don't hesitate to reach out to us at support@microfeed.org. We'd love to hear from you!

📚 Table of contents

Deploy to Cloudflare Pages CI Email us stability-alpha

⭐️ How it works

Since the 1990s, a significant portion of the web has been powered by feeds. People (and bots) publish items to a feed, and others can subscribe to that feed to receive new content.

microfeed makes it easy for individuals to self-host their own feed on Cloudflare, including but not limited to

microfeed uses Cloudflare Pages to host and run the code, R2 to host and serve media files, D1 to store metadata, and Zero Trust to provide logins to the admin dashboard. Cloudflare provides very generous free usage quotas, making it an affordable solution for personal or small business use. While you will still need to pay for a domain name, hosting microfeed on Cloudflare is essentially free.

With microfeed, you can publish a variety of content such as audios, videos, photos, documents, blog posts, and external URLs to a customizable website, an RSS feed, and a JSON feed. Check out some examples of microfeed in action:

microfeed provides a simple yet powerful admin dashboard that makes it easy to add items to the feed, upload media files, and customize web page styles. If you've used WordPress before, you'll find it familiar.

image-6d056193c81c0b8f5de0503f5af18116

Back to 📚TOC

🚀 Installation

Roughly you'll follow these steps to install a microfeed instance to Cloudflare:

  1. Fork the microfeed repo to your personal (or organizational) GitHub account.
  2. Obtain Cloudflare API tokens and save them as secrets on your forked GitHub repository.
  3. Use the predefined GitHub Action in your forked repository to deploy the code to Cloudflare Pages, using the secrets from step 2.
  4. Make a few clicks on Cloudflare's dashboard to set up custom domains and configure some security settings.
  5. Done. Start publishing!

We understand that not everyone is comfortable with reading documentation, so we've made it as easy as possible to get started with microfeed. However, we'd love to see Cloudflare implement a "Login with Cloudflare" OAuth feature, which would allow for almost one-click deployment of microfeed. In the meantime, we've tried to make the setup process as straightforward as possible for tech-savvy users.

Prerequisites

Back to TOC

Step 1. Fork the microfeed repo to your GitHub

Simply click on https://github.com/microfeed/microfeed/fork to fork the repository.

You may choose to modify the code in your forked repository in the future, but it's likely that you won't need to touch the code at all. Simply fork the repository and keep it synced for future use.

Back to 📚TOC

Step 2. Put some secrets on your forked repo

Go to your forked repo's Settings -> Secrets -> Actions, and create 5 secrets (click for more details). With these secrets in place, you'll be able to use GitHub Actions to deploy your microfeed instance to Cloudflare Pages.

<details> <summary><b>CLOUDFLARE_ACCOUNT_ID</b></summary>

You can get your cloudflare account id from your dashboard's url:

After you login your Cloudflare account, you'll be redirected to a url like this

https://dash.cloudflare.com/[your-cloudflare-account-id-here]

The last part of the url is your cloudflare account id.

For example, if you see a url like this:

https://dash.cloudflare.com/fff88980eeeeedcc3ffffd4f555f4999

Then you'll set CLOUDFLARE_ACCOUNT_ID to fff88980eeeeedcc3ffffd4f555f4999:

<img width="846" alt="Screenshot 2022-12-17 at 10 31 10 AM" src="https://user-images.githubusercontent.com/1719237/208216752-56f00f51-29cb-43ea-b720-75244719898d.png"> </details> <details> <summary><b>CLOUDFLARE_API_TOKEN</b></summary>

You'll need to create an API token here: https://dash.cloudflare.com/profile/api-tokens

Create a custom token:

<img width="925" alt="Screenshot 2022-12-04 at 4 30 57 PM" src="https://user-images.githubusercontent.com/1719237/205525627-14da54ae-1733-4db5-b65d-94f5ec48f360.png">

We need edit permission for both Cloudflare Pages and D1:

<img width="990" alt="Screenshot 2022-12-04 at 4 31 41 PM" src="https://user-images.githubusercontent.com/1719237/205525675-4c8a6bce-21a8-45e3-bf0c-28981f123da3.png">

Finally, copy the API token here:

<img width="682" alt="Screenshot 2022-12-04 at 4 34 01 PM" src="https://user-images.githubusercontent.com/1719237/205525785-6fed8e49-7342-4b36-9d07-348e1c28cbcc.png"> </details> <details> <summary><b>R2_ACCESS_KEY_ID</b> and <b>R2_SECRET_ACCESS_KEY</b></summary>

Go to your R2 dashboard page. You may need to put your credit card there first. You won't need to pay, unless your usage exceeds the very generous free quota limit (i.e., 10GB storage + 10 million read

Related Skills

View on GitHub
GitHub Stars3.9k
CategoryContent
Updated1d ago
Forks1.4k

Languages

JavaScript

Security Score

100/100

Audited on Apr 4, 2026

No findings