跳到正文

microfeed

维护中
microfeed/microfeed

在 Cloudflare 上自托管的轻量 CMS,适用于播客、博客、照片、视频、文档和精选链接。

在 GitHub 查看
星标
4017
Fork
1418
关注
4017
未关闭 Issue
45

该介绍目前仅提供英文版本。

microfeed: Lightweight CMS for Cloudflare

microfeed is a powerful, lightweight content management system designed to run on Cloudflare. It’s perfect for managing various types of content including podcasts, blogs, photos, videos, documents, and curated URLs. Built by the team behind ListenNotes, it has gained over 3,600 GitHub stars.

Core Features

  • Multi-Content Support: Manage podcasts, blogs, photos, videos, documents, and URLs
  • Cloudflare Integration: Built specifically for Cloudflare’s infrastructure
  • Lightweight Design: Minimal resource usage and fast performance
  • Self-Hosted: Complete control over your data and infrastructure
  • Easy Deployment: Simple setup process on Cloudflare
  • Modern UI: Clean and intuitive user interface
  • API Support: Built-in API for content management

Quick Start

  1. Fork the Repository:

    git clone https://github.com/microfeed/microfeed.git
  2. Configure Cloudflare:

    • Create a Cloudflare Pages project
    • Set up Cloudflare D1 database
    • Configure Cloudflare R2 for media storage
    • Set up Cloudflare Zero Trust for admin access
  3. Deploy to Cloudflare:

    # Install dependencies
    yarn install
    
    # Configure your settings
    cp .env.example .env
    
    # Deploy to Cloudflare
    yarn deploy
  4. Access Admin Dashboard:

    • Visit https://your-project.pages.dev/admin
    • Complete the setup checklist
    • Start managing your content

Content Management

Adding Content Types

// Example configuration
{
  "title": "My Microfeed",
  "description": "A personal content hub",
  "contentTypes": ["podcast", "blog", "photos"],
  "theme": "default"
}

Customizing Appearance

<!-- Example custom HTML template -->
<div class="content">
  {{#items}}
    <article>
      <h2>{{title}}</h2>
      <p>{{description}}</p>
      <img src="{{imageUrl}}" alt="{{title}}">
    </article>
  {{/items}}
</div>

Data Backup

  1. Backup Database:

    # Use wrangler to backup D1 database
    wrangler d1 backup
  2. Backup Media Files:

    • Use S3-compatible API to download from R2
    • Script required for batch downloads

FAQs

How to track downloads?

  • Use tracking URLs feature
  • Configure third-party tracking services (OP3, Podtrac)
  • Access via Settings / Tracking URLs

Why Cloudflare?

  • Reliable infrastructure
  • One-stop platform for DNS, Cache, Firewall, CDN
  • Generous free tier
  • Easy to manage

Data Backup Strategy

  • Regular D1 database backups
  • R2 media file backups
  • Use custom domain for flexibility

Local Development

  1. Setup:

    # Create .vars.toml
    CLOUDFLARE_PROJECT_NAME = "your-project-org"
    CLOUDFLARE_ACCOUNT_ID = "account id"
    CLOUDFLARE_API_TOKEN = 'api token'
    R2_ACCESS_KEY_ID = "access key"
    R2_SECRET_ACCESS_KEY = "secret key"
    R2_PUBLIC_BUCKET = "your-r2-bucket-name"
  2. Run Development Server:

    yarn dev

Support

License

This project is licensed under the AGPL-3.0 License - see the LICENSE file for details.

按共同分类和标签排序的同类开源项目。

全部 CMS 项目 →