selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

GitHub
Coldsweat logo

Self-host Coldsweat

v0.10.2

Fever API-compatible RSS aggregator and reader

AlphaOpen SourceMIT
Updated2 years ago
LanguageSCSS
Setup difficultyModerate
Stars
146
Ports
5000 (Flask development web server), 8080 (Example Fever API endpoint for client configuration)
Install with pip
Coldsweat web interface showing feed list and article view

What is Coldsweat?

Coldsweat is a self-hosted RSS feed aggregator and reader written in Python 3 using the Flask framework. It implements the Fever API, allowing synchronization with popular RSS clients such as Reeder for iOS/macOS and ReadKit. The application provides a web interface for reading and adding feeds, supports multiple users, and offers basic grouping of similar items. Feeds can be imported via OPML and fetched on a schedule using cron. Coldsweat supports SQLite (default), PostgreSQL, and MySQL as database backends. Configuration is done via a TOML file or environment variables prefixed with FLASK_. The project is distributed as a Python wheel on PyPI and installed via pip. It includes a built-in fetcher with HTTP conditional GET support, automatic feed location change detection, and automatic disabling of repeatedly failing feeds.

Should you self-host Coldsweat?

Coldsweat scores 39/100 on selfhost.directory (how scoring works) and ranks #69 of 85 in Feed Reader. It has 146 GitHub stars.

There was no stable release in the past 12 months, so check the repository's recent activity before you rely on it.

Setup is moderate: expect some configuration beyond a single command. It is MIT-licensed and written mostly in SCSS.

Its closest alternative on selfhost.directory is RSSHub (85/100, 46 704 stars). It scores higher overall, so compare the two before you pick. See Coldsweat vs RSSHub side by side.

Features

  • Fever API compatibility

Coldsweat README

How to install Coldsweat

Install Coldsweat with pip

Environment variables
FLASK_DATABASE_URL, FLASK_SECRET_KEY, FLASK_CDN_DOMAIN

$ pip install coldsweat

$ coldsweat setup john@example.com -p somepassword

$ coldsweat import /path/to/subscriptions.opml alice@example.com -f

$ coldsweat fetch

$ coldsweat run

Recommended to install in a virtual environment

How to configure Coldsweat

  • CDN_DOMAINBase domain for serving static assets (CSS, JS, images) via Flask-CDN

    Base domain for serving static assets (CSS, JS, images) via Flask-CDN

    values: Any valid domain name

  • DATABASE_URLDatabase connection URL (Peewee format). Example: mysql://username:password@example.com:3306/coldsweat

    Database connection URL (Peewee format). Example: mysql://username:password@example.com:3306/coldsweat

    values: Any valid Peewee database URL

  • FLASK_CDN_DOMAINEnvironment variable alternative for CDN_DOMAIN

    Environment variable alternative for CDN_DOMAIN

    values: Any valid domain name

  • FLASK_DATABASE_URLEnvironment variable alternative for DATABASE_URL

    Environment variable alternative for DATABASE_URL

    values: Any valid Peewee database URL

  • FLASK_SECRET_KEYEnvironment variable alternative for SECRET_KEY

    Environment variable alternative for SECRET_KEY

    values: Any secure random string

  • SECRET_KEYSecret key for Flask session cookies to keep users logged in

    Secret key for Flask session cookies to keep users logged in

    values: Any secure random string

Coldsweat releases & version history

More in RSS

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…