Code Monkey home page Code Monkey logo

news2reader's Introduction

news2reader

Server that offers webpages from popular news aggregators as EPUB files via ODPS, for consumption via e-reader software (such as KOReader).

What it does

Many e-readers and other e-book reading software support browsing and downloading e-books from sources called OPDS Catalogs. (Wikipedia) (Supported software)

news2reader acts as an OPDS Catalog, but instead of listing books it lists current articles from sources like Hacker News, Tildes.net, and Pocket. When you select an article for download, the article is automatically converted into a readable EPUB file and downloaded to your device.

Screenshots

1 2 3
4 5 6
7 8 9

How it works

news2reader is powered mainly by:

How to run it

Run via Docker

Docker images are available for amd64, arm/v7, and arm64/v8 architectures.

docker run --expose 8080 bhspitmonkey/news2reader:main

Or, to add to a Docker Compose stack:

version: "3.9"
services:
  server:
    image: bhspitmonkey/news2reader:main
    container_name: news2reader
    restart: unless-stopped
    volumes:
      - ./config/:/root/.config/news2reader/
    ports:
      - 8080:8080

You will need to mount a config directory at /root/.config/news2reader/ in the container (as shown above).

Run via Node.js

(Tested using Node 22.x)

yarn install
yarn start

How to use it

Start by opening the homepage in a web browser to make sure the application is running as expected. This might be at the URL http://localhost:8080, but this could vary based on how you've configured things so be sure to replace localhost:8080 in these examples with the appropriate host and port in your situation.

You should see a simple status page including instructions for (optionally) setting up a Pocket account.

Next, you'll need to add a new ODPS catalog into whichever e-reader software you are using. If using KOReader, you navigate from the main screen to ๐Ÿ”Ž ยป ODPS catalog, then tap the "+" icon in the corner to begin adding a new catalog. The catalog URL is just the URL you're running the server at, plus /odps at the end (for example: http://localhost:8080).

How to build it

Run the development server (which will hot-reload and recompile on the fly):

yarn install
yarn run dev

License

MIT (see LICENSE.md for the full terms)

news2reader's People

Contributors

bhspitmonkey avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  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.