gulp-straw

0.0.7 • Public • Published

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:

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

Readme

Keywords

Package Sidebar

Install

npm i gulp-straw

Weekly Downloads

1

Version

0.0.7

License

MIT

Last publish

Collaborators

  • cognitom