More CLI options and pre-Gruntfile initialization through .gruntrc file(s).
- Dominant language
- JavaScript
- Stars
- 12.2k
- Forks
- 1.5k
- PR merge metrics
- No merged PRs in 30d
Description
Ok, so I have this idea, and I think it's a good one.
_I'd like to support `.gruntrc` files in projects / user home directories to allow per-project or per-user CLI option overrides. In addition, I want to add more CLI options to allow more configurability._
Note that items marked :new: are ones that don't exist yet, but probably should.
### For a project
- Overriding `--gruntfile` to specify an alternate gruntfile name, like `Gruntfile.coffee`, so grunt doesn't have to guess.
- Overriding `--base` to specify an alternate base path.
- Overriding `--pre-require` to specify packages to be required before the Gruntfile is loaded. Eg. if `--pre-require` was `coffee-script` and `--gruntfile` was `Gruntfile.coffee` (or livescript per #841 or whatever), CoffeeScript wouldn't need to be hard-coded into grunt anymore (yay) :new:
### For a user
- Overriding commonly-used options like `--stack` or `--verbose` or `--no-color`.
- Some way to specify user-tasks that don't really belong in a project's Gruntfile, but instead belong to a specific user's personal workflow. Like Growl notifications or always opening a browser when a web server task starts. These are probably less like tasks, and more like event listeners or hooks :new:
This doesn't exist yet, and might not exist until 0.5, but I want to do it.
What other CLI options should `grunt` have?
Contributor guide
Research direction
The issue names no files, tests, or implementation entry points. Start by locating the existing CLI option parsing and initialization flow, then clarify whether project and user .gruntrc files, new options, and user hooks belong in one change. Done requires a decided scope and documented behavior for configuration precedence and initialization.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- cli, tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100