Browse free open source Go Terminals and projects below. Use the toggles on the left to filter open source Go Terminals by OS, license, language, programming language, and project status.

  • Custom VMs From 1 to 96 vCPUs With 99.95% Uptime Icon
    Custom VMs From 1 to 96 vCPUs With 99.95% Uptime

    General-purpose, compute-optimized, or GPU/TPU-accelerated. Built to your exact specs.

    Live migration and automatic failover keep workloads online through maintenance. One free e2-micro VM every month.
    Start Free
  • Fully Managed MySQL, PostgreSQL, and SQL Server Icon
    Fully Managed MySQL, PostgreSQL, and SQL Server

    Automatic backups, patching, replication, and failover. Focus on your app, not your database.

    Cloud SQL handles your database ops end to end, so you can focus on your app.
    Start Free
  • 1
    ipatool

    ipatool

    Command-line tool that allows searching and downloading app packages

    ipatool is a command line tool that allows you to search for iOS apps on the App Store and download a copy of the app package, known as an ipa file. Supported operating system (Windows, Linux or macOS). Apple ID is set up to use the App Store. To authenticate with the App Store, use the auth command. To search for apps on the App Store, use the search command. To obtain a license for an app, use the purchase command. To download a copy of the ipa file, use the download command.
    Downloads: 183 This Week
    Last Update:
    See Project
  • 2
    cheat

    cheat

    Create and view interactive cheatsheets on the command-line

    cheat allows you to create and view interactive cheatsheets on the command line. It was designed to help remind *nix system administrators of options for commands that they use frequently, but not frequently enough to remember. Flags may be combined in intuitive ways. Example: to search sheets on the "personal" cheatpath that are tagged with "networking" and match a regex. Cheatsheets are plain-text files with no file extension, and are named according to the command used to view them. Cheatsheet text may optionally be preceded by a YAML frontmatter header that assigns tags and specifies syntax. Cheatsheets are stored on "cheatpaths", which are directories that contain cheatsheets. Cheatpaths are specified in the conf.yml file. It can be useful to configure cheat against multiple cheatpaths. A common pattern is to store cheatsheets from multiple repositories on individual cheatpaths.
    Downloads: 78 This Week
    Last Update:
    See Project
  • 3
    sh

    sh

    A shell parser, formatter, and interpreter with bash support

    A shell parser, formatter, and interpreter. Supports POSIX Shell, Bash, and mksh. Requires Go 1.16 or later. To parse shell scripts, inspect them, and print them out, see the syntax examples. For high-level operations like performing shell expansions on strings, see the shell examples. shfmt formats shell programs. See canonical.sh for a quick look at its default style. shfmt formats shell programs. If the only argument is a dash (-) or no arguments are given, standard input will be used. If a given path is a directory, all shell scripts found under that directory will be used. When indexing Bash associative arrays, always use quotes. The static parser will otherwise have to assume that the index is an arithmetic expression. Some builtins like export and let are parsed as keywords. A subset of the Go packages are available as an npm package called mvdan-sh.
    Downloads: 40 This Week
    Last Update:
    See Project
  • 4
    Lazygit

    Lazygit

    Simple terminal UI for git commands

    You've heard it before, git is powerful, but what good is that power when everything is so damn hard to do? Interactive rebasing requires you to edit a goddamn TODO file in your editor? Are you kidding me? To stage part of a file you need to use a command-line program to step through each hunk and if a hunk can't be split down any further but contains code you don't want to stage, you have to edit an arcane patch file by hand? Are you KIDDING me?! Sometimes you get asked to stash your changes when switching branches only to realize that after you switch and unstash that there weren't even any conflicts and it would have been fine to just check out the branch directly? If you're a mere mortal like me and you're tired of hearing how powerful git is when in your daily life it's a powerful pain in your ass, lazygit might be for you.
    Downloads: 38 This Week
    Last Update:
    See Project
  • $300 Free Credits to Build on Google Cloud Icon
    $300 Free Credits to Build on Google Cloud

    New customers can spin up VMs, build with AI, and query data at no cost.

    Put your $300 in credit toward real workloads, then keep building with free monthly usage for 20+ products. No commitment and no charge until you upgrade.
    Start Free
  • 5
    syft

    syft

    CLI tool and library for generating a Software Bill of Materials

    CLI tool and library for generating a Software Bill of Materials from container images and filesystems. syft is a CLI tool and Go library for generating a Software Bill of Materials (SBOM) from container images and filesystems. Exceptional for vulnerability detection when used with a scanner like Grype. Generates SBOMs for container images, filesystems, archives, and more to discover packages and libraries. Supports OCI, Docker and Singularity image formats. Linux distribution identification. Works seamlessly with Grype (a fast, modern vulnerability scanner). Able to create signed SBOM attestations using the in-toto specification. Convert between SBOM formats, such as CycloneDX, SPDX, and Syft's own format.
    Downloads: 25 This Week
    Last Update:
    See Project
  • 6
    arduino-cli

    arduino-cli

    Arduino command line tool

    Arduino CLI is an all-in-one solution that provides Boards/Library Managers, sketch builders, board detection, uploader, and many other tools needed to use any Arduino compatible board and platform from the command line or machine interfaces. In addition to being a standalone tool, Arduino CLI is the heart of all official Arduino development software (Arduino IDE, Arduino Web Editor). The script requires sh, which is always available on Linux and macOS. sh is not available by default on Windows, though it is available as part of Git for Windows (Git Bash). If you don't have sh available, use the "Download" installation option. If you would like to use the arduino-cli command from any location, install Arduino CLI to a directory already in your PATH or add the Arduino CLI installation path to your PATH environment variable.
    Downloads: 20 This Week
    Last Update:
    See Project
  • 7
    bombardier

    bombardier

    Fast cross-platform HTTP benchmarking tool written in Go

    bombardier is an HTTP(S) benchmarking tool. It is written in Go programming language and uses excellent fast HTTP instead of Go's default HTTP library, because of its lightning-fast performance. With bombardier v1.1 and higher, you can now use the net/HTTP client if you need to test HTTP/2.x services or want to use a more RFC-compliant HTTP client.
    Downloads: 19 This Week
    Last Update:
    See Project
  • 8
    webhook

    webhook

    webhook is a lightweight incoming webhook server to run shell commands

    webhook is a lightweight configurable tool written in Go, that allows you to easily create HTTP endpoints (hooks) on your server, which you can use to execute configured commands. You can also pass data from the HTTP request (such as headers, payload or query variables) to your commands. webhook also allows you to specify rules which have to be satisfied in order for the hook to be triggered. For example, if you're using Github or Bitbucket, you can use webhook to set up a hook that runs a redeploy script for your project on your staging server, whenever you push changes to the master branch of your project. If you use Mattermost or Slack, you can set up an "Outgoing webhook integration" or "Slash command" to run various commands on your server, which can then report back directly to you or your channels using the "Incoming webhook integrations", or the appropriate response body.
    Downloads: 19 This Week
    Last Update:
    See Project
  • 9
    micro

    micro

    A modern and intuitive terminal-based text editor

    Micro's number one feature is being easy to install (it's just a static binary with no dependencies) and easy to use. Use a simple json format to configure your options and rebind keys to your liking. If you need more power, you can use Lua to configure the editor further. Micro supports over 75 languages and has 7 default colorschemes to choose from. Micro supports 16, 256, and truecolor themes. Syntax files and colorschemes are also very simple to make. Micro has support for Sublime-style multiple cursors, giving you lots of editing power directly in your terminal. Micro supports a full-blown plugin system. Plugins are written in Lua and there is a plugin manager to automatically download and install your plugins for you. Micro's keybindings are what you would expect from a simple-to-use editor. You can also rebind any of the bindings without problem in the bindings.json file. Micro has full support for the mouse.
    Downloads: 17 This Week
    Last Update:
    See Project
  • Paessler: Easy to Use With Enterprise Power. Free Trial Icon
    Paessler: Easy to Use With Enterprise Power. Free Trial

    A low-code dashboard makes monitoring intuitive for any admin, while scripting and custom sensors give experts full control.

    You shouldn't have to choose between a monitoring tool that's easy to use and one that's powerful enough for a complex environment. PRTG's low-code interface lets any admin build dashboards, set alerts and monitor devices without scripting, while custom sensors and full API access are there when your team needs deeper control. One platform, no compromise. Download a free 30-day trial now.
    Get Free Download
  • 10
    Amazon EC2 Instance Selector

    Amazon EC2 Instance Selector

    A CLI tool and go library which recommends instance types

    A CLI tool and go library which recommends instance types based on resource criteria like vcpus and memory. There are over 270 different instance types available on EC2 which can make the process of selecting appropriate instance types difficult. Instance Selector helps you select compatible instance types for your application to run on. The command-line interface can be passed resource criteria like vcpus, memory, network performance, and much more and then return the available, matching instance types. If you are using spot instances to save on costs, it is a best practice to use multiple instances types within your auto-scaling group (ASG) to ensure your application doesn't experience downtime due to one instance type being interrupted. Instance Selector will help to find a set of instance types that your application can run on.
    Downloads: 15 This Week
    Last Update:
    See Project
  • 11
    Wave Terminal

    Wave Terminal

    An open-source, cross-platform terminal for seamless workflows

    Wave is an open-source AI-native terminal built for seamless workflows. Wave isn't just another terminal emulator; it's a rethink on how terminals are built. Wave combines the command line with the power of the open web to help veteran CLI users and new developers alike. Keep development moving forward without the copy, pasting, saving, and exporting headache. Built on an open web framework that is fully extensible. Quickly edit code on a local or remote machine with the same editor that powers VSCode. Great alternative to vim for new terminal users or quick updates. Preview Markdown files, render CSVs in a table (for copy/paste that works), and see JSON in a collapsable tree view right inline in your terminal. View any .jpeg, .png, .gif and more without sending the image to an external browser. Wave terminal sessions are persistent. Your sessions are restored through disconnects and reboots (even of the remote machine).
    Downloads: 15 This Week
    Last Update:
    See Project
  • 12
    fq

    fq

    jq for binary formats

    Tool, language, and decoders for working with binary data. fq is inspired by the well-known jq tool and language and allows you to work with binary formats the same way you would using jq. In addition, it can also present data similar to a hex viewer, transform, slice, and concatenate binary data, supports nested formats, and has an interactive REPL with auto-completion. It was originally designed to query, inspect and debug codecs and metadata in media files and containers like mp4, FLAC, mp3, and jpeg. But has since been extended to support a variety of formats like executables, and packet captures including TCP reassembly and serialization formats like ASN1 BER, Avro, CBOR, protobuf, and a lot more. In summary, it aims to be something like jq, hexdump, dd and gdb combined into one. fq is still early in development so things might change, be broken, or do not make sense. That also means that there is a great opportunity to help out!
    Downloads: 13 This Week
    Last Update:
    See Project
  • 13
    cli package

    cli package

    A simple, fast, and fun package for building command line apps in Go

    cli is a simple, fast, and fun package for building command-line apps in Go. The goal is to enable developers to write fast and distributable command-line applications in an expressive way. Usage documentation exists for each major version. Don't know what version you're on? You're probably using the version from the main branch, which is currently v2. Using this package requires a working Go environment. Go Modules are required when using this package. Currently, only YAML, JSON, and TOML files are supported but developers can add support for other input sources by implementing the altsrc.InputSourceContext for their given sources.
    Downloads: 12 This Week
    Last Update:
    See Project
  • 14
    Amazon Lightsail CLI Extensions

    Amazon Lightsail CLI Extensions

    Amazon Lightsail CLI Extensions

    This project is the source code of lightsailctl, a tool that augments Amazon Lightsail features in AWS CLI. lightsailctl is executed automatically by AWS CLI when certain subcommands are used, such as AWS lightsail push-container-image. lightsailctl is written in Go, so please install Go. Keep reading if you want to work with lightsailctl source code locally. This container image pushing logic requires a number of steps that are outsourced from AWS CLI to lightsailctl.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 15
    Ferret

    Ferret

    Declarative web scraping

    A web scraping system aiming to simplify data extraction from the web. ferret has a declarative query language that makes it easy to focus on the data that you need to get. ferret has the ability to scrape JS rendered pages, handle all page events, and emulate user interactions. the ferret was designed as a library from the ground up. it can be easily embedded into any Go application. ferret helps you to focus on the data you need using an easy-to-learn declarative language. ferret uses Chrome/Chromium via Chrome Devtools Protocol to handle dynamically rendered web pages. ferret is extremely extensible, and creating custom functions and types is super easy. ferret allows users to focus on the data. It abstracts away the technical details and complexity of underlying technologies using its own declarative language. It is extremely portable, extensible, and fast.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 16
    Redpanda Console

    Redpanda Console

    Redpanda Console is a developer-friendly UI for managing your workload

    Redpanda Console (previously known as Kowl) is a web application that helps you manage and debug your Kafka/Redpanda workloads effortlessly. Explore your topics' messages in our message viewer through ad-hoc queries and dynamic filters. Find any message you want using JavaScript functions to filter messages. Supported encodings are JSON, Avro, Protobuf, XML, MessagePack, Text and Binary (hex view). The used encoding (except Protobuf) is recognized automatically. Redpanda is a Kafka®-compatible streaming data platform that is proven to be 10x faster and 6x lower in total costs. It is also JVM-free, ZooKeeper®-free, Jepsen-tested, and source available. A single binary with built-in everything. No ZooKeeper®. No JVM. Deploys in minutes. Spins up in milliseconds. Plays nice with Kubernetes and microservices. Works natively with your Kafka tools. Love streaming again!
    Downloads: 9 This Week
    Last Update:
    See Project
  • 17
    grmon

    grmon

    Command line monitoring for goroutines

    Command line monitoring for goroutines. Simply import and call grmon.Start() somewhere in your code. By default, grmon will automatically refresh every 5s. Pause automatic refresh(p) to enable the cursor and expand the full trace for a selected goroutine(<enter>).
    Downloads: 5 This Week
    Last Update:
    See Project
  • 18
    mactop

    mactop

    Apple Silicon Monitor Top

    mactop is a terminal-based monitoring tool designed specifically for Apple Silicon Macs. It displays real-time system metrics such as CPU usage, GPU usage, ANE activity, memory usage, power consumption, temperatures, fan speeds, disk I/O, and network activity. The tool uses native Apple APIs including SMC, IOReport, IOKit, IOHIDEventSystemClient, and Mach Kernel APIs to collect detailed hardware data without requiring sudo for core monitoring. mactop supports Apple Silicon models from M1 through M5, including Pro, Max, and Ultra variants, as well as newer core types like M5 S-Cores. Users can customize the terminal interface with multiple layouts, themes, colors, update intervals, and language settings. It also offers advanced options such as headless output, Prometheus metrics, a macOS menu bar mode, overlay HUD, fan monitoring, and optional fan control.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 19
    werf

    werf

    The CLI tool gluing Git, Docker, Helm, and Kubernetes

    werf is an Open Source CLI tool written in Go, designed to simplify and speed up the delivery of applications. To use it, you need to describe the configuration of your application (in other words, how to build and deploy it to Kubernetes) and store it in a Git repo, the latter acts as a single source of truth. In short, that's what we call GitOps today. werf is not a complete CI/CD solution, but a tool for creating pipelines that can be embedded into any existing CI/CD system. It literally "connects the dots" to bring these practices into your application. We consider it a new generation of high-level CI/CD tools. werf builds Docker images using Dockerfiles or an alternative fast built-in builder based on the custom syntax. It also deletes unused images from the Docker registry. werf deploys your application to Kubernetes using a chart in the Helm-compatible format with handy customizations and improved rollout tracking mechanism, error detection, and log output.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 20
    Glow

    Glow

    Render markdown on the CLI, with pizzazz!

    Glow is a terminal-based markdown reader designed from the ground up to bring out the beauty and power of the CLI. Use it to discover markdown files, read documentation directly on the command line and stash markdown files to your own private collection so you can read them anywhere. Glow will find local markdown files in subdirectories or a local Git repository. By the way, all data stashed is encrypted end-to-end: only you can decrypt it. Simply run glow without arguments to start the textual user interface and browse local and stashed markdowns. Glow will find local markdown files in the current directory and below or if you’re in a Git repository, Glow will search the repo. Markdown files can be read with Glow's high-performance pager. Most of the keystrokes you know from less are the same, but you can press ? to list the hotkeys. Glow works with the Charm Cloud to allow you to store any markdown files in your own private collection.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 21
    JiraCLI

    JiraCLI

    Feature-rich interactive Jira command line

    JiraCLI is an interactive command line tool for Atlassian Jira that will help you avoid Jira UI to some extent. This tool is not yet considered complete but has all the essential features required to improve your workflow with Jira. The tool started with the idea of making issue search and navigation as straightforward as possible. However, with the help of outstanding supporters like you, we evolved, and the tool now includes all necessary features like issue creation, cloning, linking, ticket transition, and much more. Note that some features might work slightly differently in cloud installation versus on-premise installation due to the nature of the data. Yet, we've attempted to make the experience as similar as possible. jira-cli is available as a downloadable packaged binary for Linux, macOS, and Windows from the releases page.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 22
    httpstat

    httpstat

    It's like curl -v, with colours

    Windows/BSD/Linux supported, HTTP and HTTPS supported as well. For self-signed certificates use -k, and skip timing the body of a response with -I. Follow 30x redirects with -L. Change HTTP method with -X METHOD. Provide a PUT or POST request body with -d string. To supply the PUT or POST body as a file, use -d @filename. Add extra request headers with -H 'Name: value'. The response body is usually discarded, you can use -o filename to save it to a file, or -O to save it to the file name suggested by the server. HTTP/HTTPS proxies supported via the usual HTTP_PROXY/HTTPS_PROXY env vars (as well as lower case variants). Supply your own client-side certificate with -E cert.pem.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 23
    wego

    wego

    Weather app for the terminal

    wego is a weather client for the terminal. Config file for default location which can be overridden by commandline. Automatic config management with ingo. A working Go 1.5 environment (You can use goenv if your distribution does not support Go 1.5 yet). utf-8 terminal with 256 colors. A sane monospaced font containing all the required runes (I use dejavu sans mono). An API key for the backend. You can create an account and get a free API key by signing up. You can set the $WEGORC environment variable to override the default config file location. Displayed info (metric or imperial units), temperature range (felt and measured), windspeed and direction, viewing distance, precipitation amount and probability.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 24
    GoTTY

    GoTTY

    Share your terminal as a web application

    If you have a Go language environment, you can install GoTTY with the go get command. However, this command builds a binary file from the latest master branch, which can include unstable or breaking changes. GoTTY requires go1.9 or later. Run gotty with your preferred command as its arguments (e.g. gotty top). By default, GoTTY starts a web server at port 8080. Open the URL on your web browser and you can see the running command as if it were running on your terminal. By default, GoTTY doesn't allow clients to send any keystrokes or commands except terminal window resizing. When you want to permit clients to write input to the TTY, add the -w option. However, accepting input from remote clients is dangerous for most commands. When you need interaction with the TTY for some reasons, consider starting GoTTY with tmux or GNU Screen and run your command on it (see "Sharing with Multiple Clients" section for detail).
    Downloads: 2 This Week
    Last Update:
    See Project
  • 25
    gh-dash

    gh-dash

    A beautiful CLI dashboard for GitHub

    A GitHub (gh) CLI extension to display a dashboard with pull requests and issues by filters you care about. Write multiple configuration files to easily switch between completely different dashboards. Repo name-to-path mappings can be an exact match (full name, full path) or wildcard matched using the owner and partial path. To override the default set of terminal colors and instead create your own color scheme, you can define one in your config.yml file. If you choose to go this route, you need to specify all of the following keys as colors in hex format (#RRGGBB), otherwise, validation will fail. You can customize each section's layout as well as the global layout.
    Downloads: 2 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • Next