Winds-Ubuntu-Podcast

Winds – RSS and Podcast software created using React / Redux / Node

Winds is billed as a beautiful, modern, open-source RSS Reader and Podcast app. It’s certainly garnishing attention among open source enthusiasts. It’s picked up over 5,000 stars on GitHub, so I’ve been putting this JavaScript software through its paces.

Winds is cross-platform software. There are desktop apps available for Linux, macOS and Windows. There’s also a web version. The software is released under an open source license (BSD-3-Clause). It’s developed by GetStream.io (Stream), a Venture Capital backed company based in the US and the Netherlands.

I recently wrote about CPod, an open source application podcast player built with web technologies – JavaScript and Electron. Winds also uses web technologies, and a lot more.

So what’s the motivation behind developing Winds? Winds started out as a simple example application for the Stream API. But it’s development became an effort to revive the flagging open standard of RSS and encourage publications to embrace open standards and RSS.

Installation

The developers don’t offer a package for Ubuntu or any specific distribution. And while I carefully went through their GitHub repository, I couldn’t find any clear instructions on how to compile the source code. I’m certainly not an expert at compiling software, but I usually manage to compile most software. Maybe the lack of distro specific packages is a deliberate policy by the developers. Given the frequency of the releases, and the number of Linux distributions, it’s probably a wise decision.

However, there is an official AppImage. This is essentially a self-mounting disk image that contains the application and everything it needs to run on the system. It allows you to run the application without installing on the system. There’s also a snap available. There’s quite a few differences between AppImage and snap, but they both have one thing in common – simplicity. There’s no worrying about incompatible libraries, both are self-contained, separate from the system. Personally, I tend to steer away from these package formats for a variety of reasons.

Before you can use the software you need to create a Winds account. I’d prefer some integration with social media sites here.

Key Features of Winds

  • Provides both a personalized feed using machine learning powered by Steam, in addition to a chronological view. The personalized feed view attempts to promote the most interesting content.
  • Uses Algolia for searching.
  • Video support for YouTube and Ted.
  • OPML imports – export your OMPL file from your current RSS manager and transfer it over to Winds.
  • Option to skip the on-board process.
  • Cross-platform support including a web version.

Here’s a couple of images of Winds in action.

Winds

Winds-Ubuntu-Podcast

My (random) observations

These comments apply to the AppImage version 2.1.47.

Let’s start with some probably insignificant annoyances. The menu bar is largely inaccessible to keyboard users, it’s laggy and almost completely pointless. For example File / About offers no output, the Window menu is redundant. And hopefully the developers will remove the GitHub graphic – it’s just unnecessary clutter.

But there are lots of positives. Most importantly, I’m quite taken with the app, marrying a good podcast player with a competent RSS reader. The layout is polished and well thought out. Being able to import my OPML file is a necessity for me, so the app ticks that box.

Winds relies on a whole bunch of interesting technologies. Probably too many though. If you need suggested feeds, the machine learning feature is pretty nifty.

The software is far from stable. It crashed too many times for my liking.

Technology

Let’s capture the technologies that the software uses; some of them might be new to you.

  • Stream – an API for building activity feeds that enables development teams to build personalized activity feeds. Stream’s machine learning adapts to a user’s preferences. The follow suggestions and the list of articles from the feeds you follow is powered by Stream.
  • React – a JavaScript library for building user interfaces.
  • Redux – a predictable state container for JavaScript apps that helps write applications that behave consistently, run in different environments (client, server, and native), and are easy to test.
  • Node.js – a JavaScript runtime built on Chrome’s V8 JavaScript engine.
  • Express – a minimal and flexible Node.js web application framework that provides a robust set of features for web and mobile applications.
  • Babel – a JavaScript compiler that converts ECMAScript 2015+ code into a backwards compatible version of JavaScript.
  • Bull – a Redis-based queue for Node.
  • Electron – a library developed by GitHub for building cross-platform desktop applications with HTML, CSS, and JavaScript.
  • Algolia – a powerful hosted search API. It’s used for quick and relevant search.
  • MongoDB Atlas – provides a Database as a Service, and serves as the backend datastore for Winds.
  • SendGrid – used for email such as password resets.
  • Mercury – used to parse articles.
  • AWS – provides the hosting for the web version.

Summary

Does Winds replace the finest standalone podcast players and RSS viewers? Currently not by a country mile, but it’s definitely worth monitoring its development.

Website: getstream.io/winds/
Support: GitHub Code Repository
Developer: GetStream.io (Stream)
License: BSD 3-Clause “New” or “Revised” License

Winds is written in JavaScript. Learn JavaScript with our recommended free books and free tutorials.

Winds features in our Group Test: Best Podcast tools. Learn about other excellent, free, open source podcast software.

Ongoing series
Linux for StartersNew to Linux? Read our Linux for Starters series.
Free and Open Source SoftwareThe largest compilation of the best free and open source software in the universe. Supplied with our legendary ratings charts.
Linux ReviewsHundreds of in-depth reviews offering our unbiased and expert opinion on software.
Alternatives to GoogleAlternatives to Google's Products and Services examines your options to migrate from the Google ecosystem with open source Linux alternatives.
MicrosoftAlternatives to Microsoft's Products and Services recommends open source Linux software.
Linux System ToolsEssential Linux system tools looks at small, indispensable utilities, useful for system administrators as well as regular users.
Linux ProductivityLinux utilities to maximise your productivity. Small, indispensable tools, useful for anyone running a Linux machine.
Home Computer EmulatorsHome computers became commonplace in the 1980s. Emulate home computers including the Commodore 64, Amiga, Atari ST, ZX81, Amstrad CPC, and ZX Spectrum.
Now and ThenNow and Then examines how promising open source software fared over the years.
Linux at HomeLinux at Home looks at a range of home activities where Linux can play its part, making the most of our time at home, keeping active and engaged.
Linux CandyLinux Candy opens up to the lighter side of Linux. Have some fun!
Best Free Android AppsBest Free Android Apps. There's a strict eligibility criteria for inclusion in this series
Programming BooksThese best free books accelerate your learning of every programming language
Programming TutorialsThese free tutorials offer the perfect tonic to the free programming books series
Stars and StripesStars and Stripes is an occasional series looking at the impact of Linux in the USA
Share this article

Share your Thoughts

This site uses Akismet to reduce spam. Learn how your comment data is processed.