mirror of
https://codeberg.org/Ewen/rudibridge.git
synced 2024-12-22 03:02:32 +00:00
api | ||
.env.dev | ||
.gitignore | ||
docker-compose.yml | ||
LICENSE | ||
README.md |
Rudibridge
A rudimentary RSS bridge for changing web pages that don't have an RSS feed.
Architecture and usage
This (personal side-) project can be used to build an RSS feed from webpages that don't have any.
This project consists of two parts :
- a back-end, written in Flask, that responds an RSS feed to GET requests with specific parameters
- a front-end, written in Vue.js, a simple wrapper/helper to write the GET requests
Parameters
**url**
(required): the URL of the page**article**
(required): the HTML tag encapsulating a feed item**title**
(required): the HTML tag of the article title**articleClass**
: a class name helping to filter the article element**titleClass**
: a class name helping to filter the title element**section**
: the HTML tag encapsulating the group of items. If not given, the entire page will be used**content**
: the HTML tag encapsulating the content, or description, of the item. The default isp
**contentClass**
: a class name helping to filter the content element**link**
: the HTML tag encapsulating the link to the item. The default isa
.**linkClass**
: a class name helping to filter the link element**datetime**
: the HTML tag encapsulating the date and time of the item. Any date and time format can be used, the parser will try to understand the format.**datetimeClass**
: a class name helping to filter the datetime element**author**
: the HTML tag encapsulating the author of the item**authorClass**
: a class name helping to filter the author element
Installation
Using Docker, for development purposes
You will need to have Docker and Docker Compose installed.
Clone the repository, go to its root and run docker-compose up -d
.
To use the backend directly, go to the page http://localhost:8080/api/feed/ and start adding parameters!
For production
To do
Examples
(as of May 2024, the web pages can change over time and break the generated feeds)
- http://localhost:8080/api/feed/?url=https://www.ouest-france.fr/bretagne/rennes-35000/&title=h2&titleClass=titre&article=article&datetime=time&link=a&linkClass=titre-lien§ion=section§ionClass=liste-articles&content=p&contentClass=chapeau&datetime=time&datetimeClass=meta-time
- http://localhost:8080/api/feed/?url=ewen.korr.bzh/fr/cv/&article=div&articleClass=card&title=h4&content=div&contentClass=details&link=None