Audrey is a simple single-user feed reader, focused on a no-frills reading experience. Audrey allows you to subscribe to RSS and Atom feeds and read content in one place.
Audrey is self-hosted; you can set up an installation on your own server or cloud provider. There's no creepy harvesting of your data, and no algorithms to recommend new content.
Note: Audrey is currently in beta
- Requirements
- Running Locally
- Running on a Server
- Cloud Provider Guides
- Config Options
- Beta Notice
- Contributing
- License
This application requires the following to run:
You can run Audrey locally if you intend on making your own changes, or just want to test it out. Follow these steps to get Audrey running on your local machine:
-
Make sure you have all of the software listed in Requirements
-
Clone this repository, and
cd
into it:git clone https://github.com/rowanmanning/audrey.git && cd audrey
-
Install the application dependencies:
npm install
-
Copy the sample
.env
file to make changes to the configuration. You'll need to do this if you want sessions to persist between restarts of the application. The following command copiessample.env
to.env
:cp sample.env .env
-
Build client-side assets (Sass):
npm run build
Or run the following if you want assets to automatically rebuild:
npm run watch
-
Start the application in production mode:
npm start
Or development mode if you want code changes to auto-restart the application:
npm run start:dev
-
Visit localhost:8080 in your browser (the port may be different if you made changes to the default
.env
file) -
Set up a password on the locally running site. You'll need to remember this password to regain access if your session expires
The instructions for running on a server are the same as running locally apart from the following differences:
-
It may not be possible to create an
.env
file, dependent on your setup. You'll need a different way to provide configurations via environment variables -
You'll need to run the
npm run build
command at some point before the deployment of the application finishes -
The URL to access the application will be whatever your public server address is, rather than
localhost
Audrey has guides for the following common cloud providers:
- Deploy Audrey on Glitch (free and paid options)
- Deploy Audrey on Heroku (free and paid options)
This application is configured using environment variables, or an .env
file if you're running locally. The following options are available:
-
MONGODB_URI
: A MongoDB connection string, used to connect to the database.
Default:mongodb://localhost:27017/audrey
-
NODE_ENV
: The environment to run the application in, one ofproduction
,development
,test
.
Default:development
. -
PORT
: The HTTP port to run the application on. If set to an empty string, a random port will be assigned.
Default:8080
. -
SESSION_SECRET
: A secret key for session hashing. If this is not set, a random key will be used on each restart of the application. This will cause sessions to drop off, and is very annoying in development. -
UPDATE_SCHEDULE
: A cron expression which specifies when Audrey should refresh all of the feeds you're subscribed to. If you're unsure how to write cron expressions, this site helps.
Default:0 */2 * * *
(every 2 hours).
You can also change more configurations through the settings page of a running copy of Audrey, these additional configurations are stored in the database.
Audrey is currently in beta, and may not have all of the features you expect from a feed reader yet. I'm deliberately keeping a reduced set of features, but please check the feature label in the issues before requesting anything
I really appreciate feedback on the stability of Audrey, if you're willing to give it a go as your primary feed reader then I'll be happy to address any bugs you come across during your day-to-day use.
The contributing guide is available here. All contributors must follow this library's code of conduct.
Licensed under the GPLv3 license.
Copyright © 2020, Rowan Manning.