0.3.6 • Published 7 years ago

gconfig v0.3.6

Weekly downloads
4
License
MIT
Repository
github
Last release
7 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

7 years ago

0.3.5

7 years ago

0.3.4

7 years ago

0.3.3

7 years ago

0.3.2

7 years ago

0.1.21

8 years ago

0.1.19

8 years ago

0.1.18

8 years ago

0.1.17

8 years ago

0.1.16

8 years ago

0.1.14

8 years ago

0.1.13

8 years ago

0.1.12

8 years ago

0.1.11

8 years ago

0.1.10

8 years ago

0.1.9

8 years ago

0.1.7

8 years ago

0.1.6

8 years ago

0.1.5

8 years ago

0.1.4

8 years ago

0.1.2

8 years ago

0.1.1

8 years ago

0.1.0

8 years ago