Initial commit

This commit is contained in:
Matt Isenhower 2017-08-02 09:37:44 -07:00
commit bc207534d7
12 changed files with 5919 additions and 0 deletions

3
.babelrc Normal file
View File

@ -0,0 +1,3 @@
{
presets: ['env', 'stage-2']
}

1
.gitattributes vendored Normal file
View File

@ -0,0 +1 @@
* text=auto

2
.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
node_modules
public/*

33
package.json Normal file
View File

@ -0,0 +1,33 @@
{
"private": true,
"scripts": {
"dev": "webpack",
"watch": "npm run dev -- --watch",
"build": "webpack -p --env production",
"serve": "webpack-dev-server"
},
"dependencies": {
"babel-core": "^6.25.0",
"babel-loader": "^7.1.1",
"babel-preset-env": "^1.6.0",
"babel-preset-stage-2": "^6.24.1",
"bulma": "^0.5.0",
"clean-webpack-plugin": "^0.1.16",
"css-loader": "^0.28.4",
"extract-text-webpack-plugin": "^3.0.0",
"favicons-webpack-plugin": "^0.0.7",
"file-loader": "^0.11.2",
"html-loader": "^0.5.0",
"html-webpack-plugin": "^2.30.1",
"node-sass": "^4.5.3",
"purify-css": "^1.2.5",
"purifycss-webpack": "^0.7.0",
"sass-loader": "^6.0.6",
"style-loader": "^0.18.2",
"vue": "^2.4.2",
"vue-loader": "^13.0.2",
"vue-template-compiler": "^2.4.2",
"webpack": "^3.4.1",
"webpack-dev-server": "^2.6.1"
}
}

13
readme.md Normal file
View File

@ -0,0 +1,13 @@
# splatoon2.ink
## Development
```shell
yarn serve
```
## Production
```shell
yarn build
```

1
src/css/_variables.scss Normal file
View File

@ -0,0 +1 @@
@import '~bulma/sass/utilities/initial-variables';

2
src/css/main.scss Normal file
View File

@ -0,0 +1,2 @@
@import './variables';
@import '~bulma';

13
src/html/index.html Normal file
View File

@ -0,0 +1,13 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>splatoon2.ink</title>
<meta name="description" content="Splatoon 2 map schedules">
</head>
<body>
<div id="app"></div>
</body>
</html>

14
src/js/components/App.vue Normal file
View File

@ -0,0 +1,14 @@
<template>
<div>
splatoon2.ink
</div>
</template>
<script>
export default {
data() {
return {
};
},
}
</script>

4
src/js/main.js Normal file
View File

@ -0,0 +1,4 @@
import Vue from 'vue';
import App from './components/App.vue';
new Vue(App).$mount('#app');

110
webpack.config.js Normal file
View File

@ -0,0 +1,110 @@
const path = require('path');
const glob = require('glob');
const CleanWebpackPlugin = require('clean-webpack-plugin');
const ExtractTextPlugin = require('extract-text-webpack-plugin');
const PurifyCSSPlugin = require('purifycss-webpack');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const FaviconsWebpackPlugin = require('favicons-webpack-plugin')
module.exports = function(env) {
const production = (env === 'production');
return {
entry: {
main: [
'./src/js/main.js',
'./src/css/main.scss',
],
},
output: {
path: path.resolve(__dirname, './public'),
filename: 'assets/js/[name].[chunkhash].js',
},
devtool: (production) ? false : 'inline-source-map',
module: {
loaders: [
{
test: /\.js$/,
exclude: /node_modules/,
loader: 'babel-loader'
},
{
test: /\.vue$/,
loader: 'vue-loader',
},
{
test: /\.scss$/,
use: ExtractTextPlugin.extract({
fallback: 'style-loader',
publicPath: '../../',
use: [
{
loader: 'css-loader',
options: { sourceMap: !production },
},
{
loader: 'sass-loader',
options: { sourceMap: !production },
},
],
}),
},
{
test: /\.woff2?$|\.ttf$|\.eot$|\.svg$/,
loader: 'file-loader?name=assets/fonts/[name].[hash].[ext]',
},
{
test: /\.(png|jpe?g|gif)$/,
loader: 'file-loader?name=assets/img/[name].[hash].[ext]',
},
{
test:/^favicon\.ico$/,
loader: 'file-loader?name=favicon.ico',
}
],
},
plugins: [
// Remove old files
new CleanWebpackPlugin([
'public/assets/css/*',
'public/assets/js/*',
]),
// Extract CSS to a separate file
new ExtractTextPlugin('assets/css/[name].[contenthash].css'),
// Remove unused CSS styles
new PurifyCSSPlugin({
paths: [
...glob.sync(path.join(__dirname, 'src/html/*.html')),
...glob.sync(path.join(__dirname, 'src/js/components/*.vue')),
],
minimize: production,
purifyOptions: {
//whitelist: ['.tooltip'],
},
}),
// Favicon
// new FaviconsWebpackPlugin({
// logo: './src/img/1f389.svg',
// prefix: 'assets/icons/[hash:5]/',
// background: '#333',
// icons: {
// 'android': true,
// 'appleIcon': { offset: 15 },
// 'appleStartup': false,
// 'coast': false,
// 'favicons': true,
// 'firefox': false,
// 'windows': true,
// 'yandex': false,
// }
// }),
// Build HTML
new HtmlWebpackPlugin({
filename: 'index.html',
template: 'src/html/index.html',
minify: { collapseWhitespace: true },
}),
],
}
}

5723
yarn.lock Normal file

File diff suppressed because it is too large Load Diff