RSS reader TUI application built with Textual
Project description
RssTUI - RSS protocol inside your terminal
This is made for Summer of Making 2025! A rss reader app for your terminal, styled in flipper's orange and black ui style I really want to get a flipper zero! And im only like 300 shells short!
Table of Contents
What is this & How it's made
Idea
So i asked people in Hackclub's slack for ideas, on what i can make for SoM (summer of making). And Youssef gave an idea to make an app with Textual. So here i am!
How it's made
The project uses Python 3.11.4, Textual and a Venv python virtual enviroment
Textual draws clickable and interactable User Interfaces inside your terminal with symbols! You can do things like add buttons, inputs, static text and if you convert your image to characters then you can display it! Learn more on Textual wiki: https://textual.textualize.io/
What is this
Firts let's go throught the basics: What Is RSS?
RSS - [ereses]: Really Simple Syndication -or- RDF Site Summary
It's a simple protocol to provide short snippets for sites/news sites/blogs whatever you want tbh. I guess it could be even made into some sort of api response? Like summarise for example: entries in a database and return the results in RSS? Will probably look into something like this.
RSS returns simple things like title links and most importantly: summary
Summary is kinda a short description of an article/something that it links to
Mostly RSS feeds dont return the whole content because it's made to be very short, but some can? idk prob
A lot of sites use rss! Here are some of the examples! -- built into rsstui --
- TechCrunch: https://techcrunch.com/feed.xml
- NYT Global: https://rss.nytimes.com/services/xml/rss/nyt/World.xml (has feeds for different subpages but not all)
- Reddit!: All sub-reddits have rss feeds, just add
.rssto the end of the link like https://www.reddit.com/r/JDVancePics.rss UPDATE: Reddit feeds seem to have a really really small limit on rss requests, so they dont work reliably - And other! like https://theverge.com/rss.xml https://xkcd.com/rss.xml
It's pretty cool huh?
Installation
Easy Installation from PyPI (Recommended)
PyPi is a great service to host python scripts and packages. Here's how to install it:
First u need to create some sort of folder for my app and activate the venv
mkdir rsstui
Then activate env
python3 -m venv venv
And
source venv/bin/activate
Note: If u use fish then add .fish to the end of the command so it looks like: source venv/bin/activate.fish
Now there's easy part
pip install rsstui
And then run
rsstui
Congrtats u so smart
Development Installation
Want to contribute or run from source? Here's how:
Linux! (tested, works 100%)
The app was written on Linux Mint. Python enviroment was installed with pyenv [link to github], which is a very good way to manage Python versions, it even supports custom python compilers, check it out!!!
Alright Here is how: First clone the repo onto your computer
git clone https://github.com/yehorscode/RssTUI RssTUI
[Optional] If you have a pyenv enviroment i highly reccomend to install 3.11.4 with this command (takes 2-4 mins)
pyenv install 3.11.4
Then cd into your folder
cd RssTUI
And if you have pyenv activate your 3.11.4 installation with
pyenv shell 3.11.4
Remember how i mentioned venv? It is a virtual enviroment you need to activate it
Bash:
source venv/bin/activate
Fish:
source venv/bin/activate.fish
Csh:
source venv/bin/activate.csh
Now all that's left is install Textual
pip install -r requirements.txt
Wait some time for it to finish, then you can run the app with:
python3 rsstui/app.py
Windows (not fully tested)
Just use WSL, learn how to install and use it: Microsoft docs link For using it inside wsl PLEASE use Windows Terminal and not cmd or powershell consoles. Wundows Terminal is a standalone app but it works a lot better then the other ones + looks very cool see microsoft windows terminal documentation
MacOS
I have never owned ANY mac device, so i do not know how does it know, and how to activate enviroments, sadly i can't reccomend anything. BUT BUT BUT the Linux methods may work. Please try them! Use bash methods In theory mac os and linux both use unix, so installing the app should work right out of the box and maybe even with the auto installer
Running
If installed via PyPi just run
rsstui
If u did it with the manual masochist method do:
python3 rsstui/app.py
Simple and clean! 🚀
Please vote for me!!
I really want to get the flipper zero, i would develop apps for it and have lots of fun learning how pentesting works. Thanks! If u have issues just find me
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file rsstui-0.3.0.tar.gz.
File metadata
- Download URL: rsstui-0.3.0.tar.gz
- Upload date:
- Size: 15.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
05df40dbb593ad7178229c0bd705e208c8121a022580a42de8ef3035f0a3ba47
|
|
| MD5 |
5a6b78c02553dfa7cbaf38d9f13d2aa4
|
|
| BLAKE2b-256 |
75e37eb979fa9b6694ba00b999207ef3f5f2c97e9df137b12f12085af791750f
|
File details
Details for the file rsstui-0.3.0-py3-none-any.whl.
File metadata
- Download URL: rsstui-0.3.0-py3-none-any.whl
- Upload date:
- Size: 12.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a7af6a52fedd012f87a3994d562375a429ae97d36a78654a158222c408a8b083
|
|
| MD5 |
b5ade9ce5b3c7cc2fedf86bbe3ab2f75
|
|
| BLAKE2b-256 |
46df7bf3b0a9af27295ff56462a6555a85c360ff5009b551ed781e88106fbcf4
|