diff --git a/.gitignore b/.gitignore index 33cade9..9869aa9 100644 --- a/.gitignore +++ b/.gitignore @@ -7,4 +7,4 @@ yarn-error.log /templates/.* /export/ /build/ -/app/manifest/ +/src/manifest/ diff --git a/app/client.js b/src/client.js similarity index 100% rename from app/client.js rename to src/client.js diff --git a/components/Nav.html b/src/components/Nav.html similarity index 100% rename from components/Nav.html rename to src/components/Nav.html diff --git a/routes/_error.html b/src/routes/_error.html similarity index 100% rename from routes/_error.html rename to src/routes/_error.html diff --git a/routes/_layout.html b/src/routes/_layout.html similarity index 100% rename from routes/_layout.html rename to src/routes/_layout.html diff --git a/routes/about.html b/src/routes/about.html similarity index 100% rename from routes/about.html rename to src/routes/about.html diff --git a/routes/blog/[slug].html b/src/routes/blog/[slug].html similarity index 100% rename from routes/blog/[slug].html rename to src/routes/blog/[slug].html diff --git a/routes/blog/[slug].json.js b/src/routes/blog/[slug].json.js similarity index 100% rename from routes/blog/[slug].json.js rename to src/routes/blog/[slug].json.js diff --git a/routes/blog/_posts.js b/src/routes/blog/_posts.js similarity index 100% rename from routes/blog/_posts.js rename to src/routes/blog/_posts.js diff --git a/routes/blog/index.html b/src/routes/blog/index.html similarity index 100% rename from routes/blog/index.html rename to src/routes/blog/index.html diff --git a/routes/blog/index.json.js b/src/routes/blog/index.json.js similarity index 100% rename from routes/blog/index.json.js rename to src/routes/blog/index.json.js diff --git a/routes/index.html b/src/routes/index.html similarity index 100% rename from routes/index.html rename to src/routes/index.html diff --git a/app/server.js b/src/server.js similarity index 93% rename from app/server.js rename to src/server.js index 5c85c61..f248e34 100644 --- a/app/server.js +++ b/src/server.js @@ -10,7 +10,7 @@ const dev = NODE_ENV === 'development'; polka() // You can also use Express .use( compression({ threshold: 0 }), - sirv('assets', { dev }), + sirv('static', { dev }), sapper({ manifest }) ) .listen(PORT, err => { diff --git a/app/service-worker.js b/src/service-worker.js similarity index 100% rename from app/service-worker.js rename to src/service-worker.js diff --git a/app/template.html b/src/template.html similarity index 100% rename from app/template.html rename to src/template.html diff --git a/assets/favicon.png b/static/favicon.png similarity index 100% rename from assets/favicon.png rename to static/favicon.png diff --git a/assets/global.css b/static/global.css similarity index 100% rename from assets/global.css rename to static/global.css diff --git a/assets/great-success.png b/static/great-success.png similarity index 100% rename from assets/great-success.png rename to static/great-success.png diff --git a/assets/manifest.json b/static/manifest.json similarity index 100% rename from assets/manifest.json rename to static/manifest.json diff --git a/assets/svelte-logo-192.png b/static/svelte-logo-192.png similarity index 100% rename from assets/svelte-logo-192.png rename to static/svelte-logo-192.png diff --git a/assets/svelte-logo-512.png b/static/svelte-logo-512.png similarity index 100% rename from assets/svelte-logo-512.png rename to static/svelte-logo-512.png diff --git a/webpack.config.js b/webpack.config.js new file mode 100644 index 0000000..3401f75 --- /dev/null +++ b/webpack.config.js @@ -0,0 +1,77 @@ +const webpack = require('webpack'); +const config = require('sapper/config/webpack.js'); +const pkg = require('./package.json'); + +const mode = process.env.NODE_ENV; +const dev = mode === 'development'; + +module.exports = { + client: { + entry: config.client.entry(), + output: config.client.output(), + resolve: { + extensions: ['.js', '.json', '.html'], + mainFields: ['svelte', 'module', 'browser', 'main'] + }, + module: { + rules: [ + { + test: /\.html$/, + use: { + loader: 'svelte-loader', + options: { + dev, + hydratable: true, + hotReload: true + } + } + } + ] + }, + mode, + plugins: [ + dev && new webpack.HotModuleReplacementPlugin(), + new webpack.DefinePlugin({ + 'process.browser': true, + 'process.env.NODE_ENV': JSON.stringify(mode) + }), + ].filter(Boolean), + devtool: dev && 'inline-source-map' + }, + + server: { + entry: config.server.entry(), + output: config.server.output(), + target: 'node', + resolve: { + extensions: ['.js', '.json', '.html'], + mainFields: ['svelte', 'module', 'browser', 'main'] + }, + externals: Object.keys(pkg.dependencies), + module: { + rules: [ + { + test: /\.html$/, + use: { + loader: 'svelte-loader', + options: { + css: false, + generate: 'ssr', + dev + } + } + } + ] + }, + mode: process.env.NODE_ENV, + performance: { + hints: false // it doesn't matter if server.js is large + } + }, + + serviceworker: { + entry: config.serviceworker.entry(), + output: config.serviceworker.output(), + mode: process.env.NODE_ENV + } +}; diff --git a/webpack/client.config.js b/webpack/client.config.js deleted file mode 100644 index ff4400a..0000000 --- a/webpack/client.config.js +++ /dev/null @@ -1,38 +0,0 @@ -const webpack = require('webpack'); -const config = require('sapper/config/webpack.js'); - -const mode = process.env.NODE_ENV; -const dev = mode === 'development'; - -module.exports = { - entry: config.client.entry(), - output: config.client.output(), - resolve: { - extensions: ['.js', '.json', '.html'], - mainFields: ['svelte', 'module', 'browser', 'main'] - }, - module: { - rules: [ - { - test: /\.html$/, - use: { - loader: 'svelte-loader', - options: { - dev, - hydratable: true, - hotReload: true - } - } - } - ] - }, - mode, - plugins: [ - dev && new webpack.HotModuleReplacementPlugin(), - new webpack.DefinePlugin({ - 'process.browser': true, - 'process.env.NODE_ENV': JSON.stringify(mode) - }), - ].filter(Boolean), - devtool: dev && 'inline-source-map' -}; diff --git a/webpack/server.config.js b/webpack/server.config.js deleted file mode 100644 index 6de2a07..0000000 --- a/webpack/server.config.js +++ /dev/null @@ -1,34 +0,0 @@ -const config = require('sapper/config/webpack.js'); -const pkg = require('../package.json'); - -const dev = process.env.NODE_ENV === 'development'; - -module.exports = { - entry: config.server.entry(), - output: config.server.output(), - target: 'node', - resolve: { - extensions: ['.js', '.json', '.html'], - mainFields: ['svelte', 'module', 'browser', 'main'] - }, - externals: Object.keys(pkg.dependencies), - module: { - rules: [ - { - test: /\.html$/, - use: { - loader: 'svelte-loader', - options: { - css: false, - generate: 'ssr', - dev - } - } - } - ] - }, - mode: process.env.NODE_ENV, - performance: { - hints: false // it doesn't matter if server.js is large - } -}; \ No newline at end of file diff --git a/webpack/service-worker.config.js b/webpack/service-worker.config.js deleted file mode 100644 index ab91eb4..0000000 --- a/webpack/service-worker.config.js +++ /dev/null @@ -1,7 +0,0 @@ -const config = require('sapper/config/webpack.js'); - -module.exports = { - entry: config.serviceworker.entry(), - output: config.serviceworker.output(), - mode: process.env.NODE_ENV -}; \ No newline at end of file