gulp-sys-metalprismic v6.1.0
gulp-sys-metalprismic

An end-to-end Gulp build system and asset pipeline for a webapp templated by Metalsmith and content-managed by Prismic.io. Generates the following Gulp tasks for you:
clean- Cleans the built files.views- Generates Prismic-Metalsmith templates usinggulp-pipe-metalprismic.images- Processes images usinggulp-pipe-assets.videos- Processes videos usinggulp-pipe-assets.fonts- Processes fonts usinggulp-pipe-assets.documents- Processes documents usinggulp-pipe-assets.extras- Processes other miscellaneous files such asrobots.txtandsitemap.xmlusinggulp-pipe-assets.scripts- Bundles JavaScripts usinggulp-pipe-assets.styles, - Compiles preprocessed stylesheets usinggulp-pipe-assets.rev- Revisions asset files by appending content hash to filenames and auto replaces old paths with fingerprinted paths in affected files. Usesgulp-pipe-assets.sitemap- Createssitemap.xmlfrom generated HTML files, based ongulp-sitemap.serve- Serves the app withbrowser-sync.default- Executes the above tasks in sequence.
Usage
import gulp from 'gulp-sys-metalprismic';
gulp.init({
src: 'app',
dest: 'public',
scripts: {
entry: {
application: './application.js'
}
},
views: {
i18n: {
default: 'en',
locales: ['en', 'fr'],
directory: 'config/locales'
},
metadata {
_: require('lodash'),
moment: require('moment')
}
},
sitemap: undefined
});$ gulpAPI
init(options[, extendsDefaults])
options
Type: Object
Options that define the behavior of this task. This object is parsed by config() in gulp-task-helpers, so you can target specific NODE_ENV environments.
options.base (required)
Type: string
Default: undefined
Fallback base path for all the subtasks if one does not exist in their individual configs.
options.dest (required)
Type: string
Default: undefined
Fallback destination path for all the subtasks if one does not exist in their individual configs.
options.watch
Type: Object
Default:
{
tasks: [browserSync.reload]
}Fallback watch config for all the subtasks if one does not exist in their individual configs. See the README of any of the sub packages to see what a watch config looks like.
options.views
Type: Object
Default:
{
apiEndpoint: process.env.PRISMIC_API_ENDPOINT,
accessToken: process.env.PRISMIC_ACCESS_TOKEN
}Options for gulp-pipe-metalprismic.
options.images
Type: Object
Default:
{
base: `${options.base}`,
src: `images/**/*`,
dest: `${options.dest}/assets`
}Options for images task from gulp-pipe-assets.
options.videos
Type: Object
Default:
{
base: `${options.base}`,
src: `videos/**/*`,
dest: `${options.dest}/assets`
}Options for videos task from gulp-pipe-assets.
options.fonts
Type: Object
Default:
{
base: `${options.base}`,
src: `fonts/**/*`,
dest: `${options.dest}/assets`
}Options for fonts task from gulp-pipe-assets.
options.documents
Type: Object
Default:
{
base: `${options.base}`,
src: `documents/**/*`,
dest: `${options.dest}/assets`
}Options for documents task from gulp-pipe-assets.
options.extras
Type: Object
Default:
{
base: `${options.base}`,
src: `*`,
dest: `${options.dest}`
}Options for extras task from gulp-pipe-assets.
options.scripts
Type: Object
Default: See gulp-pipe-assets
Options for scripts task from gulp-pipe-assets.
options.styles
Type: Object
Default: See gulp-pipe-assets
Options for styles task from gulp-pipe-assets.
options.rev
Type: Object
Default:
{
envs: {
production: {
src: `${options.dest}`
}
}
}Options for rev task from gulp-pipe-assets.
options.sitemap
Type: Object
Default: undefined
Options for sitemap task based on gulp-sitemap.
options.clean
Type: Array
Default:
[
`${options.dest}`,
`${options.base}/views/.prismic`
]Path(s) to delete during the clean task.
options.serve
Type: Object
Default:
{
server: {
baseDir: `${options.dest}`,
},
files: false,
notify: false,
port: process.env.PORT || 3000,
logLevel: 'info',
open: false
}Options for browser-sync. To serve the app include the --serve or --s flag when executing the default task.
extendsDefaults
Type: boolean
Default: true
Maps to useConcat param in config() of gulp-task-helpers.
Watching for Changes
You can pass a --watch or --w flag to the Gulp command to enable file watching, like so:
$ gulp --watchBy default, files that were emitted as source files will be marked for watching and the task name assigned to associated subtasks will be executed whenever a file changes. To override this behavior use the global options.watch or the individual options.watch for each subtask.
Serving the App
You can pass a --serve or --s flag to the Gulp command to serve the app. When used in conjuction with the --watch flag, upon every file change browserSync.reload will be called.
Disclaimer
This is an experimental project driven by internal requirements.
License
This software is released under the MIT License.
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago