# liuli

> Self-hosted, open-source reading pipeline that collects WeChat accounts, novels and blogs, then pushes cleaned articles to DingTalk, WeCom, Telegram, Bark or RSS.

- **Category:** Feed Aggregator
- **Licence:** Apache-2.0
- **Latest version:** v0.2.0
- **Open source:** oss
- **Languages:** Python, Vue
- **Platforms:** Docker, Docker Compose, Python
- **Tags:** MongoDB, Push Notifications, RSS, Archiving, Telegram, Web Scraping, Feed Aggregator, Wechat, Notes, Playwright, Dingtalk, Wecom, Liuli, Novel, Content Collection, Bark

## Description

Liuli is a self-hosted reading pipeline that watches the sources you subscribe to (WeChat official accounts, novel sites, blogs), pulls new articles with a browser-based collector, runs them through a configurable processing stage, and delivers the result to your own channels. Dispatch targets documented are DingTalk, WeCom, Telegram, Bark and per-source RSS feeds, while finished articles can be archived back into MongoDB or pushed to a dedicated GitHub repository published with GitHub Pages. Behaviour comes from an env file plus JSON task definitions in liuli_config (collector, processor, sender, backup and schedule blocks), so scheduling times and destinations are edited rather than coded. Running it means starting the liuliio/api and liuliio/schedule containers with docker-compose alongside a MongoDB instance; the Flask API listens on port 8765. A code install with Python 3.7+ and pipenv is also documented for Windows, macOS and Linux. All documentation is Chinese-only, and the project stayed pre-1.0 (last tagged release v0.2.0), with machine-learning based ad filtering and reader-facing source management still on the roadmap.

## Links

- [Homepage](https://github.com/liuli-io/liuli)
- [Website](https://liuli.io)
- [Docker](liuliio/schedule)
- [Liuli 使用教程 (author blog)](https://www.howie6879.cn/post/2021/11_2c_quick_start/)

---
Source: https://selfhost.directory/project/liuli