本文へスキップ

microfeed

メンテナンス中
microfeed/microfeed

Cloudflare 上でセルフホストできる軽量 CMS。ポッドキャスト、ブログ、写真、動画、ドキュメント、厳選 URL に対応します。

GitHub で見る
スター
4017
フォーク
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 プロジェクト →