A free, self-hostable aggregator…
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Marien Fressinaud 5932c3427b Add entry_before_display hook 10 years ago
app Add entry_before_display hook 10 years ago
data CHANGELOG 10 years ago
extensions Update gitignore for extensions 10 years ago
lib Add entry_before_display hook 10 years ago
p Fix security hole from ext.php script. 10 years ago
CHANGELOG SimplePie changelog 10 years ago
LICENSE Modif du fichier README + l'application s'appellera désormais FreshRSS 12 years ago
README.fr.md We are working on 0.10-dev... 10 years ago
README.md We are working on 0.10-dev... 10 years ago
constants.php First draft for the new extension feature 10 years ago
index.html HTTP Auth : améliorations + changelog 11 years ago
index.php HTTP Auth : améliorations + changelog 11 years ago

README.md

FreshRSS

FreshRSS is a self-hosted RSS feed agregator like Leed or Kriss Feed.

It is at the same time light-weight, easy to work with, powerful and customizable.

It is a multi-user application with an anonymous reading mode.

FreshRSS logo

Note on branches

This application is still in development! Please use the branch that suits your needs:

Disclaimer

This application was developed to fulfill personal needs not professional needs. There is no guarantee neither on its security nor its proper functioning. If there is feature requests which I think are good for the project, I'll do my best to include them. The best way is to open issues on GitHub (https://github.com/marienfressinaud/FreshRSS/issues) or by email (dev@marienfressinaud.fr)

Requirements

  • Light server running Linux or Windows
    • It even works on Raspberry Pi with response time under a second (tested with 150 feeds, 22k articles, or 32Mo of compressed data)
  • A web server: Apache2 (recommanded), nginx, lighttpd (not tested on others)
  • PHP 5.2.1+ (PHP 5.3.7+ recommanded)
  • MySQL 5.0.3+ (recommanded) ou SQLite 3.7.4+
  • A recent browser like Firefox 4+, Chrome, Opera, Safari, Internet Explorer 9+
    • Works on mobile

FreshRSS screenshot

Installation

  1. Get FreshRSS with git or by downloading the archive
  2. Dump the application on your server (expose only the ./p/ folder)
  3. Add write access on ./data/ folder to the webserver user
  4. Access FreshRSS with your browser and follow the installation process
  5. Every thing should be working :) If you encounter any problem, feel free to contact me.

Access control

It is needed for the multi-user mode to limit access to FreshRSS. You can:

  • use form authentication (need JavaScript and PHP 5.3.7+, works with some PHP 5.3.3+)
  • use Mozilla Persona authentication included in FreshRSS
  • use HTTP authentication supported by your web server
    • See Apache documentation
      • In that case, create a ./p/i/.htaccess file with a matching .htpasswd file.

Automatic feed update

  • You can add a Cron job to launch the update script. Check the Cron documentation related to your distribution (Debian/Ubuntu, Red Hat/Fedora, Slackware, Gentoo, Arch Linux…). It’s a good idea to use the web server user . For example, if you want to run the script every hour:
7 * * * * php /chemin/vers/FreshRSS/app/actualize_script.php > /tmp/FreshRSS.log 2>&1

Advices

  • For a better security, expose only the ./p/ folder on the web.
    • Be aware that the ./data/ folder contain all personal data, so it is a bad idea to expose it.
  • The ./constants.php file define access to application folder. If you want to customize your installation, every thing happens here.
  • If you encounter some problem, logs are accessibles from the interface or manually in ./data/log/*.log files.

Backup

  • You need to keep ./data/config.php, ./data/*_user.php and ./data/persona/ files
  • You can export your feed list in OPML format from FreshRSS
  • To save articles, you can use phpMyAdmin or MySQL tools:
mysqldump -u user -p --databases freshrss > freshrss.sql

Included libraries

Only for some options

If native functions are not available