FOSSPicks
matterhorn
As many of us hunt for open source equivalents to proprietary communication products, the self-hosted Slack-alike, Mattermost, has become a strong contender. At its heart is a similar group and thread-based chat system that feels like IRC 2.0. Unlike chat clients like Telegram and old school IRC and like Slack, you can click on a reply to isolate any conversation linked to that particular thread. It's much easier to mentally parse and understand. Also like Slack, Mattermost's real power comes from an API that facilitates augmentation, whether that's for adding bots that handle things like issue tracking and CI failures, or automatic away notifications, webhooks, and bridges to IRC. It's a system that works incredibly well and can genuinely work with hundreds of consecutive users. But there's one problem … Mattermost doesn't have an official command-line client.
Fortunately, that's where matterhorn comes in. It's a command-line client for connecting to, and interacting with, a Mattermost server. It manages to replicate almost every feature of the desktop and web versions of the official client, which means you can enjoy the same threaded conversation views, the same /
commands, the multicolored array of usernames, and even hot links to online resources. You can create groups, change their modes, reply and message using Markdown, and rebind all keys. There's even tab completion for usernames, channel names, emoji, and internal commands. It feels very much like an IRC client for the 21st century. We do miss being able to split a view to show several groups, which many terminal-based IRC clients can do, and you can't currently customize your away message. But it's much better than the web interface – or any interface – in Slack, (and requires several gigabytes less RAM). Matterhorn's one of the best options if you need an open source communication platform.
Project Website
https://github.com/matterhorn-chat
GitHub browser
starcli
Whatever your feelings might be towards Microsoft's purchase of GitHub, and its subsequent appointment of Ximian/Gnome developer Nat Friedman as CEO, there's no doubt that GitHub is currently the go-to place for open source development. You only have to look at the number of times github.com appears in the URL links on these pages to see it's one of our principle discovery channels for new projects. This is because one of the best things about GitHub, alongside all the code, collaboration, and metadata for a project, is that it also allows people to "star" projects they like. These stars act as a barometer for a project's success, which can then help you browse and discover new projects through the web interface. All of this has been distilled into this brilliant little command-line tool starcli. Simply installed via Python's pip3
, starcli is a portal to the world of GitHub's starred projects. When run without any arguments, it returns a list of the most starred GitHub projects along with a little more information about each project.
For a command-line utility, the presentation is simple, inviting, and informative. You can quickly see how many stars a project has, its elevator pitch description, the number of downloads, and the programming language. This allows you to quickly ascertain whether it's something you're likely to be interested in. By default, the results are returned in a list, but you can change this to a grid or a table with the --layout
argument. You can also filter the results by programming language. Typing starcli --lang python
, for example, will return the most popular Python projects. You can filter further by specifying a data range or by limiting projects to those with only a certain number of stars. It's quick and effective, and a great way of discovering projects without resorting to GitHub's web interface.
Project Website
https://github.com/hedythedev/starcli/
Buy this article as PDF
(incl. VAT)