GithubHelp home page GithubHelp logo

readlist's Introduction

Readlist

This is a CLI for creating and managing Readlist.

Required

  • CouchDB to store the data. So you will need CouchDB. You could also use any other service that provides a restful CRUD service to a NoSQL DB.
  • Each readlist (channel) is a document in the DB. It can have zero or more feed Items.
  • feed_base_url from where you will serve the JSONFeed. Usually, we attach channel_id to form the full URL. You can have a simple serverless function to read the document from CouchDB to serve it. Or you can make a CDN do it.
  • pipx is what I use to install the command

Install

  • Clone this project
  • cd to readlist
  • pipx install .
  • try readlist -h

Setup a config file

{
    "couchdb": "https://courchdb-url.com/readlists",
    "username": "couchdb_user",
    "password": "couchdb_password",
    "channel": "current_channel.json",
    "author":
    {
        "name": "Thejesh GN",
        "url": "https://thejeshgn.com"
    },
    "home_page_url": "https://thejeshgn.com",
    "feed_base_url": "https://example.cdn.com/readlists/{0}",
    "debug": true
}

Details

  • feed_base_url - is where your readers will access the feed
  • Rest of the configuration items are self explanatory

Use

Readlist Client

Usage:
  readlist get
  readlist use <channel>
  readlist new -c <channel> -t <title> -d <description>
  readlist [-c <channel>] [-f] add <url> 

Options:
  -h --help            Show this screen.
  -v --version         Version of this program
  -c <channel>         Select a channel to limit the command to. Not required when the command "use" has been run before.

Credits, Inspirations and Thanks

  • Influenced heavily by BBRF client and have also used the same project structure, code structure etc. Uses the same MIT license.
  • Dave Winer for building feeds and inspiring all of us

License

MIT license

readlist's People

Contributors

thejeshgn avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

Forkers

excloudx6

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.