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

Mattermost is an open source Slack alternative, and matterhorn is a rather excellent command-line client.

GitHub browser


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 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

A feature we'd love to see in starcli is the repository clone address for each result.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • Animation with OpenToonz

    OpenToonz is a professional animation tool for comic and manga artists.

  • Krita 3.0

    Krita, a free sketching and painting program, has new features and improvements in version 3.0.

  • FOSSPicks

    Graham Morrison tears himself away from updating Arch Linux to search for the best new free software.

  • FOSSPicks

    This month Graham looks at Kushview Element, Artisan, NetSurf, SimulIDE, Oh My Zsh, and more!

  • FOSSPicks

    In between finding the hottest FOSS picks, Graham has rebuilt his BrewPi and is now brewing a strong winter ale. Hic.

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More