Deciding between Rust or Go for desktop applications

This page summarizes the projects mentioned and recommended in the original post on /r/golang

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • fyne

    Cross platform GUI toolkit in Go inspired by Material Design

  • While I may be a bit biased being working on the project myself, I can suggest that you give Go + Fyne (https://github.com/fyne-io/fyne) a try. The barrier is lower than any other desktop toolkit I know of and that, combined with great cross-platform support, made me start using it in the first place (and later started contributing upstream and so on).

  • go-gui-projects

    A list of Go GUI projects

  • Here's a list of Go UI libraries and here's an article about Rust UI libraries. In general, Go has a broader ecosystem, however, Rust has Tauri, which, if you're coming from a web background, will be right up your alley, so you'll be able to put stuff on the screen, while gradually learning about Rust and set up RPCs in the Rust part of your application that you can then call from JS.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • Element

    A glossy Matrix collaboration client for the web.

  • Another example is Element.

  • kubectl

    Issue tracker and mirror of kubectl code

  • However, I would encourage people to take a look at what the code looks like before assuming the Go developer experience on this was positive. Bear in mind that's just the top level kubectl command and some helper functions, the subcommand definitions take up a several more files split into a few more packages. Then you're still not even done, because code that uses the parsed flags still has to redundantly check things that couldn't be enforced at the type level, something Go folks like to pretend is a good thing for some reason.

  • starship

    ☄🌌️ The minimal, blazing-fast, and infinitely customizable prompt for any shell!

  • Folks open to using gdu might like to try dust (6k stars), or even erdtree (1.4k stars) which is too recent to show up on lists like this and still a bit behind on stars. A lot of people seem to use starship (33k stars) though I'm personally oldschool on prompts. There are many other items on that list I'm not motivated to check.

  • dust

    A more intuitive version of du in rust

  • Folks open to using gdu might like to try dust (6k stars), or even erdtree (1.4k stars) which is too recent to show up on lists like this and still a bit behind on stars. A lot of people seem to use starship (33k stars) though I'm personally oldschool on prompts. There are many other items on that list I'm not motivated to check.

  • erdtree

    A modern, cross-platform, multi-threaded, and general purpose filesystem and disk-usage utility that is aware of .gitignore and hidden file rules.

  • Folks open to using gdu might like to try dust (6k stars), or even erdtree (1.4k stars) which is too recent to show up on lists like this and still a bit behind on stars. A lot of people seem to use starship (33k stars) though I'm personally oldschool on prompts. There are many other items on that list I'm not motivated to check.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts