0.3.6 • Published 8 years ago

gconfig v0.3.6

Weekly downloads
4
License
MIT
Repository
github
Last release
8 years ago

gConfig

Build Status issues License

Configuration helper for Gulp

Getting Started

This is a personal tool....it is most likely not going to be for you!

I also change it and break it a lot. Have a nice day.

Install it via npm:

npm install gconfig

And include in your project:

import g$ from 'gconfig';

Make some configs:

const mainConfig = {
  rootFolder : '.';
  sourceFolder : 'src';
  subFolder : 'main-site';
  buildsFolder : 'builds';
  bowerFolder : 'bower_components';
  docsFolder : 'docs';
  nodeFolder : 'node_modules';
  liveReload : false;
  debug : true;
  sourceFiles : {
    js: [],
    css: []
  }
};
const secondaryConfig = {
  rootFolder : '.';
  sourceFolder : 'src';
  subFolder : 'secondary-site';
  buildsFolder : 'builds';
  bowerFolder : 'different/bower_components';
  docsFolder : 'secondary-site-docs';
  nodeFolder : 'different/node_modules';
  liveReload : true;
  debug : false;
  sourceFiles : {
    js: [],
    css: []
  }
};

Then load the config you want

g$.loadConfig(mainConfig);

Now you can make calls:

g$.DS === '/'; // Directory separator from nPath
g$.root === '.';
g$.build === './builds/main-site/';
g$.source === './src/main-site/';
g$.bower === './bower_components/';
g$.node === './node_modules/';
g$.docs === './docs/';

Then load a different config

g$.loadConfig(secondaryConfig);

Now:

g$.DS === '/'; // Directory separator from nPath
g$.root === '.';
g$.build === './builds/secondary-site/';
g$.source === './src/secondary-site/';
g$.bower === './different/bower_components/';
g$.node === './different/node_modules/';
g$.docs === './secondary-site-docs/';

ex:

gulp.task('buildSetup', () => {
  g$.environment = 'dev';
  g$.buildInfo();
});


gulp.task('watch', () => {
  gulp.watch(g$.sourceFiles.js, ['js']);
});

gulp.task('docs', () => {

  g$.deleteFiles([
    g$.docs
  ]);

  gulp.src(g$.sourceFiles.docs)
    .pipe(esDoc({
      source: g$.source,
      destination: g$.docs,
      autoPrivate: true,
      includes: ['\\.(es6)$'],
      coverage: true,
      includeSource: true,
      plugins: [{name: 'esdoc-es7-plugin'}]
    }));
});

gulp.task('js', () => {

  g$.deleteFiles([g$.build + '**/**']);

  return gulp.src(g$.sourceFiles.js, {
      base: g$.source
    })
    .pipe(plumber())
    .pipe(gulpif(g$.environment === 'dev', sourcemaps.init()))
    .pipe(concat('main.js'))
    .pipe(gulpif(g$.environment === 'dev', sourcemaps.write()))
    .pipe(gulp.dest(g$.build));
});

License

MIT

0.3.6

8 years ago

0.3.5

8 years ago

0.3.4

8 years ago

0.3.3

8 years ago

0.3.2

8 years ago

0.1.21

9 years ago

0.1.19

9 years ago

0.1.18

9 years ago

0.1.17

9 years ago

0.1.16

9 years ago

0.1.14

10 years ago

0.1.13

10 years ago

0.1.12

10 years ago

0.1.11

10 years ago

0.1.10

10 years ago

0.1.9

10 years ago

0.1.7

10 years ago

0.1.6

10 years ago

0.1.5

10 years ago

0.1.4

10 years ago

0.1.2

10 years ago

0.1.1

10 years ago

0.1.0

10 years ago