Simplify `meteor help` #3566

Open
lorensr opened this Issue Jan 27, 2015 · 5 comments

Projects

None yet

7 participants

@lorensr
Collaborator
lorensr commented Jan 27, 2015

I think it's gotten to a length that warrants organization. It takes me a while to look through it to find the command I'm looking for. The beginning "Usage" part is complicated. Could change to:

Usage: meteor <command> [args]

See 'meteor help <command>' for details on a command.

These are 99% of usage, so nice and clear to start. I'm guessing [] is a bash convention that means it's optional? Cleaner would be same notation for placeholder, like meteor <command> <args>.

Here is the whole suggested change, with a possible split of commands, based on category, logical order, and my guess at the frequency of use (could definitely be wrong – I haven't used some of these). Also, would be nice to have abbreviations for commonly-used commands, like npm does – eg npm i is an alias for npm install. Don't know best way to present them – I've placed in parenthesis at end.

$ meteor help
Usage: meteor <command> <args>

See 'meteor help <command>' for details on a command.

   run                 [default] Run this project in local development mode.
   create              Create a new project. (Alias is c)
   update              Upgrade this project's dependencies to their latest versions. (u)
   mongo               Connect to the Mongo database for the specified site. (m)
   shell               Launch a Node REPL for interactively evaluating server-side code. (s)
   debug               Run the project, but suspend the server process for debugging.
   deploy              Deploy this project to Meteor. (d)
   logs                Show logs for specified site.

Packages:
   add                 Add a package to this project. (a)
   remove              Remove a package from this project. (r)
   list                List the packages explicitly used by your project. (l)
   search              Search through the package server database.
   show                Show detailed information about a release or package.

Platforms:
   build               Build this project for all platforms.
   add-platform        Add a platform to this project.
   install-sdk         Installs SDKs for a platform.
   remove-platform     Remove a platform from this project.
   list-platforms      List the platforms added to your project.
   configure-android   Run the Android configuration tool from Meteor's ADK environment.

Accounts:
   login               Log in to your Meteor developer account.
   logout              Log out of your Meteor developer account.
   whoami              Prints the username of your Meteor developer account.
   list-sites          List sites for which you are authorized.
   authorized          View or change authorized users and organizations for a site.

Advanced:
   reset               Reset the project state. Erases the local database.
   publish             Publish a new version of a package to the package server.
   test-packages       Test one or more packages.
   publish-for-arch    Builds an already-published package for a new platform.
   publish-release     Publish a new meteor release to the package server.
   claim               Claim a site deployed with an old Meteor version.

meteor [--version] [--arch]
meteor [--release <release>] [--help] <command> [args]

Not sure how best to format the last two lines.

IMO this could come out, since first command above says what the default is, and second is create:

With no arguments, 'meteor' runs the project in the current
directory in local development mode. You can run it from the root
directory of the project or from any subdirectory.

Use 'meteor create <name>' to create a new Meteor project.

PS thanks for allowing FRs on GH. Huge! 👏

Contributor

That looks like a pretty nice improvement.

Contributor

Wow, this looks great!

Owner
glasser commented Jan 27, 2015

Thanks for the feature request! You might be interested in reading our [feature request guidelines](https://github.com/meteor/meteor/wiki/Contributing-to-Meteor#feature-requests

I agree that this looks great. Currently the main "meteor help" is auto-generated and it would take a bunch of coding to make it auto-generate this, but honestly just changing it to static text (and requiring us to remember to update it when we change the short description) would be great. (Something fancier that lets us write {{command: test-packages}} to insert the full line for test-packages would be even better.) Pull requests encouraged!

Contributor
ekatek commented Jan 27, 2015

I agree -- this looks beautiful! Pull requests encouraged.

Contributor
yauh commented Jan 28, 2015

I took the liberty and created a pull request. Tried to stay close to the usual command line tool conventions and organized commands in logical groups.

@stubailo stubailo added the triaged label Oct 22, 2015
@zol zol removed the backlog label May 3, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment