npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

hom-cli

v0.0.15

Published

HöM, the shell management CLI

Downloads

6

Readme

HöM CLI

The hom CLI gives you tools to manage and organize your personal utility scripts. Create your own namepsaced scripts, aliases, exports, functions, and partials often without needing to open an editor. Utilities you create are organized by type e.g., ~/.hom/NAMESPACE/aliases/YOUR_ALIAS.sh

oclif CircleCI GitHub license

Usage

$ npm install -g hom-cli
$ hom COMMAND
running command...
$ hom (--version)
hom-cli/0.0.15 darwin-x64 node-v20.10.0
$ hom --help [COMMAND]
USAGE
  $ hom COMMAND
...

Commands

hom alias NAME CONTENT [DESCRIPTION]

creates an alias for your shell

USAGE
  $ hom alias NAME CONTENT [DESCRIPTION] [-n <value>]

ARGUMENTS
  NAME         the call name of your alias
  CONTENT      the content of your alias
  DESCRIPTION  a description for the alias

FLAGS
  -n, --namespace=<value>  [default: user] namespace directory to use

DESCRIPTION
  creates an alias for your shell

EXAMPLES
  $ hom alias alias_name "some kind of content"

See code: src/commands/alias.ts

hom edit [NAME]

edits a hom file in your editor

USAGE
  $ hom edit [NAME] [-n <value>] [-a | -e | -f | -p | -s]

ARGUMENTS
  NAME  filename to edit (omit the extension)

FLAGS
  -a, --alias
  -e, --export
  -f, --function
  -n, --namespace=<value>  namespace
  -p, --partial
  -s, --script

DESCRIPTION
  edits a hom file in your editor

EXAMPLES
  $ hom edit -n=mycompany

See code: src/commands/edit.ts

hom export NAME CONTENT

creates an export for your shell

USAGE
  $ hom export NAME CONTENT [-n <value>]

ARGUMENTS
  NAME     the call name of your export (case insensitive)
  CONTENT  the content of your export

FLAGS
  -n, --namespace=<value>  [default: user] namespace directory to use

DESCRIPTION
  creates an export for your shell

EXAMPLES
  $ hom export export_name "some kind of content"

See code: src/commands/export.ts

hom function NAME

creates a shell function

USAGE
  $ hom function NAME [-n <value>] [-c <value>] [-d <value>]

ARGUMENTS
  NAME  filename to edit

FLAGS
  -c, --content=<value>      content of the function. Skips opening the editor when given
  -d, --description=<value>  A description of what your function does
  -n, --namespace=<value>    [default: user] namespace directory to use

DESCRIPTION
  creates a shell function

EXAMPLES
  $ hom function function_name -c "echo $something" -d "this is what it do"

See code: src/commands/function.ts

hom help [COMMANDS]

Display help for hom.

USAGE
  $ hom help [COMMANDS] [-n]

ARGUMENTS
  COMMANDS  Command to show help for.

FLAGS
  -n, --nested-commands  Include all nested commands in the output.

DESCRIPTION
  Display help for hom.

See code: @oclif/plugin-help

hom install

installs hom dependencies, sets defaults

USAGE
  $ hom install

DESCRIPTION
  installs hom dependencies, sets defaults

EXAMPLES
  $ hom install

See code: src/commands/install.ts

hom list [NAME]

lists the docs for shell files within hom

USAGE
  $ hom list [NAME] [-n <value>]

ARGUMENTS
  NAME  filename to edit (omit the extension)

FLAGS
  -n, --namespace=<value>  namespace

DESCRIPTION
  lists the docs for shell files within hom

ALIASES
  $ hom ls

EXAMPLES
  $ hom list -n=mycompany

See code: src/commands/list.ts

hom ls [NAME]

lists the docs for shell files within hom

USAGE
  $ hom ls [NAME] [-n <value>]

ARGUMENTS
  NAME  filename to edit (omit the extension)

FLAGS
  -n, --namespace=<value>  namespace

DESCRIPTION
  lists the docs for shell files within hom

ALIASES
  $ hom ls

EXAMPLES
  $ hom ls -n=mycompany

hom move NAME

moves a hom file between namespaces

USAGE
  $ hom move NAME -d <value> [-n <value>] [-a] [-e] [-f] [-p] [-s]

ARGUMENTS
  NAME  filename to move (omit the extension)

FLAGS
  -a, --alias
  -d, --destination=<value>  (required) destination namespace
  -e, --export
  -f, --function
  -n, --namespace=<value>    [default: user] namespace directory to use
  -p, --partial
  -s, --script

DESCRIPTION
  moves a hom file between namespaces

ALIASES
  $ hom mv

EXAMPLES
  $ hom move FILE_NAME

See code: src/commands/move.ts

hom mv NAME

moves a hom file between namespaces

USAGE
  $ hom mv NAME -d <value> [-n <value>] [-a] [-e] [-f] [-p] [-s]

ARGUMENTS
  NAME  filename to move (omit the extension)

FLAGS
  -a, --alias
  -d, --destination=<value>  (required) destination namespace
  -e, --export
  -f, --function
  -n, --namespace=<value>    [default: user] namespace directory to use
  -p, --partial
  -s, --script

DESCRIPTION
  moves a hom file between namespaces

ALIASES
  $ hom mv

EXAMPLES
  $ hom mv FILE_NAME

hom open

opens a shell namespace, or folder in your finder

USAGE
  $ hom open [-n <value>] [-a | -e | -f | -p | -s]

FLAGS
  -a, --alias
  -e, --export
  -f, --function
  -n, --namespace=<value>  namespace
  -p, --partial
  -s, --script

DESCRIPTION
  opens a shell namespace, or folder in your finder

EXAMPLES
  $ hom open -n=mycompany

See code: src/commands/open.ts

hom partial [NAME]

creates a partial to better organize your shell

USAGE
  $ hom partial [NAME] [-n <value>] [-c <value>] [-d <value>]

ARGUMENTS
  NAME  filename to edit

FLAGS
  -c, --content=<value>      content of the function. Skips opening the editor when given
  -d, --description=<value>  A description of what your function does
  -n, --namespace=<value>    [default: user] namespace directory to use

DESCRIPTION
  creates a partial to better organize your shell

EXAMPLES
  $ hom partial -n=mycompany

See code: src/commands/partial.ts

hom plugins

List installed plugins.

USAGE
  $ hom plugins [--json] [--core]

FLAGS
  --core  Show core plugins.

GLOBAL FLAGS
  --json  Format output as json.

DESCRIPTION
  List installed plugins.

EXAMPLES
  $ hom plugins

See code: @oclif/plugin-plugins

hom plugins:install PLUGIN...

Installs a plugin into the CLI.

USAGE
  $ hom plugins add plugins:install PLUGIN...

ARGUMENTS
  PLUGIN  Plugin to install.

FLAGS
  -f, --force    Run yarn install with force flag.
  -h, --help     Show CLI help.
  -s, --silent   Silences yarn output.
  -v, --verbose  Show verbose yarn output.

GLOBAL FLAGS
  --json  Format output as json.

DESCRIPTION
  Installs a plugin into the CLI.
  Can be installed from npm or a git url.

  Installation of a user-installed plugin will override a core plugin.

  e.g. If you have a core plugin that has a 'hello' command, installing a user-installed plugin with a 'hello' command
  will override the core plugin implementation. This is useful if a user needs to update core plugin functionality in
  the CLI without the need to patch and update the whole CLI.


ALIASES
  $ hom plugins add

EXAMPLES
  $ hom plugins add myplugin 

  $ hom plugins add https://github.com/someuser/someplugin

  $ hom plugins add someuser/someplugin

hom plugins:inspect PLUGIN...

Displays installation properties of a plugin.

USAGE
  $ hom plugins inspect PLUGIN...

ARGUMENTS
  PLUGIN  [default: .] Plugin to inspect.

FLAGS
  -h, --help     Show CLI help.
  -v, --verbose

GLOBAL FLAGS
  --json  Format output as json.

DESCRIPTION
  Displays installation properties of a plugin.

EXAMPLES
  $ hom plugins inspect myplugin

See code: @oclif/plugin-plugins

hom plugins:install PLUGIN...

Installs a plugin into the CLI.

USAGE
  $ hom plugins install PLUGIN...

ARGUMENTS
  PLUGIN  Plugin to install.

FLAGS
  -f, --force    Run yarn install with force flag.
  -h, --help     Show CLI help.
  -s, --silent   Silences yarn output.
  -v, --verbose  Show verbose yarn output.

GLOBAL FLAGS
  --json  Format output as json.

DESCRIPTION
  Installs a plugin into the CLI.
  Can be installed from npm or a git url.

  Installation of a user-installed plugin will override a core plugin.

  e.g. If you have a core plugin that has a 'hello' command, installing a user-installed plugin with a 'hello' command
  will override the core plugin implementation. This is useful if a user needs to update core plugin functionality in
  the CLI without the need to patch and update the whole CLI.


ALIASES
  $ hom plugins add

EXAMPLES
  $ hom plugins install myplugin 

  $ hom plugins install https://github.com/someuser/someplugin

  $ hom plugins install someuser/someplugin

See code: @oclif/plugin-plugins

hom plugins:link PLUGIN

Links a plugin into the CLI for development.

USAGE
  $ hom plugins link PLUGIN

ARGUMENTS
  PATH  [default: .] path to plugin

FLAGS
  -h, --help          Show CLI help.
  -v, --verbose
      --[no-]install  Install dependencies after linking the plugin.

DESCRIPTION
  Links a plugin into the CLI for development.
  Installation of a linked plugin will override a user-installed or core plugin.

  e.g. If you have a user-installed or core plugin that has a 'hello' command, installing a linked plugin with a 'hello'
  command will override the user-installed or core plugin implementation. This is useful for development work.


EXAMPLES
  $ hom plugins link myplugin

See code: @oclif/plugin-plugins

hom plugins:uninstall PLUGIN...

Removes a plugin from the CLI.

USAGE
  $ hom plugins remove plugins:uninstall PLUGIN...

ARGUMENTS
  PLUGIN  plugin to uninstall

FLAGS
  -h, --help     Show CLI help.
  -v, --verbose

DESCRIPTION
  Removes a plugin from the CLI.

ALIASES
  $ hom plugins unlink
  $ hom plugins remove

EXAMPLES
  $ hom plugins remove myplugin

hom plugins reset

Remove all user-installed and linked plugins.

USAGE
  $ hom plugins reset

See code: @oclif/plugin-plugins

hom plugins:uninstall PLUGIN...

Removes a plugin from the CLI.

USAGE
  $ hom plugins uninstall PLUGIN...

ARGUMENTS
  PLUGIN  plugin to uninstall

FLAGS
  -h, --help     Show CLI help.
  -v, --verbose

DESCRIPTION
  Removes a plugin from the CLI.

ALIASES
  $ hom plugins unlink
  $ hom plugins remove

EXAMPLES
  $ hom plugins uninstall myplugin

See code: @oclif/plugin-plugins

hom plugins:uninstall PLUGIN...

Removes a plugin from the CLI.

USAGE
  $ hom plugins unlink plugins:uninstall PLUGIN...

ARGUMENTS
  PLUGIN  plugin to uninstall

FLAGS
  -h, --help     Show CLI help.
  -v, --verbose

DESCRIPTION
  Removes a plugin from the CLI.

ALIASES
  $ hom plugins unlink
  $ hom plugins remove

EXAMPLES
  $ hom plugins unlink myplugin

hom plugins update

Update installed plugins.

USAGE
  $ hom plugins update [-h] [-v]

FLAGS
  -h, --help     Show CLI help.
  -v, --verbose

DESCRIPTION
  Update installed plugins.

See code: @oclif/plugin-plugins

hom remove NAME

removes a shell file

USAGE
  $ hom remove NAME [-n <value>] [-a | -e | -f | -p | -s]

ARGUMENTS
  NAME  filename to move (omit the extension)

FLAGS
  -a, --alias
  -e, --export
  -f, --function
  -n, --namespace=<value>  [default: user] namespace directory to use
  -p, --partial
  -s, --script

DESCRIPTION
  removes a shell file

ALIASES
  $ hom rm

EXAMPLES
  $ hom remove FILE_NAME

See code: src/commands/remove.ts

hom rm NAME

removes a shell file

USAGE
  $ hom rm NAME [-n <value>] [-a | -e | -f | -p | -s]

ARGUMENTS
  NAME  filename to move (omit the extension)

FLAGS
  -a, --alias
  -e, --export
  -f, --function
  -n, --namespace=<value>  [default: user] namespace directory to use
  -p, --partial
  -s, --script

DESCRIPTION
  removes a shell file

ALIASES
  $ hom rm

EXAMPLES
  $ hom rm FILE_NAME

hom run [NAME]

runs one of your saved scripts

USAGE
  $ hom run [NAME] [-n <value>]

ARGUMENTS
  NAME  script to run

FLAGS
  -n, --namespace=<value>  [default: user] namespace directory to use

DESCRIPTION
  runs one of your saved scripts

EXAMPLES
  $ hom run -n=mycompany

See code: src/commands/run.ts

hom script [NAME]

creates a shell script that will NOT be run until called

USAGE
  $ hom script [NAME] [-n <value>] [-c <value>] [-d <value>]

ARGUMENTS
  NAME  filename to edit

FLAGS
  -c, --content=<value>      content of the script. Skips opening the editor when given
  -d, --description=<value>  A description of what your script does
  -n, --namespace=<value>    [default: user] namespace directory to use

DESCRIPTION
  creates a shell script that will NOT be run until called

EXAMPLES
  $ hom script -n=mycompany

See code: src/commands/script.ts

hom set

sets default hom configurations

USAGE
  $ hom set [-r <value>] [-n <value>] [-s <value>]

FLAGS
  -n, --namespace=<value>  default namespace
  -r, --repo=<value>       a git repository to use as a template
  -s, --shell=<value>      shell type

DESCRIPTION
  sets default hom configurations

EXAMPLES
  $ hom set -n=mycompany

See code: src/commands/set.ts

hom update [CHANNEL]

update the hom CLI

USAGE
  $ hom update [CHANNEL] [-a] [--force] [-i | -v <value>]

FLAGS
  -a, --available        See available versions.
  -i, --interactive      Interactively select version to install. This is ignored if a channel is provided.
  -v, --version=<value>  Install a specific version.
      --force            Force a re-download of the requested version.

DESCRIPTION
  update the hom CLI

EXAMPLES
  Update to the stable channel:

    $ hom update stable

  Update to a specific version:

    $ hom update --version 1.0.0

  Interactively select version:

    $ hom update --interactive

  See available versions:

    $ hom update --available

See code: @oclif/plugin-update

hom version

USAGE
  $ hom version [--json] [--verbose]

FLAGS
  --verbose  Show additional information about the CLI.

GLOBAL FLAGS
  --json  Format output as json.

FLAG DESCRIPTIONS
  --verbose  Show additional information about the CLI.

    Additionally shows the architecture, node version, operating system, and versions of plugins that the CLI is using.

See code: @oclif/plugin-version