Update Webpack config like scratch-storage

- Move build outputs into `dist/`
- Make build output file names more consistent
- Update `playground/index.html` for new output file name
- Explicitly specify target => Node output is much smaller
- Minor fixes / cleanup in `.gitignore` and `src/index*.js`
This commit is contained in:
Christopher Willis-Ford 2016-12-09 15:11:02 -08:00
parent b35f684478
commit 47b46fb1aa
6 changed files with 28 additions and 19 deletions

12
.gitignore vendored
View file

@ -5,7 +5,13 @@
/node_modules
npm-*
# Testing
/.nyc_output
/coverage
# IDEA
/.idea
# Build
/render*.js
/dist.js
/playground/render.js
/dist
/playground/scratch-render.js

View file

@ -9,7 +9,7 @@
"type": "git",
"url": "git+ssh://git@github.com/LLK/scratch-render.git"
},
"main": "./dist.js",
"main": "./dist/node/scratch-render.js",
"scripts": {
"build": "./node_modules/.bin/webpack --progress --colors",
"lint": "./node_modules/.bin/eslint .",

View file

@ -31,7 +31,7 @@
Min: <input id="fudgeMin" type="number" onchange="onFudgeMinChanged(this.value)">
Max: <input id="fudgeMax" type="number" onchange="onFudgeMaxChanged(this.value)">
</p>
<script src="render.js"></script>
<script src="scratch-render.js"></script>
<script>
var canvas = document.getElementById('scratch-stage');
var fudge = 90;

View file

@ -1,8 +1,8 @@
/* eslint-env browser */
require('babel-polyfill');
var RenderWebGL = require('./RenderWebGL');
/**
* Export for use in a web page
* Export for use in a web page.
* @type {RenderWebGL}
*/
window.RenderWebGL = RenderWebGL;
window.RenderWebGL = require('./index');

View file

@ -1,6 +1,7 @@
var RenderWebGL = require('./RenderWebGL');
const RenderWebGL = require('./RenderWebGL');
/**
* Export for NPM / Node.js
* Export for NPM & Node.js
* @type {RenderWebGL}
*/
module.exports = RenderWebGL;

View file

@ -1,7 +1,7 @@
var path = require('path');
var webpack = require('webpack');
const path = require('path');
const webpack = require('webpack');
var base = {
const base = {
devServer: {
contentBase: path.resolve(__dirname, 'playground'),
host: '0.0.0.0',
@ -49,10 +49,11 @@ var base = {
module.exports = [
// Web-compatible
Object.assign({}, base, {
target: 'web',
entry: {
'render': './src/index-web.js',
'playground/render': './src/index-web.js',
'render.min': './src/index-web.js'
'dist/web/scratch-render': './src/index-web.js',
'dist/web/scratch-render.min': './src/index-web.js',
'playground/scratch-render': './src/index-web.js'
},
output: {
path: __dirname,
@ -61,14 +62,15 @@ module.exports = [
}),
// Webpack-compatible
Object.assign({}, base, {
target: 'node',
entry: {
'render': './src/index.js'
'scratch-render': './src/index.js'
},
output: {
library: 'ScratchRender',
libraryTarget: 'commonjs2',
path: __dirname,
filename: 'dist.js'
filename: 'dist/node/[name].js'
}
})
];