Ask HN: What libraries does go have for building interactive shells?

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • Scout APM - Less time debugging, more time building
  • SonarQube - Static code analysis for 29 languages.
  • SaaSHub - Software Alternatives and Reviews
  • cobra

    A Commander for modern Go CLI interactions

    I want to build a command line tool with context-sensitive completion. This is important because it allows interactive exploration of the options -- both of the application and of the current data model -- available to the user.

    So far this is what I've found.

    https://github.com/desertbit/grumble

    https://github.com/spf13/cobra

    https://github.com/urfave/cli

    https://github.com/abiosoft/ishell

    I would like to know people's experiences and recommendations in building such an app in go.

  • grumble

    A powerful modern CLI and SHELL

    I want to build a command line tool with context-sensitive completion. This is important because it allows interactive exploration of the options -- both of the application and of the current data model -- available to the user.

    So far this is what I've found.

    https://github.com/desertbit/grumble

    https://github.com/spf13/cobra

    https://github.com/urfave/cli

    https://github.com/abiosoft/ishell

    I would like to know people's experiences and recommendations in building such an app in go.

  • Scout APM

    Less time debugging, more time building. Scout APM allows you to find and fix performance issues with no hassle. Now with error monitoring and external services monitoring, Scout is a developer's best friend when it comes to application development.

  • urfave/cli

    A simple, fast, and fun package for building command line apps in Go (by urfave)

    I want to build a command line tool with context-sensitive completion. This is important because it allows interactive exploration of the options -- both of the application and of the current data model -- available to the user.

    So far this is what I've found.

    https://github.com/desertbit/grumble

    https://github.com/spf13/cobra

    https://github.com/urfave/cli

    https://github.com/abiosoft/ishell

    I would like to know people's experiences and recommendations in building such an app in go.

  • ishell

    Library for creating interactive cli applications.

    I want to build a command line tool with context-sensitive completion. This is important because it allows interactive exploration of the options -- both of the application and of the current data model -- available to the user.

    So far this is what I've found.

    https://github.com/desertbit/grumble

    https://github.com/spf13/cobra

    https://github.com/urfave/cli

    https://github.com/abiosoft/ishell

    I would like to know people's experiences and recommendations in building such an app in go.

  • readline

    Readline is a pure go(golang) implementation for GNU-Readline kind library

    Do you want to build an interactive shell or a cli tool? For a custom shell I have used https://github.com/chzyer/readline before, but I did not work on it a lot.

    I also wanted custom completions based on context and this readline implementation was decent for that.

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