Skip to content
This repository has been archived by the owner on Mar 10, 2023. It is now read-only.
/ api.rss Public archive

RSS as RESTful. This service allows you to transform RSS feed into an awesome API.

License

Notifications You must be signed in to change notification settings

davidesantangelo/api.rss

Repository files navigation

License contributions welcome Open Source Helpers

API.RSS — ⚠️ This project is no longer maintained!!!! ⚠️

Since this project is no longer maintained, please consider using the new project davideasntangelo/dato.rss!

API.RSS

The best RESTful RSS experience you can find.

API.RSS turns feed data into an awesome API. The API simplifies how you handle RSS, Atom, or JSON feeds. You can add and keep track of your favourite feed data with a simple, fast and clean REST API. All entries are enriched by Machine Learning and Semantic engines.

Search Engine

Take a look at a little search engine developed in React around this API.

www.datorss.com

Feedback is welcome on its repository.

Example

curl 'https://<domain>/search/entries?q=news' | json_pp

{
  "data": [
    {
      "id": "86b0f829-e300-4eef-82e1-82f34d03aff6",
      "type": "entry",
      "attributes": {
        "title": "\"Pandemic, Infodemic\": 2 Cartoon Characters Battling Fake News In Assam",
        "url": "https://www.ndtv.com/india-news/coronavirus-pandemic-infodemic-2-cartoon-characters-battling-fake-news-in-assam-2222333",
        "published_at": 1588448805,
        "body": "An English daily in Assam's Guwahati has been publishing a cartoon strip to tackle the fake news related to the coronavirus pandemic. The two central characters- \"Pandemic and Infodemic\"- are being...<img src=\"http://feeds.feedburner.com/~r/NDTV-LatestNews/~4/lEmH201Q8jI\" height=\"1\" width=\"1\" alt=\"\"/>",
        "text": "An English daily in Assam's Guwahati has been publishing a cartoon strip to tackle the fake news related to the coronavirus pandemic. The two central characters- \"Pandemic and Infodemic\"- are being...",
        "categories": [
          "all india"
        ],
        "sentiment": null,
        "parent": {
          "id": "c97bdae6-b5d1-4966-b9f3-615e29d4d47d",
          "title": "NDTV News  -  Special",
          "url": "feed:http://feeds.feedburner.com/NDTV-LatestNews",
          "rank": 99
        },
        "tags": []
      },
      "relationships": {
        "feed": {
          "data": {
            "id": "c97bdae6-b5d1-4966-b9f3-615e29d4d47d",
            "type": "feed"
          }
        }
      }
    },
  ]
}

Wiki

All documentation is in the Wiki section. Feel free to make it better, of course.

https://github.com/davidesantangelo/feedirss-api/wiki

Built With

  • Ruby on Rails — Our back end API is a Rails app. It responds to requests RESTfully in JSON.
  • PostgreSQL — Our main data store is in Postgres.
  • Redis — We use Redis as a cache and for transient data.
  • Feedjira — Feedjira is a Ruby library designed to parse feeds.
  • ElasticSearch — Elasticsearch is a distributed, RESTful search and analytics engine.
  • Dandelion — Semantic Text Analytics as a service.
  • Sidekiq — Simple, efficient background processing for Ruby.
  • FastJSONAPI — A lightning fast JSON:API serializer for Ruby Objects.
  • Searchkick — Intelligent search made easy.

Plus lots of Ruby Gems, a complete list of which is at /master/Gemfile.

Buy me a coffee

If you want to support me in server costs to keep FeediRSS free and up, consider buying me a coffee! Thanks!

Buy Me A Coffee

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/davidesantangelo/feedirss-api. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.

License

The gem is available as open source under the terms of the MIT License.