config file for projects
export let settings = {/* ... */}
export let inputs = {/* ... */}
export let outputs = {/* ... */}
export let settings = {
inputs: './inputs',
outputs: './outputs',
server: {
port: 3000,
static_dir: 'outputs/public',
fetch_handler: 'outputs/api/fetch.js',
static_headers: {
'Cross-Origin-Opener-Policy': 'same-origin',
'Cross-Origin-Embedder-Policy': 'require-corp',
'Cross-Origin-Resource-Policy': 'same-origin'
}
},
}
Define folders in inputs
and specify how to interpret each file.
export let inputs = {
assets: {
model: Asset(),
glob: '**/*',
ignore: /\/_|^_/,
},
pages: {
model: Page({
_document: 'inputs/pages/_document.js'
}),
_document: 'inputs/pages/_document.js',
glob: '**/*.js',
ignore: /\/_|^_/
},
views: {
model: View(),
glob: '**/*.js',
ignore: /\/_|^_/,
}
}
Build a recursive output tree within the output
folder. Objects are executed in parallel, arrays are executed in series.
export let outputs = {}