Git Product home page Git Product logo

gulp-template's Introduction

gulp-template

Render/precompile Lodash/Underscore templates

Issues with the output should be reported on the Lodash issue tracker.

Install

npm install --save-dev gulp-template

Usage

src/greeting.html

<h1>Hello <%= name %></h1>

gulpfile.js

import gulp from 'gulp';
import template from 'gulp-template';

export default () => (
	gulp.src('src/greeting.html')
		.pipe(template({name: 'Sindre'}))
		.pipe(gulp.dest('dist'))
);

You can alternatively use gulp-data to inject the data:

import gulp from 'gulp';
import template from 'gulp-template';
import data from 'gulp-data';

export default () => (
	gulp.src('src/greeting.html')
		.pipe(data(() => ({name: 'Sindre'})))
		.pipe(template())
		.pipe(gulp.dest('dist'))
);

dist/greeting.html

<h1>Hello Sindre</h1>

API

template(data, options?)

Render a template using the provided data.

template.precompile(options?)

Precompile a template for rendering dynamically at a later time.

data

Type: object

Data object used to populate the text.

options

Type: object

Lodash _.template options.

Tip

You can also provide your own interpolation string for custom templates.

src/greeting.html

<h1>Hello {{ name }}</h1>

gulpfile.js

import gulp from 'gulp';
import template from 'gulp-template';
import data from 'gulp-data';

export default () => (
	gulp.src('src/greeting.html')
		.pipe(data(() => ({name: 'Sindre'})))
		.pipe(template(null, {
			interpolate: /{{(.+?)}}/gs
		}))
		.pipe(gulp.dest('dist'))
);

dist/greeting.html

<h1>Hello Sindre</h1>

gulp-template's People

Contributors

demurgos avatar fodier avatar mathiasbynens avatar sindresorhus avatar t1st3 avatar turbo87 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gulp-template's Issues

SyntaxError: Unexpected token .

On js file with size 4.2 Mb

events.js:183
      throw er; // Unhandled 'error' event
      ^
SyntaxError: Unexpected token .
    at Function (<anonymous>)
    at C:\projects\123\node_modules\lodash\lodash.js:14843:16
    at apply (C:\projects\123\node_modules\lodash\lodash.js:494:27)
    at C:\projects\123\node_modules\lodash\lodash.js:15227:16
    at apply (C:\projects\123\node_modules\lodash\lodash.js:496:27)
    at C:\projects\123\node_modules\lodash\lodash.js:6600:16
    at template (C:\projects\123\node_modules\lodash\lodash.js:14842:20)
    at DestroyableTransform._transform (C:\projects\123\node_modules\gulp-template\index.js:22:16)
    at DestroyableTransform.Transform._read (C:\projects\123\node_modules\readable-stream\lib\_stream_transform.js:182:10)
    at DestroyableTransform.Transform._write (C:\projects\123\node_modules\readable-stream\lib\_stream_transform.js:170:83)
    at doWrite (C:\projects\123\node_modules\readable-stream\lib\_stream_writable.js:406:64)
    at writeOrBuffer (C:\projects\123\node_modules\readable-stream\lib\_stream_writable.js:395:5)
    at DestroyableTransform.Writable.write (C:\projects\123\node_modules\readable-stream\lib\_stream_writable.js:322:11)
    at write (C:\projects\123\node_modules\vinyl-fs\node_modules\readable-stream\lib\_stream_readable.js:623:24)
    at flow (C:\projects\123\node_modules\vinyl-fs\node_modules\readable-stream\lib\_stream_readable.js:632:7)
    at DestroyableTransform.pipeOnReadable (C:\projects\123\node_modules\vinyl-fs\node_modules\readable-stream\lib\_stream_readable.js:664:5)

Reverse Workflow

I apologize if this is a poor question (new gulp user, no experience with Lo-Dash).

I was trying to get started with gulp-template, but couldn't figure out how to utilize it in my use-case - it seems like I'm potentially trying to "do things backwards". I ended up finding a working solution with gulp-header and gulp-footer, but it's not very flexible and I'd like to implement better templating. Here's my use-case:

var fs     = require('fs');
var gulp   = require('gulp');
var gutil  = require('gulp-util');
var tap    = require('gulp-tap');
var header = require('gulp-header');
var footer = require('gulp-footer');
var concat = require('gulp-concat');
var fm     = require('gulp-front-matter');
var marked = require('gulp-markdown');

// Build a single index.html from a glob of markdown files, specifically for use with impressjs.
gulp.task('build:index', function (callback) {

  // Parse a glob of markdown files.
  gulp.src(src + '/markup/**/*.md')

    // Strip the frontmatter - it gets shoved into file.fm['...']
    .pipe(fm ({property: 'fm', remove: true}))

    // Expose file.fm['..'] variables generated by gulp-front-matter using gulp-tap.
    // Because we don't want to write empty tags if the values aren't defined, we
    // set default variables that initialize the entire tag attribute.
    .pipe(tap(function(file, t) {
      slide_id = file.fm['id']==undefined ? '' : 'id="' + file.fm['id'] + '"'
      slide_class = file.fm['class']==undefined ? '' : 'class="' + file.fm['class'] + '"'
      slide_properties  = file.fm['properties']
    }))

    // Generate html from the remaining markdown.
    .pipe(marked())

    // Wrap the markup in div tags, generated from the frontmatter.
    // If the variables are not defined, an error is not generated, they simply are not
    // written. Perfect behavior for my use case, but probably should be more explicit.
    .pipe(header('<div <%= slide_id %> <%= slide_class %> <%= slide_properties %>>\n'))
    .pipe(footer('</div>\n'))

    // Concatenate all the html into a single file.
    .pipe(concat('index.html'))

    // Wrap the generating html in our impressjs header and footer.
    .pipe(header(fs.readFileSync('src/templates/impress-header.tpl', 'utf8')))
    .pipe(footer(fs.readFileSync('src/templates/impress-footer.tpl', 'utf8')))

    // Write the index file.
    .pipe(gulp.dest(dist))

    // Fill up our logs.
    gutil.log('Recompiled index.html')
});

So all of the included examples all follow the sample basic pattern:

  1. The pipeline source is the template
  2. Some variables are generated in the pipeline
  3. The variables are applied to the template
  4. An output file is written.

In my case, the src is a glob of files that I'm parsing, and the pipeline contains content I want to keep. As a new gulp user, I don't know how to make that logic work with gulp-template - as my logic seems backwards from the use-cases presented for gulp-template in the examples.

Do you have any suggestions?
Thanks!

Cannot render template using gulp-data AND passing options

Goal is to use gulp-data in conjunction with template options to render template:

var gulp = require('gulp');
var data = require('gulp-data');
var template = require('gulp-template');
var path = require('path');

gulp.task('render-templates', function () {
    return gulp.src('precompile-templates/*.html')
        .pipe(data(function(file) {
            return require('./data/' + path.basename(file.path, '.html') + '.json');
        }))
        .pipe(template({
            interpolate: /{{([\s\S]+?)}}/g,
            evaluate:    /{=([\s\S]+?)=}/g
        }))
        .pipe(gulp.dest('dist'));
});

When using gulp data with NO options it works (verifying data works):

.pipe(template())

When using options with hard coded data it works (verifying options works):

.pipe(template({'name': 'russell'}, {
    interpolate: /{{([\s\S]+?)}}/g,
    evaluate:    /{=([\s\S]+?)=}/g
}))

Is there some variable that has to be passed in the template function to reference the data?

Cryptic error on template parse error - not enough details provided to properly track down the issue

I got the following error which was less than simple to track down. I had to comment out blocks at a time in a template that was being parsed in Angular2 until I narrowed it down. It turned out to be that in my template I had:

${{removeContribution.amount}}

instead of

{{removeContribution.amount}}

A typo on my part, however it'd be great to die with a more sensical error that perhaps even pointed out the where. I had to modify the source code to dump the file it was parsing, so I could determine which template it was dying on...then proceed to figure out why.

/Users/arimus/workspace/project/node_modules/gulp-template/node_modules/lodash/lodash.js:487
case 0: return func.call(thisArg);
^
SyntaxError: Unexpected token .
at /Users/arimus/workspace/project/node_modules/gulp-template/node_modules/lodash/lodash.js:14776:16
at apply (/Users/arimus/workspace/project/node_modules/gulp-template/node_modules/lodash/lodash.js:487:27)
at /Users/arimus/workspace/project/node_modules/gulp-template/node_modules/lodash/lodash.js:15160:16
at apply (/Users/arimus/workspace/project/node_modules/gulp-template/node_modules/lodash/lodash.js:489:27)
at /Users/arimus/workspace/project/node_modules/gulp-template/node_modules/lodash/lodash.js:6558:16
at template (/Users/arimus/workspace/project/node_modules/gulp-template/node_modules/lodash/lodash.js:14775:20)
at DestroyableTransform._transform (/Users/arimus/workspace/project/node_modules/gulp-template/index.js:21:14)
at DestroyableTransform.Transform._read (/Users/arimus/workspace/project/node_modules/readable-stream/lib/_stream_transform.js:159:10)
at DestroyableTransform.Readable.read (/Users/arimus/workspace/project/node_modules/readable-stream/lib/_stream_readable.js:357:10)
at flow (/Users/arimus/workspace/project/node_modules/readable-stream/lib/_stream_readable.js:727:26)

lodash template throws: ReferenceError: asset is not defined

I have this statement in a template:

jQuery.getScript("${asset.get("<%= hitbox %>")}");

This ${asset.get()} seems to confuse the template parsing and throws:

events.js:72
        throw er; // Unhandled 'error' event
              ^
ReferenceError: asset is not defined
    at eval (eval at template (node_modules/gulp-template/node_modules/lodash/dist/lodash.js:6305:22), <anonymous>:7:10)
    at template (node_modules/gulp-template/node_modules/lodash/dist/lodash.js:6311:16)
    at Transform._transform (node_modules/gulp-template/index.js:19:31)
    at Transform._read (node_modules/gulp-template/node_modules/through2/node_modules/readable-stream/lib/_stream_transform.js:184:10)
    at Transform._write (node_modules/gulp-template/node_modules/through2/node_modules/readable-stream/lib/_stream_transform.js:172:12)
    at doWrite (node_modules/gulp-template/node_modules/through2/node_modules/readable-stream/lib/_stream_writable.js:238:10)
    at writeOrBuffer (node_modules/gulp-template/node_modules/through2/node_modules/readable-stream/lib/_stream_writable.js:228:5)
    at Transform.Writable.write (node_modules/gulp-template/node_modules/through2/node_modules/readable-stream/lib/_stream_writable.js:195:11)
    at write (node_modules/gulp/node_modules/vinyl-fs/node_modules/through2/node_modules/readable-stream/lib/_stream_readable.js:605:24)
    at flow (node_modules/gulp/node_modules/vinyl-fs/node_modules/through2/node_modules/readable-stream/lib/_stream_readable.js:614:7)

It runs flawlessly with grunt-template

Can't get a custom template parser to work.

I'm trying to pass an interpolate regex to the options, but can't seem to get it to work.

gulp.task('default', () =>
	gulp.src('templates/*.html')
		.pipe(data(() => ({
            test: 'random'
        })))
		.pipe(template({
            interpolate: /\[([\s\S]+?)\]/g
        }))
		.pipe(gulp.dest('dist'))
);

I want to find examples of [test] and replace it with my string.

ReferenceError: name is not defined

For unknown reason, it forces me to add in the property name in order to use gulp-template.

...
  gulp.src(files)
    .pipe(gulpTemplate({
      name: 'random-name', // unknown required property `name`
      ... // rest of the data
    })
    ,pipe(gulp.dest(dest));
...

Anonymous function exception

I am getting error while executing following

var gulp = require('gulp');
var template = require('gulp-template');

gulp.task('default', function () {
return gulp.src('src/greeting.html')
.pipe(template({name: 'Sindre'}))
.pipe(gulp.dest('dist'));
});

It was all working fine until I introduced lodash as dependency, removed node_modules folder and executed “npm install”. It seems like conflict in dependencies. Can you please provide me the clue?

Error appeared

events.js:72
throw er; // Unhandled 'error' event
^
SyntaxError: Unexpected token =
at Function ()
at template (/node_modules/lodash/dist/lodash.js:6305:22)
at DestroyableTransform._transform (/node_modules/gulp-template/index.js:24:31)
at DestroyableTransform.Transform._read (/node_modules/gulp-template/node_modules/through2/node_modules/readable-stream/lib/_stream_transform.js:184:10)
at DestroyableTransform.Transform._write (/node_modules/gulp-template/node_modules/through2/node_modules/readable-stream/lib/_stream_transform.js:172:12)
at doWrite (/node_modules/gulp-template/node_modules/through2/node_modules/readable-stream/lib/_stream_writable.js:237:10)
at writeOrBuffer (/node_modules/gulp-template/node_modules/through2/node_modules/readable-stream/lib/_stream_writable.js:227:5)
at DestroyableTransform.Writable.write (/node_modules/gulp-template/node_modules/through2/node_modules/readable-stream/lib/_stream_writable.js:194:11)
at write (/node_modules/gulp/node_modules/vinyl-fs/node_modules/through2/node_modules/readable-stream/lib/_stream_readable.js:623:24)
at flow (/node_modules/gulp/node_modules/vinyl-fs/node_modules/through2/node_modules/readable-stream/lib/_stream_readable.js:632:7)

Content of package.json

"dependencies": {
"bibtex-parser": "^0.0.x",
"bluebird": "^2.2.2",
"latex": "^0.0.x",
"lodash": "^2.4.1",
"lunr": "^0.5.x",
"node-read": "^0.1.4",
"xml2js": "^0.4.x",
"xmldom": "^0.1.x",
"xpath.js": "^0.0.x"
},
"devDependencies": {
"nlf": "^1.0.2",
"del": "^0.1.1",
"gulp": "^3.8.5",
"gulp-bower": "^0.0.6",
"gulp-autoprefixer": "^0.0.8",
"gulp-cache": "^0.2.0",
"gulp-changed": "^0.4.0",
"gulp-load-plugins": "^0.5.3",
"gulp-ruby-sass": "^0.5.0",
"gulp-size": "^0.4.0",
"gulp-uglify": "^0.3.1",
"gulp-browserify": "^0.2.0",
"gulp-compass": "^1.1.9",
"gulp-rename": "^1.2.0",
"gulp-template": "^1.0.0",
"gulp-entity-convert": "^0.0.1",
"require-dir": "^0.1.0",
"run-sequence": "^0.3.6",
"browser-sync": "^1.1.2",
"gulp-util": "^3.0.0",
"node-webkit-builder": "^0.1.1",
"config": "^1.0.0"
}

Can I include a html file in other html file?

Suppose, I have index.html as well as header.html. The header.html is as follows:

<div class="header">
      <%= name %>
</div>

I want to include this header in index.html. I am thinking of something like this:

<div class="page">
       <%= _.template('header.html')({name: "New Header"}) %>
</div>

Note: This is not an issue but enhancement.

Change interpolation

how can I do that?
The README has no example for messing with the internal settings of the template engine

Thanks

error when encounter big size image file

I was creating slush template with gulp-template. The template contains one big image file about 200K, the slush script run into an error. When I remove the image, slush script runs well. Later I replace the image with a smaller one(<1K), no error either. So the error is about gulp-template encounter big size nontext files.

Can this use partials as in html partials

I am tryign to find something like assemble for grunt that can insert html files where double braces occur in my build like this
{{header.html}} then in the build that will use the html in there.

Can this do that or is this for some other purpose. I tried to understand the Lodash object but it didnt seem to do this.
Thanks

[ERROR in gulp-template] Unexpected token =

Hi,

since ~ yesterday there seems to be a chance somewhere in the default interpolate syntax.
<%= "hi" %> does not work, <% "hi" %> is executed.
Our suspicion: gulp.utils version dependencies are fetching the newest versions.

By setting the interpolate/evaluate options, it works file.

Anyone experienced the same issues ?

Silent ignore missing variables

I'd like to be able to pass "silent: true" into options, to silently ignore missing variables (perhaps with a warning printed, but no exception).

Lodash.template undefined

I'm getting a undefined is not a function from index.js:19:31
I entered some debugging logs - the var template (ie: lodash.template) on line 19 is undefined.

Instructions

Hi there,

I installed gulp-template and followed the instructions, but seems like there is an issue as the gulpfile.js is not generated and because of this issue, I can't use it.

Any idea why this is happening or is missing some instructions?

https://github.com/sindresorhus/gulp-template

Also, when you posted:

Usage

src/greeting.html

Hello <%= name %>

It does not mean anything to me as I can't find the gulpfile.js.

Cheers,

fernando fas
[email protected]

Gulp task crashes when I'm trying to copy fnt file through gulp-template

Here is my gulp file:

gulp.task('assets', function() {    
    return gulp.src(srcs.assets)
        .pipe(changed(dests.assets))
        .pipe(gulp.dest(dests.assets))
        .pipe(browserSync.reload({stream : true}));
});

Basically it just copy assets folder to my build folder. The structure of assets folder is:

assets --
|--- images
|--- sounds
|--- fonts

There is no problem if I remove the fonts folder. But I got the following error message when I added the fonts folder with the .fnt file.

events.js:85
throw er; // Unhandled 'error' event
^
SyntaxError: Unexpected token <
at Function (native)
at template (/usr/local/lib/node_modules/slush-phaser-typescript-scss/node_modules/gulp-template/node_modules/lodash/dist/lodash.js:6306:22)
at Transform._transform (/usr/local/lib/node_modules/slush-phaser-typescript-scss/node_modules/gulp-template/index.js:19:31)
at Transform._read (/usr/local/lib/node_modules/slush-phaser-typescript-scss/node_modules/gulp-template/node_modules/through2/node_modules/readable-stream/lib/_stream_transform.js:184:10)
at Transform._write (/usr/local/lib/node_modules/slush-phaser-typescript-scss/node_modules/gulp-template/node_modules/through2/node_modules/readable-stream/lib/_stream_transform.js:172:12)
at doWrite (/usr/local/lib/node_modules/slush-phaser-typescript-scss/node_modules/gulp-template/node_modules/through2/node_modules/readable-stream/lib/_stream_writable.js:237:10)
at writeOrBuffer (/usr/local/lib/node_modules/slush-phaser-typescript-scss/node_modules/gulp-template/node_modules/through2/node_modules/readable-stream/lib/_stream_writable.js:227:5)
at Transform.Writable.write (/usr/local/lib/node_modules/slush-phaser-typescript-scss/node_modules/gulp-template/node_modules/through2/node_modules/readable-stream/lib/_stream_writable.js:194:11)
at write (/usr/local/lib/node_modules/slush-phaser-typescript-scss/node_modules/gulp/node_modules/vinyl-fs/node_modules/through2/node_modules/readable-stream/lib/_stream_readable.js:623:24)
at flow (/usr/local/lib/node_modules/slush-phaser-typescript-scss/node_modules/gulp/node_modules/vinyl-fs/node_modules/through2/node_modules/readable-stream/lib/_stream_readable.js:632:7)

The fnt file is:

<font>
  <info face="font" size="72" bold="0" italic="0" charset="" unicode="" stretchH="100" smooth="1" aa="1" padding="2,2,2,2" spacing="0,0" outline="0"/>
  <common lineHeight="80" base="57" scaleW="361" scaleH="512" pages="1" packed="0"/>
  <pages>
    <page id="0" file="font.png"/>
  </pages>
  <chars count="80">
    <char id="32" x="0" y="0" width="0" height="0" xoffset="1" yoffset="5" xadvance="20" page="0" chnl="15"/>
  </chars>
  <kernings count="96">
    <kerning first="32" second="65" amount="-4"/>
    <kerning first="121" second="46" amount="-5"/>
  </kernings>
</font>

Can anybody suggest what's wrong with my fnt file? Thanks.

to accept glob functionality

i have something like:

  gulp.src("src/index.html")
    .pipe(template({scripts: [ "src/**/*.js","!src/assets/**/*.js" ]}))
    .pipe(gulp.dest("dest/index.html"));

template can not understand glob pattern matching (**)
what can i do? can it be a feature request or i should handle this issue in another way?

Custom delimiters?

Is there any way to set custom delimiters in the way you would using the Lo-Dash templateSettings.evaluate property?

lodash template throws: #<Object> has no method 'forEach'

in index.html

<% _.forEach(people, function(name) { %><li><%- name %></li><% }); %>

and gulpfile.js

  gulp.src("src/index.html")
    .pipe(template({'people': ['fred', 'barney']}))
    .pipe(gulp.dest(build_dir));

i get

stream.js:94
      throw er; // Unhandled stream error in pipe.
            ^
TypeError: Object #<Object> has no method 'forEach'
    at eval (eval at template (/node_modules/gulp-template/node_modules/lodash.template/index.js:201:18), <anonymous>:8:4)
    at template (/node_modules/gulp-template/node_modules/lodash.template/index.js:207:12)
    at /node_modules/gulp-template/index.js:8:30
    at wrappedMapper (/node_modules/gulp-template/node_modules/event-stream/node_modules/map-stream/index.js:76:19)
    at Stream.stream.write (/node_modules/gulp-template/node_modules/event-stream/node_modules/map-stream/index.js:88:21)
    at Stream.ondata (stream.js:51:26)
    at Stream.EventEmitter.emit (events.js:95:17)
    at queueData (/node_modules/gulp/node_modules/map-stream/index.js:38:21)
    at next (/node_modules/gulp/node_modules/map-stream/index.js:68:5)
    at /node_modules/gulp/node_modules/map-stream/index.js:77:7

template code taken from Lo-Dash documentation

Can you tell me how can I loop this in this template?

-json

{
    "name" : "csh",
    "eachTest" : [
        {"value":1},
        {"value":2},
        {"value":3},
        {"value":4}
    ]
}

-html

<body>
 <%= name %> <!-- this output is correct-->
 <%= eachTest %> <!-- this output is not what you want. No loop. --> 
</body>

__

How to use file names matched by pattern?

How to use actual file names matched by pattern?

I want all my scripts file names rendered in index file matched by pattern like this-
gulpfile.js
scripts: ['js/**/*.js]

<!-- index file -->
<% scripts.forEach( function ( file ) { %>
<script type="text/javascript" src="<%= file %>"></script><% }); %>

Output:

<script type="text/javascript" src="js/**/*.js"></script>

Obviously, this does not work. For example if I had file js file at js/app.js and js/config/home.js it should render
<script type="text/javascript" src="js/app.js"></script>
<script type="text/javascript" src="js/config/home.js"></script>

error if gulp.src has negated paths

Below code throws error:

gulp.src(['src/**/*.html', '!src/**/test/*.html'])
            .pipe(template({
                includes: '<script>....</script>'
            }))
            .pipe(gulp.dest(destination));

Error:

events.js:160
      throw er; // Unhandled 'error' event
      ^
ReferenceError: data is not defined
    at eval (lodash.templateSources[5]:10:4)
    at DestroyableTransform._transform (/Users/.../node_modules/gulp-template/index.js:22:40)
    at DestroyableTransform.Transform._read (/Users/.../node_modules/gulp-template/node_modules/readable-stream/lib/_stream_transform.js:159:10)
    at DestroyableTransform.Transform._write (/Users/.../node_modules/gulp-template/node_modules/readable-stream/lib/_stream_transform.js:147:83)
    at doWrite (/Users/.../node_modules/gulp-template/node_modules/readable-stream/lib/_stream_writable.js:313:64)
    at writeOrBuffer (/Users/.../node_modules/gulp-template/node_modules/readable-stream/lib/_stream_writable.js:302:5)
    at DestroyableTransform.Writable.write (/Users/.../node_modules/gulp-template/node_modules/readable-stream/lib/_stream_writable.js:241:11)
    at write (/Users/.../node_modules/through2/node_modules/readable-stream/lib/_stream_readable.js:623:24)
    at flow (/Users/.../node_modules/through2/node_modules/readable-stream/lib/_stream_readable.js:632:7)
    at DestroyableTransform.pipeOnReadable (/Users/.../node_modules/through2/node_modules/readable-stream/lib/_stream_readable.js:664:5)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.