ProfileGem VS docopt.sh

Compare ProfileGem vs docopt.sh and see what are their differences.

ProfileGem

A shell configuration utility to compartmentalize and manage your terminal utilities and environment (by dimo414)

docopt.sh

Command-line argument parser for bash 3.2, 4+, and 5+. (by andsens)
Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
ProfileGem docopt.sh
1 5
22 182
- -
3.7 0.0
9 months ago 10 months ago
Shell Python
GNU General Public License v3.0 only MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

ProfileGem

Posts with mentions or reviews of ProfileGem. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-02-08.
  • Beautiful Scripts
    6 projects | /r/bash | 8 Feb 2022
    And like many I've spent waaay too long messing around with my shell environment, which has wound up as ProfileGem, a modular shell environment manager, along with prompt.gem, my custom terminal prompt. Some features that stand out:

docopt.sh

Posts with mentions or reviews of docopt.sh. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-03-16.
  • Docopt.sh – Command-Line Argument Parser for Bash 3.2, 4, and 5
    1 project | /r/hypeurls | 16 Mar 2023
    5 projects | news.ycombinator.com | 16 Mar 2023
    I like that this generates readable output that could pass as hand-written code.

    The docopt.sh output looks like it went through a JS minifier. Or is there a way to change that? If so I think it should default to that.

    https://github.com/andsens/docopt.sh/blob/master/docs/naval_...

  • Programs are dead, and JavaScript has killed them
    2 projects | news.ycombinator.com | 13 Dec 2022
    If you want to avoid having to write your own args parser everytime or think getopt is a pain, you should check out my little project:

    https://github.com/andsens/docopt.sh

    No dependencies, the code is directly inlined into your script, and you write the args parser by writing the help-text.

  • Beautiful Scripts
    6 projects | /r/bash | 8 Feb 2022
    Honestly, I left it as a gist because even though it reduces boilerplate, getopts is still not a great flag parser (e.g. only supports single-letter flags, and no type safety or other validation aside from boolean / string). I use it in my shell environment since I have lots of shell functions and I don't care to pull in a "real" parser into my shell, but if I was writing any sort of more complex standalone script I probably wouldn't use it. Check out docopt if you haven't seen it, I've been meaning to give that a whirl at some point.

What are some alternatives?

When comparing ProfileGem and docopt.sh you can also consider the following projects:

bash-cache - Transparent caching layer for bash functions; particularly useful for functions invoked as part of your prompt.

docopt - This project is no longer maintained. Please see https://github.com/jazzband/docopt-ng

shrc - My bashrc/shrc that supports bash, zsh, busybox ash and even Dash. ( has: OS and shell detection )