diff --git a/README.md b/README.md index 2c33907..d290753 100644 --- a/README.md +++ b/README.md @@ -1,78 +1,54 @@ -# Syndication bot for the XMPP communication network +# Syndication bot for XMPP ## Slixfeed -Slixfeed aims to be an easy to use and fully-featured news aggregator bot for XMPP. It provides a convenient access to Blogs, Fediverse (i.e. Akkoma, Mastodon, Misskey, Pleroma etc.) and News websites. +Slixfeed is a news aggregator bot for the XMPP communication network which aims to be easy to use and fully-featured. It provides a convenient access to Blog and News sites. ## XMPP XMPP is the Extensible Messaging and Presence Protocol, a set of open technologies for instant messaging, presence, multi-party chat, voice and video calls, collaboration, lightweight middleware, content syndication, and generalized routing of XML data. -Visit https://xmpp.org/about/ for more information on the XMPP protocol and https://xmpp.org/software/ for list of XMPP clients. +Visit [XMPP](https://xmpp.org/about/) for more information on the XMPP protocol and check the [list](https://xmpp.org/software/) of XMPP clients. Slixfeed is primarily designed for XMPP (aka Jabber), yet it is built to be extended to other protocols. -### Features +## Features -#### Ease +- **Visual interface** - Interactive interface for XMPP using Ad-Hoc Commands, +- **Ease** - Slixfeed automatically scans (i.e. crawls) for syndication feeds of given URL. +- **Export** - Download articles as ePUB, HTML, Markdown and PDF. +- **Filtering** - Filter news items using lists of allow and deny. +- **Multimedia** - Display audios pictures and videos inline. +- **Privacy** - Redirect to alternative back-ends, such as Invidious, Librarian, Nitter, for increased privacy, productivity and security. +- **Portable** - Export and import feeds with a standard OPML file. +- **Simultaneous** - Slixfeed is designed to handle multiple contacts, including groupchats, Simultaneously. -Slixfeed automatically scans (i.e. crawls) for web feeds of given URL. +## Preview -#### Export +### monocles chat -Download articles as ePUB, HTML, Markdown and PDF. +Chat: Add URL +Ad-Hoc: Commands -#### Filtering + -Filter using lists of allow and deny. +### Cheogram -#### Multimedia +Ad-Hoc: Add URL +Ad-Hoc: Settings -Display audios pictures and videos inline. - -#### Privacy - -Redirect to alternative back-ends, such as Invidious, Librarian, Nitter, for increased privacy, productivity and security. - -#### Portable - -Export and import feeds with a standard OPML file. - -#### Simultaneous - -Slixfeed is designed to handle multiple contacts, including groupchats, Simultaneously. + ## Getting Started ### Install -Choose one of the following installation methods. - -#### Using pip inside venv +It is possible to install Slixfeed using pip inside venv. ``` $ python3 -m venv .venv $ source .venv/bin/activate $ pip install git+https://gitgud.io/sjehuda/slixfeed -``` - -#### Using pipx - -``` -$ pipx install git+https://gitgud.io/sjehuda/slixfeed -``` - -### Upgrade - -Upgrade using the following command. - -``` -$ pip install --upgrade slixfeed -``` - -### Start - -``` $ slixfeed ``` @@ -81,27 +57,30 @@ $ slixfeed - Add the bot to contact list and follow it instructions. - Send command `help` or `commands` for a list of commands. -## Roadmap +## Recommended Clients -- Add service interface; -- Improve asynchronism hadling; -- Improve logging and error handling; -- Add daemon interface; -- Add HTML support (XHTML-IM); -- Add feed history tables of last week and last month. +Slixfeed works with any XMPP chat client; if you want to make use of the visual interface Slixfeed has to offer (i.e. Ad-Hoc Commands), then you are advised to use [Cheogram](https://cheogram.com), [Converse](https://conversejs.org), [Gajim](https://gajim.org), [monocles chat](https://monocles.chat), [Movim](https://mov.im), [Poezio](https://poez.io), [Psi](https://psi-im.org) or [Psi+](https://psi-plus.com). + +### Support + +Please join our support groupchats whether you want help, discuss new features or just greet us. + +[Main](xmpp:slixfeed@chat.woodpeckersnest.space?join) (International) + +[Deutsch](xmpp:slixfeed@conference.miharu.dedyn.io?join) (German) ## Authors -- [Laura](xmpp:lauranna@404.city?message) (Co-Author, Instructor and Mentor). - [Schimon](xmpp:sch@pimux.de?message) (Author). +- [Laura](xmpp:lauranna@404.city?message) (Co-Author, Instructor and Mentor). ## Acknowledgment -Special thank you to Mrs. Lapina who instructed me all the way to complete this, in addition to significant code fixes. +Special thank you to Mrs. Lapina who instructed me during months to complete this, in addition to significant code fixes. -Laura, I thank you greatly for your encouragement, time and help. This bot would not have existed without you. +Laura, I thank you greatly for your encouragement, time and help. This software would not have existed without you. -May this bot be a life changing factor to people the world over. +May this software be a life changing factor to people the world over. ## License @@ -109,15 +88,15 @@ MIT license. ## Copyright -- Laura Lapina 2022 - 2023 - Schimon Zackary 2022 - 2024 +- Laura Lapina 2022 - 2023 ## Similar Projects -Please visit our friends who offer different approach to convey RSS to XMPP. +Please visit our friends who offer different approach to convey syndication feeds to XMPP. * [AtomToPubsub](https://github.com/imattau/atomtopubsub) -RSS feeds as XMPP Pubsub Nodes. +Syndication feeds as XMPP Pubsub Nodes. * [err-rssreader](https://github.com/errbotters/err-rssreader) A port of old Brutal's RSS Reader for Errbot. @@ -125,8 +104,17 @@ A port of old Brutal's RSS Reader for Errbot. * [feed-to-muc](https://salsa.debian.org/mdosch/feed-to-muc) An XMPP bot which posts to a MUC (groupchat) if there is an update in newsfeeds. -* [JabRSS](http://www.jotwewe.de/de/xmpp/jabrss/jabrss_en.htm) -Never miss a headline again! JabRSS is a simple RSS (RDF Site Summary) headline notification service for Jabber. +* [Jabber RSS Transport](https://jabberworld.info/Jabber_RSS_Transport) +Syndication feeds as contacts. + +* [JabRSS](https://dev.cmeerw.org/Projects/jabrss) by Christof +A simple syndication headline notification service for Jabber/XMPP. + +* [JabRSS](http://www.jotwewe.de/de/xmpp/jabrss/jabrss_en.htm) by Jens W. Wulf +Never miss a headline again! JabRSS is a simple syndication headline notification service for Jabber. * [Morbot](https://codeberg.org/TheCoffeMaker/Morbot) -Morbo is a simple Slixmpp bot that will take new articles from listed RSS feeds and send them to assigned XMPP MUCs (groupchats). +Morbo is a simple Slixmpp bot that will take new articles from listed syndication feeds and send them to assigned XMPP MUCs (groupchats). + +* [XMPP Bot](https://github.com/nioc/xmpp-bot) +An XMPP bot for making the link between XMPP conversations and webhooks. diff --git a/slixfeed/screenshots/adhoc_add_url.png b/slixfeed/screenshots/adhoc_add_url.png new file mode 100644 index 0000000..0ecee1c Binary files /dev/null and b/slixfeed/screenshots/adhoc_add_url.png differ diff --git a/slixfeed/screenshots/adhoc_commands.png b/slixfeed/screenshots/adhoc_commands.png new file mode 100644 index 0000000..472c558 Binary files /dev/null and b/slixfeed/screenshots/adhoc_commands.png differ diff --git a/slixfeed/screenshots/adhoc_settings.png b/slixfeed/screenshots/adhoc_settings.png new file mode 100644 index 0000000..53c29af Binary files /dev/null and b/slixfeed/screenshots/adhoc_settings.png differ diff --git a/slixfeed/screenshots/chat_add_url.png b/slixfeed/screenshots/chat_add_url.png new file mode 100644 index 0000000..09a45ee Binary files /dev/null and b/slixfeed/screenshots/chat_add_url.png differ