gulp-straw
[EXPERIMENTAL] Gulp Task Manager: The tool for managing your `gulpfile`
Last updated 5 years ago by cognitom .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install gulp-straw -g
SYNC missed versions from official npm registry.

logo

Gulp Straw (experimental)

Gulp Task Manager: The command-line tool for managing your gulpfile. gulpfile is a task file for gulp.js.

Usually gulpfile grows bigger and bigger, so it's strongly recommended to split it and make it reusable. How? Use this straw!

$ straw install gulpfile
[OK] cognitom:gulpfile > gulpfile
installing required modules in taskfiles...
[OK] installation completed
$ ls
gulpfile.js	node_modules	package.json

Features

  • retrieve gulpfile from your (or other's) GitHub repo
  • install dependencies automatically

and now implementing the features below.

  • update gulpfile from GitHub
  • publish gulpfile to GitHub

Installation

Install gulp-straw from npm with:

$ npm install -g gulp-straw

Straw requires you to authenticate with GitHub. Let's setup at first.

$ straw setup

Then, follow the instruction.

Straw requires you to auth with GitHub.
You can create a new token here:
- https://github.com/settings/tokens/new
------------------------------------------------------------
- GitHub account:  cognitom
- Open the browser to get your token? (YES/no)
- Paste here:  123456789abcdef123456789abcdef
------------------------------------------------------------
Successfully access to your GitHub account!
- Name: Tsutomu Kawamura
- Mail: tsutomu@librize.com
The account 'cognitom' was saved into ~/.netrc.

Or add the following entry to your ~/.netrc file manually

machine api.github.com
  login <username>
  password <token>

Getting Started

At the first, prepare your gulpfiles repository like this.

Install gulpfiles

Go to your project directory.

$ cd ./path/to/project/

Get gulpfiles from your repository:

$ straw install gulpfile
$ straw install task/css

Or it's ok to set multiple tasks.

$ straw install gulpfile task/css

Custom directory

If you have a task coffee but you want to install it under the task directory, use --dir option.

$ straw install coffee --dir task/

Get gulpfiles from others

$ straw install cognitom/gulpfiles:gulpfile
$ straw install cognitom/gulpfiles:task/css

If the repository name is ommited straw guess that the name would be gulpfiles. So these command can also be written like below.

$ straw install cognitom:gulpfile
$ straw install cognitom:task/css

Install all

Install all specified in package.json:

$ straw install

Update gulpfiles

Update all specified in package.json:

$ straw update

Update gulpfiles:

$ straw update task/css

Publish gulpfiles

$ straw publish task/css

Appendix

package.json format

{
  "gulpfiles": {
    "gulpfile": "cognitom:gulpfile",
    "task/css": "cognitom:task/css"
  }
}

Todos:

  • [x] introduce commander.js
  • [x] get file from GitHub repo by octonode
  • [x] save config into package.json
  • [x] auto-complete extension: .js or .coffee or ...
  • [x] install multi tasks
  • [x] install all from package.json
  • [x] add devDependency automatically
  • [x] easy flow to login to GitHub
  • [x] copy gulpvars in package.json
  • [ ] modify relative paths in gulpfiles
  • [ ] update task
  • [ ] publish task
  • [ ] uninstall task
  • [x] support private repo
  • [ ] error handling
  • [ ] test test test

Current Tags

  • 0.0.7                                ...           latest (5 years ago)

6 Versions

  • 0.0.7                                ...           5 years ago
  • 0.0.6                                ...           5 years ago
  • 0.0.5                                ...           5 years ago
  • 0.0.4                                ...           6 years ago
  • 0.0.3                                ...           6 years ago
  • 0.0.2                                ...           6 years ago
Maintainers (1)
Downloads
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 0
Dependencies (12)
Dev Dependencies (3)
Dependents (2)

Copyright 2014 - 2016 © taobao.org |