Git Product home page Git Product logo

stringer's Introduction

##Stringer Build Status Code Climate Coverage Status

A [work-in-progress] self-hosted, anti-social RSS reader.

Stringer has no external dependencies, no social recommendations/sharing, and no fancy machine learning algorithms.

But it does have keyboard shortcuts (hit ? from within the app) and was made with love!

When BIG_FREE_READER shuts down, your instance of Stringer will still be kicking.

The app is currently under active development, please try it out and report any issues you have.

Installation

Stringer is a Ruby app based on Sinatra, ActiveRecord, PostgreSQL, Backbone.js and DelayedJob.

Instructions are provided for deploying to Heroku (runs fine on the free plan) but Stringer can be deployed anywhere that supports Ruby.

git clone git://github.com/swanson/stringer.git
cd stringer
heroku create
git push heroku master

heroku config:set SECRET_TOKEN=`openssl rand -hex 20`

heroku run rake db:migrate
heroku restart

heroku addons:add scheduler
heroku addons:open scheduler

Add an hourly task that runs rake fetch_feeds

Load the app and follow the instructions to import your feeds and start using the app.


In the event that you need to change your password, run heroku run rake change_password from the app folder.

Updating the app

From the app's directory:

git pull
git push heroku master
heroku run rake db:migrate
heroku restart

Niceties

You can run Stringer at http://reader.yourdomain.com using a CNAME.

If you are on Heroku:

heroku domains:add reader.yourdomain.com

Go to your registrar and add a CNAME:

Record: CNAME
Name: reader
Target: your-heroku-instance.herokuapp.com

Wait a few minutes for changes to propagate.


ReederApp Support (experimental)

Stringer implements a clone of Fever's API so it can be used with any mobile client that supports Fever.

image

Use the following settings:

Server: {path-to-stringer}/fever (e.g. http://reader.example.com/fever)

Email: stringer (case-sensitive)
Password: {your-stringer-password}

Currently, only reading is supported and this is kind of a hack so please report any issues you run into. If you have previously setup Stringer, you will need to migrate your database and run rake change_password for the API key to be setup properly.


Stringer has been translated to several other languages. Your language can be set with the LOCALE environment variable.

To set your locale on Heroku, run heroku config:set LOCALE=en.

If you would like to translate Stringer to your preferred language, please use LocaleApp.

Development

Run the tests with rspec.

In development, stringer uses sqlite - there are issues with locking if you run background jobs at the same time as queries are being made via the web app. If you run into these, consider using pg locally.

Getting Started

To get started using Stringer locally simply run the following:

bundle install
rake db:migrate
foreman start

The application will be running on port 5000

You can launch an interactive console (ala rails c) using racksh

Acknowledgements

Most of the heavy-lifting is done by feedzirra and feedbag.

General sexiness courtesy of Twitter Bootstrap and Flat UI.

Contact

Matt Swanson, mdswanson.com @_swanson

stringer's People

Contributors

cnu avatar csmrmn avatar daniellesucher avatar darkmasta avatar dgutov avatar dpaluy avatar fmendez avatar galaakk avatar gbarcia avatar glindstedt avatar irio avatar j15e avatar jcla1 avatar jmonteiro avatar jnbt avatar jnettome avatar justinburdett avatar kbariotis avatar keliwang avatar mouton-rebelle avatar petersonfs avatar rkushnir avatar ryanclarke avatar shipstar avatar slothbear avatar spraints avatar steinerl avatar tshepang avatar warmwaffles avatar who828 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.