diff --git a/.babelrc b/.babelrc
deleted file mode 100755
index ee668874..00000000
--- a/.babelrc
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "presets": [
- [
- "env", {
- "modules": false,
- "targets": {
- "browsers": ["> 1%", "last 2 versions", "not ie <= 8"]
- }
- }
- ],
- "stage-2"
- ],
- "plugins": ["transform-vue-jsx", "transform-runtime"],
- "env": {
- "test": {
- "presets": ["env", "stage-2"],
- "plugins": ["transform-vue-jsx", "istanbul"]
- }
- }
-}
diff --git a/.editorconfig b/.editorconfig
old mode 100755
new mode 100644
index 9d08a1a8..c24743d0
--- a/.editorconfig
+++ b/.editorconfig
@@ -1,9 +1,7 @@
-root = true
-
-[*]
-charset = utf-8
+[*.{js,jsx,ts,tsx,vue}]
indent_style = space
indent_size = 2
end_of_line = lf
-insert_final_newline = true
trim_trailing_whitespace = true
+insert_final_newline = true
+max_line_length = 100
diff --git a/.eslintignore b/.eslintignore
deleted file mode 100755
index e2192c5c..00000000
--- a/.eslintignore
+++ /dev/null
@@ -1,5 +0,0 @@
-/build/
-/config/
-/dist/
-/*.js
-/test/unit/coverage/
diff --git a/.eslintrc.js b/.eslintrc.js
deleted file mode 100755
index d58821f3..00000000
--- a/.eslintrc.js
+++ /dev/null
@@ -1,81 +0,0 @@
-// https://eslint.org/docs/user-guide/configuring
-
-module.exports = {
- root: true,
- parserOptions: {
- parser: 'babel-eslint'
- },
- env: {
- browser: true,
- },
- // https://github.com/vuejs/eslint-plugin-vue#priority-a-essential-error-prevention
- // consider switching to `plugin:vue/strongly-recommended` or `plugin:vue/recommended` for stricter rules.
- extends: [
- 'plugin:vue/essential',
- 'airbnb-base',
- ],
- // required to lint *.vue files
- plugins: [
- 'vue',
- ],
- // check if imports actually resolve
- settings: {
- 'import/resolver': {
- webpack: {
- config: 'build/webpack.base.conf.js'
- }
- }
- },
- // add your custom rules here
- rules: {
- "vue/html-closing-bracket-newline": ["error", {
- "singleline": "never",
- "multiline": "always"
- }],
- "vue/order-in-components": [
- "error", {
- "order": [
- "el",
- "name",
- "parent",
- "functional",
- ["delimiters", "comments"],
- ["components", "directives", "filters"],
- "extends",
- "mixins",
- "inheritAttrs",
- "model",
- ["props", "propsData"],
- "data",
- "computed",
- "watch",
- "LIFECYCLE_HOOKS",
- "methods",
- ["template", "render"],
- "renderError",
- ],
- },
- ],
- 'import/extensions': ['error', 'always', {
- js: 'never',
- vue: 'never'
- }],
- "indent": ["error", 2],
- // "max-len": ["error", { "code": 180 }],
- "max-len": "off",
- 'no-param-reassign': ['error', {
- props: true,
- ignorePropertyModificationsFor: [
- 'state', // for vuex state
- 'acc', // for reduce accumulators
- 'e' // for e.returnvalue
- ]
- }],
- // allow optionalDependencies
- 'import/no-extraneous-dependencies': ['error', {
- optionalDependencies: ['test/unit/index.js']
- }],
- // allow debugger during development
- 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off'
- }
-}
diff --git a/.gitignore b/.gitignore
index f71b5b2c..6a716f2e 100755
--- a/.gitignore
+++ b/.gitignore
@@ -1,9 +1,20 @@
.DS_Store
node_modules/
/dist/
+
+/tests/e2e/videos/
+/tests/e2e/screenshots/
+
+# local env files
+.env.local
+.env.*.local
+
+# Log files
npm-debug.log*
yarn-debug.log*
yarn-error.log*
+pnpm-debug.log*
+
.runtimeconfig.json
/functions/.runtimeconfig.json
/test/unit/coverage/
@@ -17,3 +28,4 @@ yarn-error.log*
*.njsproj
*.sln
*.log
+*.sw?
diff --git a/.postcssrc.js b/.postcssrc.js
deleted file mode 100755
index a2cafe9a..00000000
--- a/.postcssrc.js
+++ /dev/null
@@ -1,10 +0,0 @@
-// https://github.com/michael-ciniawsky/postcss-load-config
-
-module.exports = {
- "plugins": {
- "postcss-import": {},
- "postcss-url": {},
- // to edit target browsers: use "browserslist" field in package.json
- "autoprefixer": {}
- }
-}
diff --git a/README.md b/README.md
index c66fcf99..39b6f263 100755
--- a/README.md
+++ b/README.md
@@ -42,16 +42,29 @@ $ yarn dev
# Compiles and minifies for production
$ yarn build
-# Run tests
-$ yarn test
-# Run linter
-$ yarn lint
+### Run your unit tests
+```
+yarn test:unit
+```
+
+### Run your end-to-end tests
+```
+yarn test:e2e
+```
+
+### Lints and fixes files
+```
+yarn lint
+```
# Translate strings (requires google API key)
$ yarn translate
```
+### Customize configuration
+See [Configuration Reference](https://cli.vuejs.org/config/).
+
## Contributors
Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
diff --git a/babel.config.js b/babel.config.js
new file mode 100644
index 00000000..757ff9b1
--- /dev/null
+++ b/babel.config.js
@@ -0,0 +1,5 @@
+module.exports = {
+ presets: [
+ '@vue/cli-plugin-babel/preset',
+ ],
+};
diff --git a/build/build.js b/build/build.js
deleted file mode 100755
index 8f2ad8ad..00000000
--- a/build/build.js
+++ /dev/null
@@ -1,41 +0,0 @@
-'use strict'
-require('./check-versions')()
-
-process.env.NODE_ENV = 'production'
-
-const ora = require('ora')
-const rm = require('rimraf')
-const path = require('path')
-const chalk = require('chalk')
-const webpack = require('webpack')
-const config = require('../config')
-const webpackConfig = require('./webpack.prod.conf')
-
-const spinner = ora('building for production...')
-spinner.start()
-
-rm(path.join(config.build.assetsRoot, config.build.assetsSubDirectory), err => {
- if (err) throw err
- webpack(webpackConfig, (err, stats) => {
- spinner.stop()
- if (err) throw err
- process.stdout.write(stats.toString({
- colors: true,
- modules: false,
- children: false, // If you are using ts-loader, setting this to true will make TypeScript errors show up during build.
- chunks: false,
- chunkModules: false
- }) + '\n\n')
-
- if (stats.hasErrors()) {
- console.log(chalk.red(' Build failed with errors.\n'))
- process.exit(1)
- }
-
- console.log(chalk.cyan(' Build complete.\n'))
- console.log(chalk.yellow(
- ' Tip: built files are meant to be served over an HTTP server.\n' +
- ' Opening index.html over file:// won\'t work.\n'
- ))
- })
-})
diff --git a/build/check-versions.js b/build/check-versions.js
deleted file mode 100755
index 3ef972a0..00000000
--- a/build/check-versions.js
+++ /dev/null
@@ -1,54 +0,0 @@
-'use strict'
-const chalk = require('chalk')
-const semver = require('semver')
-const packageConfig = require('../package.json')
-const shell = require('shelljs')
-
-function exec (cmd) {
- return require('child_process').execSync(cmd).toString().trim()
-}
-
-const versionRequirements = [
- {
- name: 'node',
- currentVersion: semver.clean(process.version),
- versionRequirement: packageConfig.engines.node
- }
-]
-
-if (shell.which('npm')) {
- versionRequirements.push({
- name: 'npm',
- currentVersion: exec('npm --version'),
- versionRequirement: packageConfig.engines.npm
- })
-}
-
-module.exports = function () {
- const warnings = []
-
- for (let i = 0; i < versionRequirements.length; i++) {
- const mod = versionRequirements[i]
-
- if (!semver.satisfies(mod.currentVersion, mod.versionRequirement)) {
- warnings.push(mod.name + ': ' +
- chalk.red(mod.currentVersion) + ' should be ' +
- chalk.green(mod.versionRequirement)
- )
- }
- }
-
- if (warnings.length) {
- console.log('')
- console.log(chalk.yellow('To use this template, you must update following to modules:'))
- console.log()
-
- for (let i = 0; i < warnings.length; i++) {
- const warning = warnings[i]
- console.log(' ' + warning)
- }
-
- console.log()
- process.exit(1)
- }
-}
diff --git a/build/load-minified.js b/build/load-minified.js
deleted file mode 100644
index aeba1774..00000000
--- a/build/load-minified.js
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict'
-
-const fs = require('fs')
-const UglifyJS = require('uglify-es')
-
-module.exports = function(filePath) {
- const code = fs.readFileSync(filePath, 'utf-8')
- const result = UglifyJS.minify(code)
- if (result.error) return ''
- return result.code
-}
diff --git a/build/logo.png b/build/logo.png
deleted file mode 100755
index f3d2503f..00000000
Binary files a/build/logo.png and /dev/null differ
diff --git a/build/service-worker-dev.js b/build/service-worker-dev.js
deleted file mode 100644
index 979e1962..00000000
--- a/build/service-worker-dev.js
+++ /dev/null
@@ -1,17 +0,0 @@
-// This service worker file is effectively a 'no-op' that will reset any
-// previous service worker registered for the same host:port combination.
-// In the production build, this file is replaced with an actual service worker
-// file that will precache your site's local assets.
-// See https://github.com/facebookincubator/create-react-app/issues/2272#issuecomment-302832432
-
-self.addEventListener('install', () => self.skipWaiting());
-
-self.addEventListener('activate', () => {
- self.clients.matchAll({ type: 'window' }).then(windowClients => {
- for (let windowClient of windowClients) {
- // Force open pages to refresh, so that they have a chance to load the
- // fresh navigation response from the local dev server.
- windowClient.navigate(windowClient.url);
- }
- });
-});
\ No newline at end of file
diff --git a/build/service-worker-prod.js b/build/service-worker-prod.js
deleted file mode 100644
index d6ab08b7..00000000
--- a/build/service-worker-prod.js
+++ /dev/null
@@ -1,55 +0,0 @@
-(function() {
- 'use strict';
-
- // Check to make sure service workers are supported in the current browser,
- // and that the current page is accessed from a secure origin. Using a
- // service worker from an insecure origin will trigger JS console errors.
- var isLocalhost = Boolean(window.location.hostname === 'localhost' ||
- // [::1] is the IPv6 localhost address.
- window.location.hostname === '[::1]' ||
- // 127.0.0.1/8 is considered localhost for IPv4.
- window.location.hostname.match(
- /^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/
- )
- );
-
- window.addEventListener('load', function() {
- if ('serviceWorker' in navigator &&
- (window.location.protocol === 'https:' || isLocalhost)) {
- navigator.serviceWorker.register('service-worker.js')
- .then(function(registration) {
- // updatefound is fired if service-worker.js changes.
- registration.onupdatefound = function() {
- // updatefound is also fired the very first time the SW is installed,
- // and there's no need to prompt for a reload at that point.
- // So check here to see if the page is already controlled,
- // i.e. whether there's an existing service worker.
- if (navigator.serviceWorker.controller) {
- // The updatefound event implies that registration.installing is set
- var installingWorker = registration.installing;
-
- installingWorker.onstatechange = function() {
- switch (installingWorker.state) {
- case 'installed':
- // At this point, the old content will have been purged and the
- // fresh content will have been added to the cache.
- // It's the perfect time to display a "New content is
- // available; please refresh." message in the page's interface.
- break;
-
- case 'redundant':
- throw new Error('The installing ' +
- 'service worker became redundant.');
-
- default:
- // Ignore
- }
- };
- }
- };
- }).catch(function(e) {
- console.error('Error during service worker registration:', e);
- });
- }
- });
-})();
diff --git a/build/translate.js b/build/translate.js
deleted file mode 100644
index 388e2502..00000000
--- a/build/translate.js
+++ /dev/null
@@ -1,26 +0,0 @@
-/* eslint-disable */
-
-const fs = require('fs');
-const translate = require('translate-json-object')();
-const baseJson = require('../src/i18n/en.json');
-
-// NOTE: Please be careful using you api key, translating the entire app to all languages can get costly
-translate.init({ googleApiKey: 'GOOGLE_TRANSLATE_API_KEY' });
-
-const supportedLanguages = ['ar','zh-CN','en','fr','de','it','ja','pt','ru','es'];
-
-for (let i = 0, promise = Promise.resolve(); i < supportedLanguages.length; i++) {
- promise = promise.then(() => new Promise(resolve => {
- const language = supportedLanguages[i];
-
- translate.translate(baseJson, language)
- .then((data) => {
- fs.writeFile(`src/i18n/${language}.json`, JSON.stringify(data, null, 4), () => {
- console.log(`Translation to ${language} completed`);
- resolve();
- });
- }).catch((err) => {
- console.log('error ', err)
- });
- }));
-}
diff --git a/build/utils.js b/build/utils.js
deleted file mode 100755
index e534fb0f..00000000
--- a/build/utils.js
+++ /dev/null
@@ -1,101 +0,0 @@
-'use strict'
-const path = require('path')
-const config = require('../config')
-const ExtractTextPlugin = require('extract-text-webpack-plugin')
-const packageConfig = require('../package.json')
-
-exports.assetsPath = function (_path) {
- const assetsSubDirectory = process.env.NODE_ENV === 'production'
- ? config.build.assetsSubDirectory
- : config.dev.assetsSubDirectory
-
- return path.posix.join(assetsSubDirectory, _path)
-}
-
-exports.cssLoaders = function (options) {
- options = options || {}
-
- const cssLoader = {
- loader: 'css-loader',
- options: {
- sourceMap: options.sourceMap
- }
- }
-
- const postcssLoader = {
- loader: 'postcss-loader',
- options: {
- sourceMap: options.sourceMap
- }
- }
-
- // generate loader string to be used with extract text plugin
- function generateLoaders (loader, loaderOptions) {
- const loaders = options.usePostCSS ? [cssLoader, postcssLoader] : [cssLoader]
-
- if (loader) {
- loaders.push({
- loader: loader + '-loader',
- options: Object.assign({}, loaderOptions, {
- sourceMap: options.sourceMap
- })
- })
- }
-
- // Extract CSS when that option is specified
- // (which is the case during production build)
- if (options.extract) {
- return ExtractTextPlugin.extract({
- use: loaders,
- fallback: 'vue-style-loader'
- })
- } else {
- return ['vue-style-loader'].concat(loaders)
- }
- }
-
- // https://vue-loader.vuejs.org/en/configurations/extract-css.html
- return {
- css: generateLoaders(),
- postcss: generateLoaders(),
- less: generateLoaders('less'),
- sass: generateLoaders('sass', { indentedSyntax: true }),
- scss: generateLoaders('sass'),
- stylus: generateLoaders('stylus'),
- styl: generateLoaders('stylus')
- }
-}
-
-// Generate loaders for standalone style files (outside of .vue)
-exports.styleLoaders = function (options) {
- const output = []
- const loaders = exports.cssLoaders(options)
-
- for (const extension in loaders) {
- const loader = loaders[extension]
- output.push({
- test: new RegExp('\\.' + extension + '$'),
- use: loader
- })
- }
-
- return output
-}
-
-exports.createNotifierCallback = () => {
- const notifier = require('node-notifier')
-
- return (severity, errors) => {
- if (severity !== 'error') return
-
- const error = errors[0]
- const filename = error.file && error.file.split('!').pop()
-
- notifier.notify({
- title: packageConfig.name,
- message: severity + ': ' + error.name,
- subtitle: filename || '',
- icon: path.join(__dirname, 'logo.png')
- })
- }
-}
diff --git a/build/vue-loader.conf.js b/build/vue-loader.conf.js
deleted file mode 100755
index 33ed58bc..00000000
--- a/build/vue-loader.conf.js
+++ /dev/null
@@ -1,22 +0,0 @@
-'use strict'
-const utils = require('./utils')
-const config = require('../config')
-const isProduction = process.env.NODE_ENV === 'production'
-const sourceMapEnabled = isProduction
- ? config.build.productionSourceMap
- : config.dev.cssSourceMap
-
-module.exports = {
- loaders: utils.cssLoaders({
- sourceMap: sourceMapEnabled,
- extract: isProduction
- }),
- cssSourceMap: sourceMapEnabled,
- cacheBusting: config.dev.cacheBusting,
- transformToRequire: {
- video: ['src', 'poster'],
- source: 'src',
- img: 'src',
- image: 'xlink:href'
- }
-}
diff --git a/build/webpack.base.conf.js b/build/webpack.base.conf.js
deleted file mode 100755
index 6b493142..00000000
--- a/build/webpack.base.conf.js
+++ /dev/null
@@ -1,93 +0,0 @@
-'use strict'
-const path = require('path')
-const utils = require('./utils')
-const config = require('../config')
-const vueLoaderConfig = require('./vue-loader.conf')
-
-function resolve (dir) {
- return path.join(__dirname, '..', dir)
-}
-
-const createLintingRule = () => ({
- test: /\.(js|vue)$/,
- loader: 'eslint-loader',
- enforce: 'pre',
- include: [resolve('src'), resolve('test')],
- options: {
- formatter: require('eslint-friendly-formatter'),
- emitWarning: !config.dev.showEslintErrorsInOverlay
- }
-})
-
-module.exports = {
- context: path.resolve(__dirname, '../'),
- entry: {
- app: './src/main.js'
- },
- output: {
- path: config.build.assetsRoot,
- filename: '[name].js',
- publicPath: process.env.NODE_ENV === 'production'
- ? config.build.assetsPublicPath
- : config.dev.assetsPublicPath
- },
- resolve: {
- extensions: ['.js', '.vue', '.json'],
- alias: {
- 'vue$': 'vue/dist/vue.esm.js',
- 'styles': path.resolve('./src/styles'),
- '@': resolve('src'),
- }
- },
- module: {
- rules: [
- ...(config.dev.useEslint ? [createLintingRule()] : []),
- {
- test: /\.vue$/,
- loader: 'vue-loader',
- options: vueLoaderConfig
- },
- {
- test: /\.js$/,
- loader: 'babel-loader',
- include: [resolve('src'), resolve('test'), resolve('node_modules/webpack-dev-server/client')]
- },
- {
- test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
- loader: 'url-loader',
- options: {
- limit: 10000,
- name: utils.assetsPath('img/[name].[hash:7].[ext]')
- }
- },
- {
- test: /\.(mp4|webm|ogg|mp3|wav|flac|aac)(\?.*)?$/,
- loader: 'url-loader',
- options: {
- limit: 10000,
- name: utils.assetsPath('media/[name].[hash:7].[ext]')
- }
- },
- {
- test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/,
- loader: 'url-loader',
- options: {
- limit: 10000,
- name: utils.assetsPath('fonts/[name].[hash:7].[ext]')
- }
- }
- ]
- },
- node: {
- // prevent webpack from injecting useless setImmediate polyfill because Vue
- // source contains it (although only uses it if it's native).
- setImmediate: false,
- // prevent webpack from injecting mocks to Node native modules
- // that does not make sense for the client
- dgram: 'empty',
- fs: 'empty',
- net: 'empty',
- tls: 'empty',
- child_process: 'empty'
- }
-}
diff --git a/build/webpack.dev.conf.js b/build/webpack.dev.conf.js
deleted file mode 100755
index 2ed8d94f..00000000
--- a/build/webpack.dev.conf.js
+++ /dev/null
@@ -1,94 +0,0 @@
-'use strict'
-const fs = require('fs')
-const utils = require('./utils')
-const webpack = require('webpack')
-const config = require('../config')
-const merge = require('webpack-merge')
-const path = require('path')
-const baseWebpackConfig = require('./webpack.base.conf')
-const CopyWebpackPlugin = require('copy-webpack-plugin')
-const HtmlWebpackPlugin = require('html-webpack-plugin')
-const FriendlyErrorsPlugin = require('friendly-errors-webpack-plugin')
-const portfinder = require('portfinder')
-
-const HOST = process.env.HOST
-const PORT = process.env.PORT && Number(process.env.PORT)
-
-const devWebpackConfig = merge(baseWebpackConfig, {
- module: {
- rules: utils.styleLoaders({ sourceMap: config.dev.cssSourceMap, usePostCSS: true })
- },
- // cheap-module-eval-source-map is faster for development
- devtool: config.dev.devtool,
-
- // these devServer options should be customized in /config/index.js
- devServer: {
- clientLogLevel: 'warning',
- historyApiFallback: true,
- hot: true,
- contentBase: false, // since we use CopyWebpackPlugin.
- compress: true,
- host: HOST || config.dev.host,
- port: PORT || config.dev.port,
- open: config.dev.autoOpenBrowser,
- overlay: config.dev.errorOverlay
- ? { warnings: false, errors: true }
- : false,
- publicPath: config.dev.assetsPublicPath,
- proxy: config.dev.proxyTable,
- quiet: true, // necessary for FriendlyErrorsPlugin
- watchOptions: {
- poll: config.dev.poll,
- }
- },
- plugins: [
- new webpack.DefinePlugin({
- 'process.env': require('../config/dev.env')
- }),
- new webpack.HotModuleReplacementPlugin(),
- new webpack.NamedModulesPlugin(), // HMR shows correct file names in console on update.
- new webpack.NoEmitOnErrorsPlugin(),
- // https://github.com/ampedandwired/html-webpack-plugin
- new HtmlWebpackPlugin({
- filename: 'index.html',
- template: 'index.html',
- inject: true,
- serviceWorkerLoader: ``
- }),
- // copy custom static assets
- new CopyWebpackPlugin([
- {
- from: path.resolve(__dirname, '../static'),
- to: config.dev.assetsSubDirectory,
- ignore: ['.*']
- }
- ])
- ]
-})
-
-module.exports = new Promise((resolve, reject) => {
- portfinder.basePort = process.env.PORT || config.dev.port
- portfinder.getPort((err, port) => {
- if (err) {
- reject(err)
- } else {
- // publish the new Port, necessary for e2e tests
- process.env.PORT = port
- // add port to devServer config
- devWebpackConfig.devServer.port = port
-
- // Add FriendlyErrorsPlugin
- devWebpackConfig.plugins.push(new FriendlyErrorsPlugin({
- compilationSuccessInfo: {
- messages: [`Your application is running here: http://${devWebpackConfig.devServer.host}:${port}`],
- },
- onErrors: config.dev.notifyOnErrors
- ? utils.createNotifierCallback()
- : undefined
- }))
-
- resolve(devWebpackConfig)
- }
- })
-})
diff --git a/build/webpack.dev.local.conf.js b/build/webpack.dev.local.conf.js
deleted file mode 100644
index 1ebda156..00000000
--- a/build/webpack.dev.local.conf.js
+++ /dev/null
@@ -1,94 +0,0 @@
-'use strict'
-const fs = require('fs')
-const utils = require('./utils')
-const webpack = require('webpack')
-const config = require('../config')
-const merge = require('webpack-merge')
-const path = require('path')
-const baseWebpackConfig = require('./webpack.base.conf')
-const CopyWebpackPlugin = require('copy-webpack-plugin')
-const HtmlWebpackPlugin = require('html-webpack-plugin')
-const FriendlyErrorsPlugin = require('friendly-errors-webpack-plugin')
-const portfinder = require('portfinder')
-
-const HOST = process.env.HOST
-const PORT = process.env.PORT && Number(process.env.PORT)
-
-const devWebpackConfig = merge(baseWebpackConfig, {
- module: {
- rules: utils.styleLoaders({ sourceMap: config.dev.cssSourceMap, usePostCSS: true })
- },
- // cheap-module-eval-source-map is faster for development
- devtool: config.dev.devtool,
-
- // these devServer options should be customized in /config/index.js
- devServer: {
- clientLogLevel: 'warning',
- historyApiFallback: true,
- hot: true,
- contentBase: false, // since we use CopyWebpackPlugin.
- compress: true,
- host: HOST || config.dev.host,
- port: PORT || config.dev.port,
- open: config.dev.autoOpenBrowser,
- overlay: config.dev.errorOverlay
- ? { warnings: false, errors: true }
- : false,
- publicPath: config.dev.assetsPublicPath,
- proxy: config.dev.proxyTable,
- quiet: true, // necessary for FriendlyErrorsPlugin
- watchOptions: {
- poll: config.dev.poll,
- }
- },
- plugins: [
- new webpack.DefinePlugin({
- 'process.env': require('../config/dev.local.env')
- }),
- new webpack.HotModuleReplacementPlugin(),
- new webpack.NamedModulesPlugin(), // HMR shows correct file names in console on update.
- new webpack.NoEmitOnErrorsPlugin(),
- // https://github.com/ampedandwired/html-webpack-plugin
- new HtmlWebpackPlugin({
- filename: 'index.html',
- template: 'index.html',
- inject: true,
- serviceWorkerLoader: ``
- }),
- // copy custom static assets
- new CopyWebpackPlugin([
- {
- from: path.resolve(__dirname, '../static'),
- to: config.dev.assetsSubDirectory,
- ignore: ['.*']
- }
- ])
- ]
-})
-
-module.exports = new Promise((resolve, reject) => {
- portfinder.basePort = process.env.PORT || config.dev.port
- portfinder.getPort((err, port) => {
- if (err) {
- reject(err)
- } else {
- // publish the new Port, necessary for e2e tests
- process.env.PORT = port
- // add port to devServer config
- devWebpackConfig.devServer.port = port
-
- // Add FriendlyErrorsPlugin
- devWebpackConfig.plugins.push(new FriendlyErrorsPlugin({
- compilationSuccessInfo: {
- messages: [`Your application is running here: http://${devWebpackConfig.devServer.host}:${port}`],
- },
- onErrors: config.dev.notifyOnErrors
- ? utils.createNotifierCallback()
- : undefined
- }))
-
- resolve(devWebpackConfig)
- }
- })
-})
diff --git a/build/webpack.prod.conf.js b/build/webpack.prod.conf.js
deleted file mode 100755
index 9edb04c9..00000000
--- a/build/webpack.prod.conf.js
+++ /dev/null
@@ -1,161 +0,0 @@
-'use strict'
-const path = require('path')
-const utils = require('./utils')
-const webpack = require('webpack')
-const config = require('../config')
-const merge = require('webpack-merge')
-const baseWebpackConfig = require('./webpack.base.conf')
-const CopyWebpackPlugin = require('copy-webpack-plugin')
-const HtmlWebpackPlugin = require('html-webpack-plugin')
-const ExtractTextPlugin = require('extract-text-webpack-plugin')
-const OptimizeCSSPlugin = require('optimize-css-assets-webpack-plugin')
-const UglifyJsPlugin = require('uglifyjs-webpack-plugin')
-const SWPrecacheWebpackPlugin = require('sw-precache-webpack-plugin');
-const loadMinified = require('./load-minified')
-
-const env = process.env.NODE_ENV === 'testing'
-? require('../config/test.env')
-: require('../config/prod.env')
-
-const webpackConfig = merge(baseWebpackConfig, {
- module: {
- rules: utils.styleLoaders({
- sourceMap: config.build.productionSourceMap,
- extract: true,
- usePostCSS: true
- })
- },
- devtool: config.build.productionSourceMap ? config.build.devtool : false,
- output: {
- path: config.build.assetsRoot,
- filename: utils.assetsPath('js/[name].[chunkhash].js'),
- chunkFilename: utils.assetsPath('js/[id].[chunkhash].js')
- },
- plugins: [
- // http://vuejs.github.io/vue-loader/en/workflow/production.html
- new webpack.DefinePlugin({
- 'process.env': env
- }),
- // service worker caching
- new SWPrecacheWebpackPlugin({
- cacheId: 'Gamebrary',
- filename: 'service-worker.js',
- staticFileGlobs: ['dist/**/*.{js,html,css}'],
- minify: true,
- stripPrefix: 'dist/'
- }),
- new UglifyJsPlugin({
- uglifyOptions: {
- compress: {
- warnings: false
- }
- },
- sourceMap: config.build.productionSourceMap,
- parallel: true
- }),
- // extract css into its own file
- new ExtractTextPlugin({
- filename: utils.assetsPath('css/[name].[contenthash].css'),
- // Setting the following option to `false` will not extract CSS from codesplit chunks.
- // Their CSS will instead be inserted dynamically with style-loader when the codesplit chunk has been loaded by webpack.
- // It's currently set to `true` because we are seeing that sourcemaps are included in the codesplit bundle as well when it's `false`,
- // increasing file size: https://github.com/vuejs-templates/webpack/issues/1110
- allChunks: true,
- }),
- // Compress extracted CSS. We are using this plugin so that possible
- // duplicated CSS from different components can be deduped.
- new OptimizeCSSPlugin({
- cssProcessorOptions: config.build.productionSourceMap
- ? { safe: true, map: { inline: false } }
- : { safe: true }
- }),
- // generate dist index.html with correct asset hash for caching.
- // you can customize output by editing /index.html
- // see https://github.com/ampedandwired/html-webpack-plugin
- new HtmlWebpackPlugin({
- filename: process.env.NODE_ENV === 'testing'
- ? 'index.html'
- : config.build.index,
- template: 'index.html',
- inject: true,
- minify: {
- removeComments: true,
- collapseWhitespace: true,
- removeAttributeQuotes: true
- // more options:
- // https://github.com/kangax/html-minifier#options-quick-reference
- },
- // necessary to consistently work with multiple chunks via CommonsChunkPlugin
- chunksSortMode: 'dependency',
- serviceWorkerLoader: ``
- }),
- // keep module.id stable when vendor modules does not change
- new webpack.HashedModuleIdsPlugin(),
- // enable scope hoisting
- new webpack.optimize.ModuleConcatenationPlugin(),
- // split vendor js into its own file
- new webpack.optimize.CommonsChunkPlugin({
- name: 'vendor',
- minChunks (module) {
- // any required modules inside node_modules are extracted to vendor
- return (
- module.resource &&
- /\.js$/.test(module.resource) &&
- module.resource.indexOf(
- path.join(__dirname, '../node_modules')
- ) === 0
- )
- }
- }),
- // extract webpack runtime and module manifest to its own file in order to
- // prevent vendor hash from being updated whenever app bundle is updated
- new webpack.optimize.CommonsChunkPlugin({
- name: 'manifest',
- minChunks: Infinity
- }),
- // This instance extracts shared chunks from code splitted chunks and bundles them
- // in a separate chunk, similar to the vendor chunk
- // see: https://webpack.js.org/plugins/commons-chunk-plugin/#extra-async-commons-chunk
- new webpack.optimize.CommonsChunkPlugin({
- name: 'app',
- async: 'vendor-async',
- children: true,
- minChunks: 3
- }),
-
- // copy custom static assets
- new CopyWebpackPlugin([
- {
- from: path.resolve(__dirname, '../static'),
- to: config.build.assetsSubDirectory,
- ignore: ['.*']
- }
- ])
- ]
-})
-
-if (config.build.productionGzip) {
- const CompressionWebpackPlugin = require('compression-webpack-plugin')
-
- webpackConfig.plugins.push(
- new CompressionWebpackPlugin({
- asset: '[path].gz[query]',
- algorithm: 'gzip',
- test: new RegExp(
- '\\.(' +
- config.build.productionGzipExtensions.join('|') +
- ')$'
- ),
- threshold: 10240,
- minRatio: 0.8
- })
- )
-}
-
-if (config.build.bundleAnalyzerReport) {
- const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin
- webpackConfig.plugins.push(new BundleAnalyzerPlugin())
-}
-
-module.exports = webpackConfig
diff --git a/build/webpack.test.conf.js b/build/webpack.test.conf.js
deleted file mode 100755
index 0d658d9e..00000000
--- a/build/webpack.test.conf.js
+++ /dev/null
@@ -1,32 +0,0 @@
-'use strict'
-// This is the webpack config used for unit tests.
-
-const utils = require('./utils')
-const webpack = require('webpack')
-const merge = require('webpack-merge')
-const baseWebpackConfig = require('./webpack.base.conf')
-
-const webpackConfig = merge(baseWebpackConfig, {
- // use inline sourcemap for karma-sourcemap-loader
- module: {
- rules: utils.styleLoaders()
- },
- devtool: '#inline-source-map',
- resolveLoader: {
- alias: {
- // necessary to to make lang="scss" work in test when using vue-loader's ?inject option
- // see discussion at https://github.com/vuejs/vue-loader/issues/724
- 'scss-loader': 'sass-loader'
- }
- },
- plugins: [
- new webpack.DefinePlugin({
- 'process.env': require('../config/test.env')
- })
- ]
-})
-
-// no need for app entry during tests
-delete webpackConfig.entry
-
-module.exports = webpackConfig
diff --git a/config/dev.env.js b/config/dev.env.js
deleted file mode 100755
index 55a82ff3..00000000
--- a/config/dev.env.js
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict'
-const merge = require('webpack-merge')
-const prodEnv = require('./prod.env')
-
-module.exports = merge(prodEnv, {
- NODE_ENV: '"development"',
-})
diff --git a/config/dev.local.env.js b/config/dev.local.env.js
deleted file mode 100644
index 86af2917..00000000
--- a/config/dev.local.env.js
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict'
-const merge = require('webpack-merge')
-const prodEnv = require('./prod.env')
-
-module.exports = merge(prodEnv, {
- NODE_ENV: '"development"',
-});
diff --git a/config/index.js b/config/index.js
deleted file mode 100755
index 42061ebe..00000000
--- a/config/index.js
+++ /dev/null
@@ -1,76 +0,0 @@
-'use strict'
-// Template version: 1.3.1
-// see http://vuejs-templates.github.io/webpack for documentation.
-
-const path = require('path')
-
-module.exports = {
- dev: {
-
- // Paths
- assetsSubDirectory: 'static',
- assetsPublicPath: '',
- proxyTable: {},
-
- // Various Dev Server settings
- host: 'localhost', // can be overwritten by process.env.HOST
- port: 4000, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined
- autoOpenBrowser: true,
- errorOverlay: true,
- notifyOnErrors: true,
- poll: false, // https://webpack.js.org/configuration/dev-server/#devserver-watchoptions-
-
- // Use Eslint Loader?
- // If true, your code will be linted during bundling and
- // linting errors and warnings will be shown in the console.
- useEslint: true,
- // If true, eslint errors and warnings will also be shown in the error overlay
- // in the browser.
- showEslintErrorsInOverlay: false,
-
- /**
- * Source Maps
- */
-
- // https://webpack.js.org/configuration/devtool/#development
- devtool: 'cheap-module-eval-source-map',
-
- // If you have problems debugging vue-files in devtools,
- // set this to false - it *may* help
- // https://vue-loader.vuejs.org/en/options.html#cachebusting
- cacheBusting: true,
-
- cssSourceMap: true
- },
-
- build: {
- // Template for index.html
- index: path.resolve(__dirname, '../dist/index.html'),
-
- // Paths
- assetsRoot: path.resolve(__dirname, '../dist'),
- assetsSubDirectory: 'static',
- assetsPublicPath: '',
-
- /**
- * Source Maps
- */
-
- productionSourceMap: true,
- // https://webpack.js.org/configuration/devtool/#production
- devtool: '#source-map',
-
- // Gzip off by default as many popular static hosts such as
- // Surge or Netlify already gzip all static assets for you.
- // Before setting to `true`, make sure to:
- // npm install --save-dev compression-webpack-plugin
- productionGzip: false,
- productionGzipExtensions: ['js', 'css'],
-
- // Run the build command with an extra argument to
- // View the bundle analyzer report after build finishes:
- // `npm run build --report`
- // Set to `true` or `false` to always turn it on or off
- bundleAnalyzerReport: process.env.npm_config_report
- }
-}
diff --git a/config/prod.env.js b/config/prod.env.js
deleted file mode 100755
index fa9d3b51..00000000
--- a/config/prod.env.js
+++ /dev/null
@@ -1,4 +0,0 @@
-'use strict'
-module.exports = {
- NODE_ENV: '"production"',
-}
diff --git a/config/test.env.js b/config/test.env.js
deleted file mode 100755
index c2824a30..00000000
--- a/config/test.env.js
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict'
-const merge = require('webpack-merge')
-const devEnv = require('./dev.env')
-
-module.exports = merge(devEnv, {
- NODE_ENV: '"testing"'
-})
diff --git a/cypress.json b/cypress.json
new file mode 100644
index 00000000..470c7201
--- /dev/null
+++ b/cypress.json
@@ -0,0 +1,3 @@
+{
+ "pluginsFile": "tests/e2e/plugins/index.js"
+}
diff --git a/firebase.json b/firebase.json
index 19d985ee..fc52ab7a 100755
--- a/firebase.json
+++ b/firebase.json
@@ -1,15 +1,15 @@
{
"database": {
- "rules": "config/firebase/database.rules.json"
+ "rules": "firebase/database.rules.json"
},
"firestore": {
- "rules": "config/firebase/firestore.rules",
- "indexes": "config/firebase/firestore.indexes.json"
+ "rules": "firebase/firestore.rules",
+ "indexes": "firebase/firestore.indexes.json"
},
"hosting": {
"public": "dist",
"ignore": [
- "config/firebase/firebase.json",
+ "firebase/firebase.json",
"**/.*",
"**/node_modules/**"
],
@@ -21,6 +21,6 @@
]
},
"storage": {
- "rules": "config/firebase/storage.rules"
+ "rules": "firebase/storage.rules"
}
}
diff --git a/config/firebase/database.rules.json b/firebase/database.rules.json
similarity index 100%
rename from config/firebase/database.rules.json
rename to firebase/database.rules.json
diff --git a/config/firebase/firestore.indexes.json b/firebase/firestore.indexes.json
similarity index 100%
rename from config/firebase/firestore.indexes.json
rename to firebase/firestore.indexes.json
diff --git a/config/firebase/firestore.rules b/firebase/firestore.rules
similarity index 100%
rename from config/firebase/firestore.rules
rename to firebase/firestore.rules
diff --git a/config/firebase/storage.rules b/firebase/storage.rules
similarity index 100%
rename from config/firebase/storage.rules
rename to firebase/storage.rules
diff --git a/index.html b/index.html
deleted file mode 100755
index 5f26faf7..00000000
--- a/index.html
+++ /dev/null
@@ -1,49 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Gamebrary
-
-
-
-
-
-
-
-
-
diff --git a/jsconfig.json b/jsconfig.json
new file mode 100644
index 00000000..4aafc5f6
--- /dev/null
+++ b/jsconfig.json
@@ -0,0 +1,19 @@
+{
+ "compilerOptions": {
+ "target": "es5",
+ "module": "esnext",
+ "baseUrl": "./",
+ "moduleResolution": "node",
+ "paths": {
+ "@/*": [
+ "src/*"
+ ]
+ },
+ "lib": [
+ "esnext",
+ "dom",
+ "dom.iterable",
+ "scripthost"
+ ]
+ }
+}
diff --git a/package.json b/package.json
index ba75f6da..631db1df 100644
--- a/package.json
+++ b/package.json
@@ -6,17 +6,19 @@
"license": "MIT",
"private": true,
"scripts": {
- "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
- "dev:local": "webpack-dev-server --inline --progress --config build/webpack.dev.local.conf.js",
- "start": "npm run dev",
- "unit": "cross-env BABEL_ENV=test karma start test/unit/karma.conf.js --single-run",
- "test": "npm run unit",
- "lint": "eslint --ext .js,.vue src test/unit",
- "translate": "node build/translate.js",
- "build": "node build/build.js",
- "deploy": "firebase deploy"
+ "dev": "vue-cli-service serve --port 4000",
+ "build": "vue-cli-service build",
+ "test:unit": "vue-cli-service test:unit",
+ "test:e2e": "vue-cli-service test:e2e",
+ "lint": "vue-cli-service lint",
+ "deploy": "firebase deploy"
},
"dependencies": {
+ "core-js": "^3.8.3",
+ "register-service-worker": "^1.7.2",
+ "vue": "^2.6.14",
+ "vue-router": "^3.5.1",
+ "vuex": "^3.6.2",
"@vue-stripe/vue-stripe": "^4.4.2",
"axios": "^0.21.1",
"bootstrap": "^4.5.2",
@@ -30,99 +32,78 @@
"lodash.groupby": "^4.6.0",
"lodash.orderby": "^4.6.0",
"lodash.sortby": "^4.7.0",
- "node-sass": "^4.8.3",
"packery": "^2.1.2",
"portal-vue": "^2.1.7",
"raven-js": "^3.27.0",
- "sass-loader": "^7.0.1",
- "sw-precache-webpack-plugin": "^0.11.5",
"translate-json-object": "^2.3.3",
- "vue": "^2.6.14",
"vue-analytics": "^5.16.0",
"vue-axios": "^2.1.1",
"vue-dayjs": "^1.0.2",
"vue-i18n": "^8.0.0",
- "vue-markdown": "^2.2.4",
"vue-observe-visibility": "^1.0.0",
"vue-raven": "^1.0.0",
- "vue-router": "^3.0.1",
"vue-shortkey": "^3.1.7",
"vue-tweet-embed": "^2.4.0",
"vuedraggable": "^2.24.3",
"vuefire": "^1.4.5",
- "vuex": "^3.0.1",
"vuex-persist": "^1.2.2"
},
"devDependencies": {
- "autoprefixer": "^7.1.2",
- "babel-core": "^6.22.1",
- "babel-eslint": "^8.2.1",
- "babel-helper-vue-jsx-merge-props": "^2.0.3",
- "babel-loader": "^7.1.1",
- "babel-plugin-istanbul": "^4.1.1",
- "babel-plugin-syntax-jsx": "^6.18.0",
- "babel-plugin-transform-runtime": "^6.22.0",
- "babel-plugin-transform-vue-jsx": "^3.5.0",
- "babel-preset-env": "^1.3.2",
- "babel-preset-stage-2": "^6.22.0",
- "chai": "^4.1.2",
- "chalk": "^2.0.1",
- "copy-webpack-plugin": "^4.0.1",
- "cross-env": "^5.0.1",
- "css-loader": "^0.28.0",
- "eslint": "^4.15.0",
- "eslint-config-airbnb-base": "^11.3.0",
- "eslint-friendly-formatter": "^3.0.0",
- "eslint-import-resolver-webpack": "^0.8.3",
- "eslint-loader": "^1.7.1",
- "eslint-plugin-import": "^2.7.0",
- "eslint-plugin-promise": "^4.0.1",
- "eslint-plugin-vue": "^4.0.0",
- "extract-text-webpack-plugin": "^3.0.0",
- "file-loader": "^1.1.4",
- "friendly-errors-webpack-plugin": "^1.6.1",
- "html-webpack-plugin": "^2.30.1",
- "inject-loader": "^3.0.0",
- "karma": "^1.4.1",
- "karma-coverage": "^1.1.1",
- "karma-mocha": "^1.3.0",
- "karma-phantomjs-launcher": "^1.0.2",
- "karma-phantomjs-shim": "^1.4.0",
- "karma-sinon-chai": "^1.3.1",
- "karma-sourcemap-loader": "^0.3.7",
- "karma-spec-reporter": "0.0.31",
- "karma-webpack": "^2.0.2",
- "mocha": "^3.2.0",
- "node-notifier": "^8.0.1",
- "optimize-css-assets-webpack-plugin": "^3.2.0",
- "ora": "^1.2.0",
- "phantomjs-prebuilt": "^2.1.14",
- "portfinder": "^1.0.13",
- "postcss-import": "^11.0.0",
- "postcss-loader": "^2.0.8",
- "postcss-url": "^7.2.1",
- "rimraf": "^2.6.0",
- "semver": "^5.3.0",
- "shelljs": "^0.7.6",
- "sinon": "^4.0.0",
- "sinon-chai": "^2.8.0",
- "uglifyjs-webpack-plugin": "^1.1.1",
- "url-loader": "^0.5.8",
- "vue-loader": "^13.3.0",
- "vue-style-loader": "^3.0.1",
- "vue-template-compiler": "^2.6.11",
- "webpack": "^3.6.0",
- "webpack-bundle-analyzer": "^3.3.2",
- "webpack-dev-server": "^2.9.1",
- "webpack-merge": "^4.1.0"
+ "babel-loader": "^7.1.1",
+ "@babel/core": "^7.12.16",
+ "@babel/eslint-parser": "^7.12.16",
+ "@vue/cli-plugin-babel": "~5.0.0",
+ "@vue/cli-plugin-e2e-cypress": "~5.0.0",
+ "@vue/cli-plugin-eslint": "~5.0.0",
+ "@vue/cli-plugin-pwa": "~5.0.0",
+ "@vue/cli-plugin-router": "~5.0.0",
+ "@vue/cli-plugin-unit-jest": "~5.0.0",
+ "@vue/cli-plugin-vuex": "~5.0.0",
+ "@vue/cli-service": "~5.0.0",
+ "@vue/eslint-config-airbnb": "^6.0.0",
+ "@vue/test-utils": "^1.1.3",
+ "@vue/vue2-jest": "^27.0.0-alpha.2",
+ "babel-jest": "^27.0.6",
+ "cypress": "^8.3.0",
+ "eslint": "^7.32.0",
+ "eslint-plugin-import": "^2.25.3",
+ "eslint-plugin-vue": "^8.0.3",
+ "eslint-plugin-vuejs-accessibility": "^1.1.0",
+ "jest": "^27.0.5",
+ "sass": "^1.32.7",
+ "sass-loader": "^12.0.0",
+ "vue-template-compiler": "^2.6.14"
},
- "engines": {
- "node": ">= 10.19.0",
- "npm": ">= 3.0.0"
+ "eslintConfig": {
+ "root": true,
+ "env": {
+ "node": true
+ },
+ "extends": [
+ "plugin:vue/essential"
+ ],
+ "parserOptions": {
+ "parser": "@babel/eslint-parser"
+ },
+ "rules": {},
+ "overrides": [
+ {
+ "files": [
+ "**/__tests__/*.{j,t}s?(x)",
+ "**/tests/unit/**/*.spec.{j,t}s?(x)"
+ ],
+ "env": {
+ "jest": true
+ }
+ }
+ ]
},
"browserslist": [
- "> 1%",
- "last 2 versions",
- "not ie <= 8"
- ]
+ "> 1%",
+ "last 2 versions",
+ "not dead"
+ ],
+ "jest": {
+ "preset": "@vue/cli-plugin-unit-jest"
+ }
}
diff --git a/public/favicon.ico b/public/favicon.ico
new file mode 100644
index 00000000..df36fcfb
Binary files /dev/null and b/public/favicon.ico differ
diff --git a/static/gamebrary-logo-dark.png b/public/gamebrary-logo-dark.png
similarity index 100%
rename from static/gamebrary-logo-dark.png
rename to public/gamebrary-logo-dark.png
diff --git a/static/gamebrary-logo.png b/public/gamebrary-logo.png
similarity index 100%
rename from static/gamebrary-logo.png
rename to public/gamebrary-logo.png
diff --git a/static/icons/android-chrome-192x192.png b/public/icons/android-chrome-192x192.png
similarity index 100%
rename from static/icons/android-chrome-192x192.png
rename to public/icons/android-chrome-192x192.png
diff --git a/static/icons/android-chrome-512x512.png b/public/icons/android-chrome-512x512.png
similarity index 100%
rename from static/icons/android-chrome-512x512.png
rename to public/icons/android-chrome-512x512.png
diff --git a/static/icons/android-icon-144x144.png b/public/icons/android-icon-144x144.png
similarity index 100%
rename from static/icons/android-icon-144x144.png
rename to public/icons/android-icon-144x144.png
diff --git a/static/icons/android-icon-192x192.png b/public/icons/android-icon-192x192.png
similarity index 100%
rename from static/icons/android-icon-192x192.png
rename to public/icons/android-icon-192x192.png
diff --git a/static/icons/android-icon-36x36.png b/public/icons/android-icon-36x36.png
similarity index 100%
rename from static/icons/android-icon-36x36.png
rename to public/icons/android-icon-36x36.png
diff --git a/static/icons/android-icon-48x48.png b/public/icons/android-icon-48x48.png
similarity index 100%
rename from static/icons/android-icon-48x48.png
rename to public/icons/android-icon-48x48.png
diff --git a/static/icons/android-icon-72x72.png b/public/icons/android-icon-72x72.png
similarity index 100%
rename from static/icons/android-icon-72x72.png
rename to public/icons/android-icon-72x72.png
diff --git a/static/icons/android-icon-96x96.png b/public/icons/android-icon-96x96.png
similarity index 100%
rename from static/icons/android-icon-96x96.png
rename to public/icons/android-icon-96x96.png
diff --git a/static/icons/apple-icon-114x114.png b/public/icons/apple-icon-114x114.png
similarity index 100%
rename from static/icons/apple-icon-114x114.png
rename to public/icons/apple-icon-114x114.png
diff --git a/static/icons/apple-icon-120x120.png b/public/icons/apple-icon-120x120.png
similarity index 100%
rename from static/icons/apple-icon-120x120.png
rename to public/icons/apple-icon-120x120.png
diff --git a/static/icons/apple-icon-144x144.png b/public/icons/apple-icon-144x144.png
similarity index 100%
rename from static/icons/apple-icon-144x144.png
rename to public/icons/apple-icon-144x144.png
diff --git a/static/icons/apple-icon-152x152.png b/public/icons/apple-icon-152x152.png
similarity index 100%
rename from static/icons/apple-icon-152x152.png
rename to public/icons/apple-icon-152x152.png
diff --git a/static/icons/apple-icon-180x180.png b/public/icons/apple-icon-180x180.png
similarity index 100%
rename from static/icons/apple-icon-180x180.png
rename to public/icons/apple-icon-180x180.png
diff --git a/static/icons/apple-icon-57x57.png b/public/icons/apple-icon-57x57.png
similarity index 100%
rename from static/icons/apple-icon-57x57.png
rename to public/icons/apple-icon-57x57.png
diff --git a/static/icons/apple-icon-60x60.png b/public/icons/apple-icon-60x60.png
similarity index 100%
rename from static/icons/apple-icon-60x60.png
rename to public/icons/apple-icon-60x60.png
diff --git a/static/icons/apple-icon-72x72.png b/public/icons/apple-icon-72x72.png
similarity index 100%
rename from static/icons/apple-icon-72x72.png
rename to public/icons/apple-icon-72x72.png
diff --git a/static/icons/apple-icon-76x76.png b/public/icons/apple-icon-76x76.png
similarity index 100%
rename from static/icons/apple-icon-76x76.png
rename to public/icons/apple-icon-76x76.png
diff --git a/static/icons/apple-icon-precomposed.png b/public/icons/apple-icon-precomposed.png
similarity index 100%
rename from static/icons/apple-icon-precomposed.png
rename to public/icons/apple-icon-precomposed.png
diff --git a/static/icons/apple-icon.png b/public/icons/apple-icon.png
similarity index 100%
rename from static/icons/apple-icon.png
rename to public/icons/apple-icon.png
diff --git a/static/icons/apple-touch-icon.png b/public/icons/apple-touch-icon.png
similarity index 100%
rename from static/icons/apple-touch-icon.png
rename to public/icons/apple-touch-icon.png
diff --git a/static/icons/browserconfig.xml b/public/icons/browserconfig.xml
similarity index 100%
rename from static/icons/browserconfig.xml
rename to public/icons/browserconfig.xml
diff --git a/static/icons/favicon-16x16.png b/public/icons/favicon-16x16.png
similarity index 100%
rename from static/icons/favicon-16x16.png
rename to public/icons/favicon-16x16.png
diff --git a/static/icons/favicon-32x32.png b/public/icons/favicon-32x32.png
similarity index 100%
rename from static/icons/favicon-32x32.png
rename to public/icons/favicon-32x32.png
diff --git a/static/icons/favicon-96x96.png b/public/icons/favicon-96x96.png
similarity index 100%
rename from static/icons/favicon-96x96.png
rename to public/icons/favicon-96x96.png
diff --git a/static/icons/favicon.ico b/public/icons/favicon.ico
similarity index 100%
rename from static/icons/favicon.ico
rename to public/icons/favicon.ico
diff --git a/static/icons/icon-144x144.png b/public/icons/icon-144x144.png
similarity index 100%
rename from static/icons/icon-144x144.png
rename to public/icons/icon-144x144.png
diff --git a/static/icons/manifest.json b/public/icons/manifest.json
similarity index 100%
rename from static/icons/manifest.json
rename to public/icons/manifest.json
diff --git a/static/icons/ms-icon-144x144.png b/public/icons/ms-icon-144x144.png
similarity index 100%
rename from static/icons/ms-icon-144x144.png
rename to public/icons/ms-icon-144x144.png
diff --git a/static/icons/ms-icon-150x150.png b/public/icons/ms-icon-150x150.png
similarity index 100%
rename from static/icons/ms-icon-150x150.png
rename to public/icons/ms-icon-150x150.png
diff --git a/static/icons/ms-icon-310x310.png b/public/icons/ms-icon-310x310.png
similarity index 100%
rename from static/icons/ms-icon-310x310.png
rename to public/icons/ms-icon-310x310.png
diff --git a/static/icons/ms-icon-70x70.png b/public/icons/ms-icon-70x70.png
similarity index 100%
rename from static/icons/ms-icon-70x70.png
rename to public/icons/ms-icon-70x70.png
diff --git a/static/icons/mstile-150x150.png b/public/icons/mstile-150x150.png
similarity index 100%
rename from static/icons/mstile-150x150.png
rename to public/icons/mstile-150x150.png
diff --git a/static/icons/site.webmanifest b/public/icons/site.webmanifest
similarity index 100%
rename from static/icons/site.webmanifest
rename to public/icons/site.webmanifest
diff --git a/static/img/age-ratings/12.png b/public/img/age-ratings/12.png
similarity index 100%
rename from static/img/age-ratings/12.png
rename to public/img/age-ratings/12.png
diff --git a/static/img/age-ratings/16.png b/public/img/age-ratings/16.png
similarity index 100%
rename from static/img/age-ratings/16.png
rename to public/img/age-ratings/16.png
diff --git a/static/img/age-ratings/18.png b/public/img/age-ratings/18.png
similarity index 100%
rename from static/img/age-ratings/18.png
rename to public/img/age-ratings/18.png
diff --git a/static/img/age-ratings/3.png b/public/img/age-ratings/3.png
similarity index 100%
rename from static/img/age-ratings/3.png
rename to public/img/age-ratings/3.png
diff --git a/static/img/age-ratings/7.png b/public/img/age-ratings/7.png
similarity index 100%
rename from static/img/age-ratings/7.png
rename to public/img/age-ratings/7.png
diff --git a/static/img/age-ratings/AO.png b/public/img/age-ratings/AO.png
similarity index 100%
rename from static/img/age-ratings/AO.png
rename to public/img/age-ratings/AO.png
diff --git a/static/img/age-ratings/CERO_A.svg b/public/img/age-ratings/CERO_A.svg
similarity index 100%
rename from static/img/age-ratings/CERO_A.svg
rename to public/img/age-ratings/CERO_A.svg
diff --git a/static/img/age-ratings/ClassInd-10.png b/public/img/age-ratings/ClassInd-10.png
similarity index 100%
rename from static/img/age-ratings/ClassInd-10.png
rename to public/img/age-ratings/ClassInd-10.png
diff --git a/static/img/age-ratings/ClassInd-12.png b/public/img/age-ratings/ClassInd-12.png
similarity index 100%
rename from static/img/age-ratings/ClassInd-12.png
rename to public/img/age-ratings/ClassInd-12.png
diff --git a/static/img/age-ratings/ClassInd-14.png b/public/img/age-ratings/ClassInd-14.png
similarity index 100%
rename from static/img/age-ratings/ClassInd-14.png
rename to public/img/age-ratings/ClassInd-14.png
diff --git a/static/img/age-ratings/ClassInd-16.png b/public/img/age-ratings/ClassInd-16.png
similarity index 100%
rename from static/img/age-ratings/ClassInd-16.png
rename to public/img/age-ratings/ClassInd-16.png
diff --git a/static/img/age-ratings/ClassInd-18.png b/public/img/age-ratings/ClassInd-18.png
similarity index 100%
rename from static/img/age-ratings/ClassInd-18.png
rename to public/img/age-ratings/ClassInd-18.png
diff --git a/static/img/age-ratings/ClassInd-L.png b/public/img/age-ratings/ClassInd-L.png
similarity index 100%
rename from static/img/age-ratings/ClassInd-L.png
rename to public/img/age-ratings/ClassInd-L.png
diff --git a/static/img/age-ratings/E.png b/public/img/age-ratings/E.png
similarity index 100%
rename from static/img/age-ratings/E.png
rename to public/img/age-ratings/E.png
diff --git a/static/img/age-ratings/E10.png b/public/img/age-ratings/E10.png
similarity index 100%
rename from static/img/age-ratings/E10.png
rename to public/img/age-ratings/E10.png
diff --git a/static/img/age-ratings/EC.png b/public/img/age-ratings/EC.png
similarity index 100%
rename from static/img/age-ratings/EC.png
rename to public/img/age-ratings/EC.png
diff --git a/static/img/age-ratings/GRAC_ALL.svg b/public/img/age-ratings/GRAC_ALL.svg
similarity index 100%
rename from static/img/age-ratings/GRAC_ALL.svg
rename to public/img/age-ratings/GRAC_ALL.svg
diff --git a/static/img/age-ratings/GRAC_Twelve.svg b/public/img/age-ratings/GRAC_Twelve.svg
similarity index 100%
rename from static/img/age-ratings/GRAC_Twelve.svg
rename to public/img/age-ratings/GRAC_Twelve.svg
diff --git a/static/img/age-ratings/GRB_15.svg b/public/img/age-ratings/GRB_15.svg
similarity index 100%
rename from static/img/age-ratings/GRB_15.svg
rename to public/img/age-ratings/GRB_15.svg
diff --git a/static/img/age-ratings/GRB_18.svg b/public/img/age-ratings/GRB_18.svg
similarity index 100%
rename from static/img/age-ratings/GRB_18.svg
rename to public/img/age-ratings/GRB_18.svg
diff --git a/static/img/age-ratings/GRB_Test.svg b/public/img/age-ratings/GRB_Test.svg
similarity index 100%
rename from static/img/age-ratings/GRB_Test.svg
rename to public/img/age-ratings/GRB_Test.svg
diff --git a/static/img/age-ratings/M.png b/public/img/age-ratings/M.png
similarity index 100%
rename from static/img/age-ratings/M.png
rename to public/img/age-ratings/M.png
diff --git a/static/img/age-ratings/RP.png b/public/img/age-ratings/RP.png
similarity index 100%
rename from static/img/age-ratings/RP.png
rename to public/img/age-ratings/RP.png
diff --git a/static/img/age-ratings/T.png b/public/img/age-ratings/T.png
similarity index 100%
rename from static/img/age-ratings/T.png
rename to public/img/age-ratings/T.png
diff --git a/static/img/age-ratings/USK_0.svg b/public/img/age-ratings/USK_0.svg
similarity index 100%
rename from static/img/age-ratings/USK_0.svg
rename to public/img/age-ratings/USK_0.svg
diff --git a/static/img/age-ratings/USK_12.svg b/public/img/age-ratings/USK_12.svg
similarity index 100%
rename from static/img/age-ratings/USK_12.svg
rename to public/img/age-ratings/USK_12.svg
diff --git a/static/img/age-ratings/USK_16.svg b/public/img/age-ratings/USK_16.svg
similarity index 100%
rename from static/img/age-ratings/USK_16.svg
rename to public/img/age-ratings/USK_16.svg
diff --git a/static/img/age-ratings/USK_18.svg b/public/img/age-ratings/USK_18.svg
similarity index 100%
rename from static/img/age-ratings/USK_18.svg
rename to public/img/age-ratings/USK_18.svg
diff --git a/static/img/age-ratings/USK_6.svg b/public/img/age-ratings/USK_6.svg
similarity index 100%
rename from static/img/age-ratings/USK_6.svg
rename to public/img/age-ratings/USK_6.svg
diff --git a/static/img/country-flags/ac.svg b/public/img/country-flags/ac.svg
similarity index 100%
rename from static/img/country-flags/ac.svg
rename to public/img/country-flags/ac.svg
diff --git a/static/img/country-flags/ad.svg b/public/img/country-flags/ad.svg
similarity index 100%
rename from static/img/country-flags/ad.svg
rename to public/img/country-flags/ad.svg
diff --git a/static/img/country-flags/ae.svg b/public/img/country-flags/ae.svg
similarity index 100%
rename from static/img/country-flags/ae.svg
rename to public/img/country-flags/ae.svg
diff --git a/static/img/country-flags/af.svg b/public/img/country-flags/af.svg
similarity index 100%
rename from static/img/country-flags/af.svg
rename to public/img/country-flags/af.svg
diff --git a/static/img/country-flags/ag.svg b/public/img/country-flags/ag.svg
similarity index 100%
rename from static/img/country-flags/ag.svg
rename to public/img/country-flags/ag.svg
diff --git a/static/img/country-flags/ai.svg b/public/img/country-flags/ai.svg
similarity index 100%
rename from static/img/country-flags/ai.svg
rename to public/img/country-flags/ai.svg
diff --git a/static/img/country-flags/al.svg b/public/img/country-flags/al.svg
similarity index 100%
rename from static/img/country-flags/al.svg
rename to public/img/country-flags/al.svg
diff --git a/static/img/country-flags/am.svg b/public/img/country-flags/am.svg
similarity index 100%
rename from static/img/country-flags/am.svg
rename to public/img/country-flags/am.svg
diff --git a/static/img/country-flags/ao.svg b/public/img/country-flags/ao.svg
similarity index 100%
rename from static/img/country-flags/ao.svg
rename to public/img/country-flags/ao.svg
diff --git a/static/img/country-flags/aq.svg b/public/img/country-flags/aq.svg
similarity index 100%
rename from static/img/country-flags/aq.svg
rename to public/img/country-flags/aq.svg
diff --git a/static/img/country-flags/ar.svg b/public/img/country-flags/ar.svg
similarity index 100%
rename from static/img/country-flags/ar.svg
rename to public/img/country-flags/ar.svg
diff --git a/static/img/country-flags/as.svg b/public/img/country-flags/as.svg
similarity index 100%
rename from static/img/country-flags/as.svg
rename to public/img/country-flags/as.svg
diff --git a/static/img/country-flags/at.svg b/public/img/country-flags/at.svg
similarity index 100%
rename from static/img/country-flags/at.svg
rename to public/img/country-flags/at.svg
diff --git a/static/img/country-flags/au.svg b/public/img/country-flags/au.svg
similarity index 100%
rename from static/img/country-flags/au.svg
rename to public/img/country-flags/au.svg
diff --git a/static/img/country-flags/aw.svg b/public/img/country-flags/aw.svg
similarity index 100%
rename from static/img/country-flags/aw.svg
rename to public/img/country-flags/aw.svg
diff --git a/static/img/country-flags/ax.svg b/public/img/country-flags/ax.svg
similarity index 100%
rename from static/img/country-flags/ax.svg
rename to public/img/country-flags/ax.svg
diff --git a/static/img/country-flags/az.svg b/public/img/country-flags/az.svg
similarity index 100%
rename from static/img/country-flags/az.svg
rename to public/img/country-flags/az.svg
diff --git a/static/img/country-flags/ba.svg b/public/img/country-flags/ba.svg
similarity index 100%
rename from static/img/country-flags/ba.svg
rename to public/img/country-flags/ba.svg
diff --git a/static/img/country-flags/bb.svg b/public/img/country-flags/bb.svg
similarity index 100%
rename from static/img/country-flags/bb.svg
rename to public/img/country-flags/bb.svg
diff --git a/static/img/country-flags/bd.svg b/public/img/country-flags/bd.svg
similarity index 100%
rename from static/img/country-flags/bd.svg
rename to public/img/country-flags/bd.svg
diff --git a/static/img/country-flags/be.svg b/public/img/country-flags/be.svg
similarity index 100%
rename from static/img/country-flags/be.svg
rename to public/img/country-flags/be.svg
diff --git a/static/img/country-flags/bf.svg b/public/img/country-flags/bf.svg
similarity index 100%
rename from static/img/country-flags/bf.svg
rename to public/img/country-flags/bf.svg
diff --git a/static/img/country-flags/bg.svg b/public/img/country-flags/bg.svg
similarity index 100%
rename from static/img/country-flags/bg.svg
rename to public/img/country-flags/bg.svg
diff --git a/static/img/country-flags/bh.svg b/public/img/country-flags/bh.svg
similarity index 100%
rename from static/img/country-flags/bh.svg
rename to public/img/country-flags/bh.svg
diff --git a/static/img/country-flags/bi.svg b/public/img/country-flags/bi.svg
similarity index 100%
rename from static/img/country-flags/bi.svg
rename to public/img/country-flags/bi.svg
diff --git a/static/img/country-flags/bj.svg b/public/img/country-flags/bj.svg
similarity index 100%
rename from static/img/country-flags/bj.svg
rename to public/img/country-flags/bj.svg
diff --git a/static/img/country-flags/bl.svg b/public/img/country-flags/bl.svg
similarity index 100%
rename from static/img/country-flags/bl.svg
rename to public/img/country-flags/bl.svg
diff --git a/static/img/country-flags/bm.svg b/public/img/country-flags/bm.svg
similarity index 100%
rename from static/img/country-flags/bm.svg
rename to public/img/country-flags/bm.svg
diff --git a/static/img/country-flags/bn.svg b/public/img/country-flags/bn.svg
similarity index 100%
rename from static/img/country-flags/bn.svg
rename to public/img/country-flags/bn.svg
diff --git a/static/img/country-flags/bo.svg b/public/img/country-flags/bo.svg
similarity index 100%
rename from static/img/country-flags/bo.svg
rename to public/img/country-flags/bo.svg
diff --git a/static/img/country-flags/bq.svg b/public/img/country-flags/bq.svg
similarity index 100%
rename from static/img/country-flags/bq.svg
rename to public/img/country-flags/bq.svg
diff --git a/static/img/country-flags/br.svg b/public/img/country-flags/br.svg
similarity index 100%
rename from static/img/country-flags/br.svg
rename to public/img/country-flags/br.svg
diff --git a/static/img/country-flags/bs.svg b/public/img/country-flags/bs.svg
similarity index 100%
rename from static/img/country-flags/bs.svg
rename to public/img/country-flags/bs.svg
diff --git a/static/img/country-flags/bt.svg b/public/img/country-flags/bt.svg
similarity index 100%
rename from static/img/country-flags/bt.svg
rename to public/img/country-flags/bt.svg
diff --git a/static/img/country-flags/bv.svg b/public/img/country-flags/bv.svg
similarity index 100%
rename from static/img/country-flags/bv.svg
rename to public/img/country-flags/bv.svg
diff --git a/static/img/country-flags/bw.svg b/public/img/country-flags/bw.svg
similarity index 100%
rename from static/img/country-flags/bw.svg
rename to public/img/country-flags/bw.svg
diff --git a/static/img/country-flags/by.svg b/public/img/country-flags/by.svg
similarity index 100%
rename from static/img/country-flags/by.svg
rename to public/img/country-flags/by.svg
diff --git a/static/img/country-flags/bz.svg b/public/img/country-flags/bz.svg
similarity index 100%
rename from static/img/country-flags/bz.svg
rename to public/img/country-flags/bz.svg
diff --git a/static/img/country-flags/ca.svg b/public/img/country-flags/ca.svg
similarity index 100%
rename from static/img/country-flags/ca.svg
rename to public/img/country-flags/ca.svg
diff --git a/static/img/country-flags/cc.svg b/public/img/country-flags/cc.svg
similarity index 100%
rename from static/img/country-flags/cc.svg
rename to public/img/country-flags/cc.svg
diff --git a/static/img/country-flags/cd.svg b/public/img/country-flags/cd.svg
similarity index 100%
rename from static/img/country-flags/cd.svg
rename to public/img/country-flags/cd.svg
diff --git a/static/img/country-flags/cf.svg b/public/img/country-flags/cf.svg
similarity index 100%
rename from static/img/country-flags/cf.svg
rename to public/img/country-flags/cf.svg
diff --git a/static/img/country-flags/cg.svg b/public/img/country-flags/cg.svg
similarity index 100%
rename from static/img/country-flags/cg.svg
rename to public/img/country-flags/cg.svg
diff --git a/static/img/country-flags/ch.svg b/public/img/country-flags/ch.svg
similarity index 100%
rename from static/img/country-flags/ch.svg
rename to public/img/country-flags/ch.svg
diff --git a/static/img/country-flags/ci.svg b/public/img/country-flags/ci.svg
similarity index 100%
rename from static/img/country-flags/ci.svg
rename to public/img/country-flags/ci.svg
diff --git a/static/img/country-flags/ck.svg b/public/img/country-flags/ck.svg
similarity index 100%
rename from static/img/country-flags/ck.svg
rename to public/img/country-flags/ck.svg
diff --git a/static/img/country-flags/cl.svg b/public/img/country-flags/cl.svg
similarity index 100%
rename from static/img/country-flags/cl.svg
rename to public/img/country-flags/cl.svg
diff --git a/static/img/country-flags/cm.svg b/public/img/country-flags/cm.svg
similarity index 100%
rename from static/img/country-flags/cm.svg
rename to public/img/country-flags/cm.svg
diff --git a/static/img/country-flags/cn.svg b/public/img/country-flags/cn.svg
similarity index 100%
rename from static/img/country-flags/cn.svg
rename to public/img/country-flags/cn.svg
diff --git a/static/img/country-flags/co.svg b/public/img/country-flags/co.svg
similarity index 100%
rename from static/img/country-flags/co.svg
rename to public/img/country-flags/co.svg
diff --git a/static/img/country-flags/cp.svg b/public/img/country-flags/cp.svg
similarity index 100%
rename from static/img/country-flags/cp.svg
rename to public/img/country-flags/cp.svg
diff --git a/static/img/country-flags/cr.svg b/public/img/country-flags/cr.svg
similarity index 100%
rename from static/img/country-flags/cr.svg
rename to public/img/country-flags/cr.svg
diff --git a/static/img/country-flags/cu.svg b/public/img/country-flags/cu.svg
similarity index 100%
rename from static/img/country-flags/cu.svg
rename to public/img/country-flags/cu.svg
diff --git a/static/img/country-flags/cv.svg b/public/img/country-flags/cv.svg
similarity index 100%
rename from static/img/country-flags/cv.svg
rename to public/img/country-flags/cv.svg
diff --git a/static/img/country-flags/cw.svg b/public/img/country-flags/cw.svg
similarity index 100%
rename from static/img/country-flags/cw.svg
rename to public/img/country-flags/cw.svg
diff --git a/static/img/country-flags/cx.svg b/public/img/country-flags/cx.svg
similarity index 100%
rename from static/img/country-flags/cx.svg
rename to public/img/country-flags/cx.svg
diff --git a/static/img/country-flags/cy.svg b/public/img/country-flags/cy.svg
similarity index 100%
rename from static/img/country-flags/cy.svg
rename to public/img/country-flags/cy.svg
diff --git a/static/img/country-flags/cz.svg b/public/img/country-flags/cz.svg
similarity index 100%
rename from static/img/country-flags/cz.svg
rename to public/img/country-flags/cz.svg
diff --git a/static/img/country-flags/de.svg b/public/img/country-flags/de.svg
similarity index 100%
rename from static/img/country-flags/de.svg
rename to public/img/country-flags/de.svg
diff --git a/static/img/country-flags/dg.svg b/public/img/country-flags/dg.svg
similarity index 100%
rename from static/img/country-flags/dg.svg
rename to public/img/country-flags/dg.svg
diff --git a/static/img/country-flags/dj.svg b/public/img/country-flags/dj.svg
similarity index 100%
rename from static/img/country-flags/dj.svg
rename to public/img/country-flags/dj.svg
diff --git a/static/img/country-flags/dk.svg b/public/img/country-flags/dk.svg
similarity index 100%
rename from static/img/country-flags/dk.svg
rename to public/img/country-flags/dk.svg
diff --git a/static/img/country-flags/dm.svg b/public/img/country-flags/dm.svg
similarity index 100%
rename from static/img/country-flags/dm.svg
rename to public/img/country-flags/dm.svg
diff --git a/static/img/country-flags/do.svg b/public/img/country-flags/do.svg
similarity index 100%
rename from static/img/country-flags/do.svg
rename to public/img/country-flags/do.svg
diff --git a/static/img/country-flags/dz.svg b/public/img/country-flags/dz.svg
similarity index 100%
rename from static/img/country-flags/dz.svg
rename to public/img/country-flags/dz.svg
diff --git a/static/img/country-flags/ea.svg b/public/img/country-flags/ea.svg
similarity index 100%
rename from static/img/country-flags/ea.svg
rename to public/img/country-flags/ea.svg
diff --git a/static/img/country-flags/ec.svg b/public/img/country-flags/ec.svg
similarity index 100%
rename from static/img/country-flags/ec.svg
rename to public/img/country-flags/ec.svg
diff --git a/static/img/country-flags/ee.svg b/public/img/country-flags/ee.svg
similarity index 100%
rename from static/img/country-flags/ee.svg
rename to public/img/country-flags/ee.svg
diff --git a/static/img/country-flags/eg.svg b/public/img/country-flags/eg.svg
similarity index 100%
rename from static/img/country-flags/eg.svg
rename to public/img/country-flags/eg.svg
diff --git a/static/img/country-flags/eh.svg b/public/img/country-flags/eh.svg
similarity index 100%
rename from static/img/country-flags/eh.svg
rename to public/img/country-flags/eh.svg
diff --git a/static/img/country-flags/er.svg b/public/img/country-flags/er.svg
similarity index 100%
rename from static/img/country-flags/er.svg
rename to public/img/country-flags/er.svg
diff --git a/static/img/country-flags/es-ct.svg b/public/img/country-flags/es-ct.svg
similarity index 100%
rename from static/img/country-flags/es-ct.svg
rename to public/img/country-flags/es-ct.svg
diff --git a/static/img/country-flags/es-ga.svg b/public/img/country-flags/es-ga.svg
similarity index 100%
rename from static/img/country-flags/es-ga.svg
rename to public/img/country-flags/es-ga.svg
diff --git a/static/img/country-flags/es.svg b/public/img/country-flags/es.svg
similarity index 100%
rename from static/img/country-flags/es.svg
rename to public/img/country-flags/es.svg
diff --git a/static/img/country-flags/et.svg b/public/img/country-flags/et.svg
similarity index 100%
rename from static/img/country-flags/et.svg
rename to public/img/country-flags/et.svg
diff --git a/static/img/country-flags/eu.svg b/public/img/country-flags/eu.svg
similarity index 100%
rename from static/img/country-flags/eu.svg
rename to public/img/country-flags/eu.svg
diff --git a/static/img/country-flags/fi.svg b/public/img/country-flags/fi.svg
similarity index 100%
rename from static/img/country-flags/fi.svg
rename to public/img/country-flags/fi.svg
diff --git a/static/img/country-flags/fj.svg b/public/img/country-flags/fj.svg
similarity index 100%
rename from static/img/country-flags/fj.svg
rename to public/img/country-flags/fj.svg
diff --git a/static/img/country-flags/fk.svg b/public/img/country-flags/fk.svg
similarity index 100%
rename from static/img/country-flags/fk.svg
rename to public/img/country-flags/fk.svg
diff --git a/static/img/country-flags/fm.svg b/public/img/country-flags/fm.svg
similarity index 100%
rename from static/img/country-flags/fm.svg
rename to public/img/country-flags/fm.svg
diff --git a/static/img/country-flags/fo.svg b/public/img/country-flags/fo.svg
similarity index 100%
rename from static/img/country-flags/fo.svg
rename to public/img/country-flags/fo.svg
diff --git a/static/img/country-flags/fr.svg b/public/img/country-flags/fr.svg
similarity index 100%
rename from static/img/country-flags/fr.svg
rename to public/img/country-flags/fr.svg
diff --git a/static/img/country-flags/ga.svg b/public/img/country-flags/ga.svg
similarity index 100%
rename from static/img/country-flags/ga.svg
rename to public/img/country-flags/ga.svg
diff --git a/static/img/country-flags/gb-eng.svg b/public/img/country-flags/gb-eng.svg
similarity index 100%
rename from static/img/country-flags/gb-eng.svg
rename to public/img/country-flags/gb-eng.svg
diff --git a/static/img/country-flags/gb-nir.svg b/public/img/country-flags/gb-nir.svg
similarity index 100%
rename from static/img/country-flags/gb-nir.svg
rename to public/img/country-flags/gb-nir.svg
diff --git a/static/img/country-flags/gb-sct.svg b/public/img/country-flags/gb-sct.svg
similarity index 100%
rename from static/img/country-flags/gb-sct.svg
rename to public/img/country-flags/gb-sct.svg
diff --git a/static/img/country-flags/gb-wls.svg b/public/img/country-flags/gb-wls.svg
similarity index 100%
rename from static/img/country-flags/gb-wls.svg
rename to public/img/country-flags/gb-wls.svg
diff --git a/static/img/country-flags/gb.svg b/public/img/country-flags/gb.svg
similarity index 100%
rename from static/img/country-flags/gb.svg
rename to public/img/country-flags/gb.svg
diff --git a/static/img/country-flags/gd.svg b/public/img/country-flags/gd.svg
similarity index 100%
rename from static/img/country-flags/gd.svg
rename to public/img/country-flags/gd.svg
diff --git a/static/img/country-flags/ge.svg b/public/img/country-flags/ge.svg
similarity index 100%
rename from static/img/country-flags/ge.svg
rename to public/img/country-flags/ge.svg
diff --git a/static/img/country-flags/gf.svg b/public/img/country-flags/gf.svg
similarity index 100%
rename from static/img/country-flags/gf.svg
rename to public/img/country-flags/gf.svg
diff --git a/static/img/country-flags/gg.svg b/public/img/country-flags/gg.svg
similarity index 100%
rename from static/img/country-flags/gg.svg
rename to public/img/country-flags/gg.svg
diff --git a/static/img/country-flags/gh.svg b/public/img/country-flags/gh.svg
similarity index 100%
rename from static/img/country-flags/gh.svg
rename to public/img/country-flags/gh.svg
diff --git a/static/img/country-flags/gi.svg b/public/img/country-flags/gi.svg
similarity index 100%
rename from static/img/country-flags/gi.svg
rename to public/img/country-flags/gi.svg
diff --git a/static/img/country-flags/gl.svg b/public/img/country-flags/gl.svg
similarity index 100%
rename from static/img/country-flags/gl.svg
rename to public/img/country-flags/gl.svg
diff --git a/static/img/country-flags/gm.svg b/public/img/country-flags/gm.svg
similarity index 100%
rename from static/img/country-flags/gm.svg
rename to public/img/country-flags/gm.svg
diff --git a/static/img/country-flags/gn.svg b/public/img/country-flags/gn.svg
similarity index 100%
rename from static/img/country-flags/gn.svg
rename to public/img/country-flags/gn.svg
diff --git a/static/img/country-flags/gp.svg b/public/img/country-flags/gp.svg
similarity index 100%
rename from static/img/country-flags/gp.svg
rename to public/img/country-flags/gp.svg
diff --git a/static/img/country-flags/gq.svg b/public/img/country-flags/gq.svg
similarity index 100%
rename from static/img/country-flags/gq.svg
rename to public/img/country-flags/gq.svg
diff --git a/static/img/country-flags/gr.svg b/public/img/country-flags/gr.svg
similarity index 100%
rename from static/img/country-flags/gr.svg
rename to public/img/country-flags/gr.svg
diff --git a/static/img/country-flags/gs.svg b/public/img/country-flags/gs.svg
similarity index 100%
rename from static/img/country-flags/gs.svg
rename to public/img/country-flags/gs.svg
diff --git a/static/img/country-flags/gt.svg b/public/img/country-flags/gt.svg
similarity index 100%
rename from static/img/country-flags/gt.svg
rename to public/img/country-flags/gt.svg
diff --git a/static/img/country-flags/gu.svg b/public/img/country-flags/gu.svg
similarity index 100%
rename from static/img/country-flags/gu.svg
rename to public/img/country-flags/gu.svg
diff --git a/static/img/country-flags/gw.svg b/public/img/country-flags/gw.svg
similarity index 100%
rename from static/img/country-flags/gw.svg
rename to public/img/country-flags/gw.svg
diff --git a/static/img/country-flags/gy.svg b/public/img/country-flags/gy.svg
similarity index 100%
rename from static/img/country-flags/gy.svg
rename to public/img/country-flags/gy.svg
diff --git a/static/img/country-flags/hk.svg b/public/img/country-flags/hk.svg
similarity index 100%
rename from static/img/country-flags/hk.svg
rename to public/img/country-flags/hk.svg
diff --git a/static/img/country-flags/hm.svg b/public/img/country-flags/hm.svg
similarity index 100%
rename from static/img/country-flags/hm.svg
rename to public/img/country-flags/hm.svg
diff --git a/static/img/country-flags/hn.svg b/public/img/country-flags/hn.svg
similarity index 100%
rename from static/img/country-flags/hn.svg
rename to public/img/country-flags/hn.svg
diff --git a/static/img/country-flags/hr.svg b/public/img/country-flags/hr.svg
similarity index 100%
rename from static/img/country-flags/hr.svg
rename to public/img/country-flags/hr.svg
diff --git a/static/img/country-flags/ht.svg b/public/img/country-flags/ht.svg
similarity index 100%
rename from static/img/country-flags/ht.svg
rename to public/img/country-flags/ht.svg
diff --git a/static/img/country-flags/hu.svg b/public/img/country-flags/hu.svg
similarity index 100%
rename from static/img/country-flags/hu.svg
rename to public/img/country-flags/hu.svg
diff --git a/static/img/country-flags/ic.svg b/public/img/country-flags/ic.svg
similarity index 100%
rename from static/img/country-flags/ic.svg
rename to public/img/country-flags/ic.svg
diff --git a/static/img/country-flags/id.svg b/public/img/country-flags/id.svg
similarity index 100%
rename from static/img/country-flags/id.svg
rename to public/img/country-flags/id.svg
diff --git a/static/img/country-flags/ie.svg b/public/img/country-flags/ie.svg
similarity index 100%
rename from static/img/country-flags/ie.svg
rename to public/img/country-flags/ie.svg
diff --git a/static/img/country-flags/il.svg b/public/img/country-flags/il.svg
similarity index 100%
rename from static/img/country-flags/il.svg
rename to public/img/country-flags/il.svg
diff --git a/static/img/country-flags/im.svg b/public/img/country-flags/im.svg
similarity index 100%
rename from static/img/country-flags/im.svg
rename to public/img/country-flags/im.svg
diff --git a/static/img/country-flags/in.svg b/public/img/country-flags/in.svg
similarity index 100%
rename from static/img/country-flags/in.svg
rename to public/img/country-flags/in.svg
diff --git a/static/img/country-flags/io.svg b/public/img/country-flags/io.svg
similarity index 100%
rename from static/img/country-flags/io.svg
rename to public/img/country-flags/io.svg
diff --git a/static/img/country-flags/iq.svg b/public/img/country-flags/iq.svg
similarity index 100%
rename from static/img/country-flags/iq.svg
rename to public/img/country-flags/iq.svg
diff --git a/static/img/country-flags/ir.svg b/public/img/country-flags/ir.svg
similarity index 100%
rename from static/img/country-flags/ir.svg
rename to public/img/country-flags/ir.svg
diff --git a/static/img/country-flags/is.svg b/public/img/country-flags/is.svg
similarity index 100%
rename from static/img/country-flags/is.svg
rename to public/img/country-flags/is.svg
diff --git a/static/img/country-flags/it.svg b/public/img/country-flags/it.svg
similarity index 100%
rename from static/img/country-flags/it.svg
rename to public/img/country-flags/it.svg
diff --git a/static/img/country-flags/je.svg b/public/img/country-flags/je.svg
similarity index 100%
rename from static/img/country-flags/je.svg
rename to public/img/country-flags/je.svg
diff --git a/static/img/country-flags/jm.svg b/public/img/country-flags/jm.svg
similarity index 100%
rename from static/img/country-flags/jm.svg
rename to public/img/country-flags/jm.svg
diff --git a/static/img/country-flags/jo.svg b/public/img/country-flags/jo.svg
similarity index 100%
rename from static/img/country-flags/jo.svg
rename to public/img/country-flags/jo.svg
diff --git a/static/img/country-flags/jp.svg b/public/img/country-flags/jp.svg
similarity index 100%
rename from static/img/country-flags/jp.svg
rename to public/img/country-flags/jp.svg
diff --git a/static/img/country-flags/ke.svg b/public/img/country-flags/ke.svg
similarity index 100%
rename from static/img/country-flags/ke.svg
rename to public/img/country-flags/ke.svg
diff --git a/static/img/country-flags/kg.svg b/public/img/country-flags/kg.svg
similarity index 100%
rename from static/img/country-flags/kg.svg
rename to public/img/country-flags/kg.svg
diff --git a/static/img/country-flags/kh.svg b/public/img/country-flags/kh.svg
similarity index 100%
rename from static/img/country-flags/kh.svg
rename to public/img/country-flags/kh.svg
diff --git a/static/img/country-flags/ki.svg b/public/img/country-flags/ki.svg
similarity index 100%
rename from static/img/country-flags/ki.svg
rename to public/img/country-flags/ki.svg
diff --git a/static/img/country-flags/km.svg b/public/img/country-flags/km.svg
similarity index 100%
rename from static/img/country-flags/km.svg
rename to public/img/country-flags/km.svg
diff --git a/static/img/country-flags/kn.svg b/public/img/country-flags/kn.svg
similarity index 100%
rename from static/img/country-flags/kn.svg
rename to public/img/country-flags/kn.svg
diff --git a/static/img/country-flags/kp.svg b/public/img/country-flags/kp.svg
similarity index 100%
rename from static/img/country-flags/kp.svg
rename to public/img/country-flags/kp.svg
diff --git a/static/img/country-flags/kr.svg b/public/img/country-flags/kr.svg
similarity index 100%
rename from static/img/country-flags/kr.svg
rename to public/img/country-flags/kr.svg
diff --git a/static/img/country-flags/kw.svg b/public/img/country-flags/kw.svg
similarity index 100%
rename from static/img/country-flags/kw.svg
rename to public/img/country-flags/kw.svg
diff --git a/static/img/country-flags/ky.svg b/public/img/country-flags/ky.svg
similarity index 100%
rename from static/img/country-flags/ky.svg
rename to public/img/country-flags/ky.svg
diff --git a/static/img/country-flags/kz.svg b/public/img/country-flags/kz.svg
similarity index 100%
rename from static/img/country-flags/kz.svg
rename to public/img/country-flags/kz.svg
diff --git a/static/img/country-flags/la.svg b/public/img/country-flags/la.svg
similarity index 100%
rename from static/img/country-flags/la.svg
rename to public/img/country-flags/la.svg
diff --git a/static/img/country-flags/lb.svg b/public/img/country-flags/lb.svg
similarity index 100%
rename from static/img/country-flags/lb.svg
rename to public/img/country-flags/lb.svg
diff --git a/static/img/country-flags/lc.svg b/public/img/country-flags/lc.svg
similarity index 100%
rename from static/img/country-flags/lc.svg
rename to public/img/country-flags/lc.svg
diff --git a/static/img/country-flags/li.svg b/public/img/country-flags/li.svg
similarity index 100%
rename from static/img/country-flags/li.svg
rename to public/img/country-flags/li.svg
diff --git a/static/img/country-flags/lk.svg b/public/img/country-flags/lk.svg
similarity index 100%
rename from static/img/country-flags/lk.svg
rename to public/img/country-flags/lk.svg
diff --git a/static/img/country-flags/lr.svg b/public/img/country-flags/lr.svg
similarity index 100%
rename from static/img/country-flags/lr.svg
rename to public/img/country-flags/lr.svg
diff --git a/static/img/country-flags/ls.svg b/public/img/country-flags/ls.svg
similarity index 100%
rename from static/img/country-flags/ls.svg
rename to public/img/country-flags/ls.svg
diff --git a/static/img/country-flags/lt.svg b/public/img/country-flags/lt.svg
similarity index 100%
rename from static/img/country-flags/lt.svg
rename to public/img/country-flags/lt.svg
diff --git a/static/img/country-flags/lu.svg b/public/img/country-flags/lu.svg
similarity index 100%
rename from static/img/country-flags/lu.svg
rename to public/img/country-flags/lu.svg
diff --git a/static/img/country-flags/lv.svg b/public/img/country-flags/lv.svg
similarity index 100%
rename from static/img/country-flags/lv.svg
rename to public/img/country-flags/lv.svg
diff --git a/static/img/country-flags/ly.svg b/public/img/country-flags/ly.svg
similarity index 100%
rename from static/img/country-flags/ly.svg
rename to public/img/country-flags/ly.svg
diff --git a/static/img/country-flags/ma.svg b/public/img/country-flags/ma.svg
similarity index 100%
rename from static/img/country-flags/ma.svg
rename to public/img/country-flags/ma.svg
diff --git a/static/img/country-flags/mc.svg b/public/img/country-flags/mc.svg
similarity index 100%
rename from static/img/country-flags/mc.svg
rename to public/img/country-flags/mc.svg
diff --git a/static/img/country-flags/md.svg b/public/img/country-flags/md.svg
similarity index 100%
rename from static/img/country-flags/md.svg
rename to public/img/country-flags/md.svg
diff --git a/static/img/country-flags/me.svg b/public/img/country-flags/me.svg
similarity index 100%
rename from static/img/country-flags/me.svg
rename to public/img/country-flags/me.svg
diff --git a/static/img/country-flags/mf.svg b/public/img/country-flags/mf.svg
similarity index 100%
rename from static/img/country-flags/mf.svg
rename to public/img/country-flags/mf.svg
diff --git a/static/img/country-flags/mg.svg b/public/img/country-flags/mg.svg
similarity index 100%
rename from static/img/country-flags/mg.svg
rename to public/img/country-flags/mg.svg
diff --git a/static/img/country-flags/mh.svg b/public/img/country-flags/mh.svg
similarity index 100%
rename from static/img/country-flags/mh.svg
rename to public/img/country-flags/mh.svg
diff --git a/static/img/country-flags/mk.svg b/public/img/country-flags/mk.svg
similarity index 100%
rename from static/img/country-flags/mk.svg
rename to public/img/country-flags/mk.svg
diff --git a/static/img/country-flags/ml.svg b/public/img/country-flags/ml.svg
similarity index 100%
rename from static/img/country-flags/ml.svg
rename to public/img/country-flags/ml.svg
diff --git a/static/img/country-flags/mm.svg b/public/img/country-flags/mm.svg
similarity index 100%
rename from static/img/country-flags/mm.svg
rename to public/img/country-flags/mm.svg
diff --git a/static/img/country-flags/mn.svg b/public/img/country-flags/mn.svg
similarity index 100%
rename from static/img/country-flags/mn.svg
rename to public/img/country-flags/mn.svg
diff --git a/static/img/country-flags/mo.svg b/public/img/country-flags/mo.svg
similarity index 100%
rename from static/img/country-flags/mo.svg
rename to public/img/country-flags/mo.svg
diff --git a/static/img/country-flags/mp.svg b/public/img/country-flags/mp.svg
similarity index 100%
rename from static/img/country-flags/mp.svg
rename to public/img/country-flags/mp.svg
diff --git a/static/img/country-flags/mq.svg b/public/img/country-flags/mq.svg
similarity index 100%
rename from static/img/country-flags/mq.svg
rename to public/img/country-flags/mq.svg
diff --git a/static/img/country-flags/mr.svg b/public/img/country-flags/mr.svg
similarity index 100%
rename from static/img/country-flags/mr.svg
rename to public/img/country-flags/mr.svg
diff --git a/static/img/country-flags/ms.svg b/public/img/country-flags/ms.svg
similarity index 100%
rename from static/img/country-flags/ms.svg
rename to public/img/country-flags/ms.svg
diff --git a/static/img/country-flags/mt.svg b/public/img/country-flags/mt.svg
similarity index 100%
rename from static/img/country-flags/mt.svg
rename to public/img/country-flags/mt.svg
diff --git a/static/img/country-flags/mu.svg b/public/img/country-flags/mu.svg
similarity index 100%
rename from static/img/country-flags/mu.svg
rename to public/img/country-flags/mu.svg
diff --git a/static/img/country-flags/mv.svg b/public/img/country-flags/mv.svg
similarity index 100%
rename from static/img/country-flags/mv.svg
rename to public/img/country-flags/mv.svg
diff --git a/static/img/country-flags/mw.svg b/public/img/country-flags/mw.svg
similarity index 100%
rename from static/img/country-flags/mw.svg
rename to public/img/country-flags/mw.svg
diff --git a/static/img/country-flags/mx.svg b/public/img/country-flags/mx.svg
similarity index 100%
rename from static/img/country-flags/mx.svg
rename to public/img/country-flags/mx.svg
diff --git a/static/img/country-flags/my.svg b/public/img/country-flags/my.svg
similarity index 100%
rename from static/img/country-flags/my.svg
rename to public/img/country-flags/my.svg
diff --git a/static/img/country-flags/mz.svg b/public/img/country-flags/mz.svg
similarity index 100%
rename from static/img/country-flags/mz.svg
rename to public/img/country-flags/mz.svg
diff --git a/static/img/country-flags/na.svg b/public/img/country-flags/na.svg
similarity index 100%
rename from static/img/country-flags/na.svg
rename to public/img/country-flags/na.svg
diff --git a/static/img/country-flags/nc.svg b/public/img/country-flags/nc.svg
similarity index 100%
rename from static/img/country-flags/nc.svg
rename to public/img/country-flags/nc.svg
diff --git a/static/img/country-flags/ne.svg b/public/img/country-flags/ne.svg
similarity index 100%
rename from static/img/country-flags/ne.svg
rename to public/img/country-flags/ne.svg
diff --git a/static/img/country-flags/nf.svg b/public/img/country-flags/nf.svg
similarity index 100%
rename from static/img/country-flags/nf.svg
rename to public/img/country-flags/nf.svg
diff --git a/static/img/country-flags/ng.svg b/public/img/country-flags/ng.svg
similarity index 100%
rename from static/img/country-flags/ng.svg
rename to public/img/country-flags/ng.svg
diff --git a/static/img/country-flags/ni.svg b/public/img/country-flags/ni.svg
similarity index 100%
rename from static/img/country-flags/ni.svg
rename to public/img/country-flags/ni.svg
diff --git a/static/img/country-flags/nl.svg b/public/img/country-flags/nl.svg
similarity index 100%
rename from static/img/country-flags/nl.svg
rename to public/img/country-flags/nl.svg
diff --git a/static/img/country-flags/no.svg b/public/img/country-flags/no.svg
similarity index 100%
rename from static/img/country-flags/no.svg
rename to public/img/country-flags/no.svg
diff --git a/static/img/country-flags/np.svg b/public/img/country-flags/np.svg
similarity index 100%
rename from static/img/country-flags/np.svg
rename to public/img/country-flags/np.svg
diff --git a/static/img/country-flags/nr.svg b/public/img/country-flags/nr.svg
similarity index 100%
rename from static/img/country-flags/nr.svg
rename to public/img/country-flags/nr.svg
diff --git a/static/img/country-flags/nu.svg b/public/img/country-flags/nu.svg
similarity index 100%
rename from static/img/country-flags/nu.svg
rename to public/img/country-flags/nu.svg
diff --git a/static/img/country-flags/nz.svg b/public/img/country-flags/nz.svg
similarity index 100%
rename from static/img/country-flags/nz.svg
rename to public/img/country-flags/nz.svg
diff --git a/static/img/country-flags/om.svg b/public/img/country-flags/om.svg
similarity index 100%
rename from static/img/country-flags/om.svg
rename to public/img/country-flags/om.svg
diff --git a/static/img/country-flags/pa.svg b/public/img/country-flags/pa.svg
similarity index 100%
rename from static/img/country-flags/pa.svg
rename to public/img/country-flags/pa.svg
diff --git a/static/img/country-flags/pe.svg b/public/img/country-flags/pe.svg
similarity index 100%
rename from static/img/country-flags/pe.svg
rename to public/img/country-flags/pe.svg
diff --git a/static/img/country-flags/pf.svg b/public/img/country-flags/pf.svg
similarity index 100%
rename from static/img/country-flags/pf.svg
rename to public/img/country-flags/pf.svg
diff --git a/static/img/country-flags/pg.svg b/public/img/country-flags/pg.svg
similarity index 100%
rename from static/img/country-flags/pg.svg
rename to public/img/country-flags/pg.svg
diff --git a/static/img/country-flags/ph.svg b/public/img/country-flags/ph.svg
similarity index 100%
rename from static/img/country-flags/ph.svg
rename to public/img/country-flags/ph.svg
diff --git a/static/img/country-flags/pk.svg b/public/img/country-flags/pk.svg
similarity index 100%
rename from static/img/country-flags/pk.svg
rename to public/img/country-flags/pk.svg
diff --git a/static/img/country-flags/pl.svg b/public/img/country-flags/pl.svg
similarity index 100%
rename from static/img/country-flags/pl.svg
rename to public/img/country-flags/pl.svg
diff --git a/static/img/country-flags/pm.svg b/public/img/country-flags/pm.svg
similarity index 100%
rename from static/img/country-flags/pm.svg
rename to public/img/country-flags/pm.svg
diff --git a/static/img/country-flags/pn.svg b/public/img/country-flags/pn.svg
similarity index 100%
rename from static/img/country-flags/pn.svg
rename to public/img/country-flags/pn.svg
diff --git a/static/img/country-flags/pr.svg b/public/img/country-flags/pr.svg
similarity index 100%
rename from static/img/country-flags/pr.svg
rename to public/img/country-flags/pr.svg
diff --git a/static/img/country-flags/ps.svg b/public/img/country-flags/ps.svg
similarity index 100%
rename from static/img/country-flags/ps.svg
rename to public/img/country-flags/ps.svg
diff --git a/static/img/country-flags/pt.svg b/public/img/country-flags/pt.svg
similarity index 100%
rename from static/img/country-flags/pt.svg
rename to public/img/country-flags/pt.svg
diff --git a/static/img/country-flags/pw.svg b/public/img/country-flags/pw.svg
similarity index 100%
rename from static/img/country-flags/pw.svg
rename to public/img/country-flags/pw.svg
diff --git a/static/img/country-flags/py.svg b/public/img/country-flags/py.svg
similarity index 100%
rename from static/img/country-flags/py.svg
rename to public/img/country-flags/py.svg
diff --git a/static/img/country-flags/qa.svg b/public/img/country-flags/qa.svg
similarity index 100%
rename from static/img/country-flags/qa.svg
rename to public/img/country-flags/qa.svg
diff --git a/static/img/country-flags/re.svg b/public/img/country-flags/re.svg
similarity index 100%
rename from static/img/country-flags/re.svg
rename to public/img/country-flags/re.svg
diff --git a/static/img/country-flags/ro.svg b/public/img/country-flags/ro.svg
similarity index 100%
rename from static/img/country-flags/ro.svg
rename to public/img/country-flags/ro.svg
diff --git a/static/img/country-flags/rs.svg b/public/img/country-flags/rs.svg
similarity index 100%
rename from static/img/country-flags/rs.svg
rename to public/img/country-flags/rs.svg
diff --git a/static/img/country-flags/ru.svg b/public/img/country-flags/ru.svg
similarity index 100%
rename from static/img/country-flags/ru.svg
rename to public/img/country-flags/ru.svg
diff --git a/static/img/country-flags/rw.svg b/public/img/country-flags/rw.svg
similarity index 100%
rename from static/img/country-flags/rw.svg
rename to public/img/country-flags/rw.svg
diff --git a/static/img/country-flags/sa.svg b/public/img/country-flags/sa.svg
similarity index 100%
rename from static/img/country-flags/sa.svg
rename to public/img/country-flags/sa.svg
diff --git a/static/img/country-flags/sb.svg b/public/img/country-flags/sb.svg
similarity index 100%
rename from static/img/country-flags/sb.svg
rename to public/img/country-flags/sb.svg
diff --git a/static/img/country-flags/sc.svg b/public/img/country-flags/sc.svg
similarity index 100%
rename from static/img/country-flags/sc.svg
rename to public/img/country-flags/sc.svg
diff --git a/static/img/country-flags/sd.svg b/public/img/country-flags/sd.svg
similarity index 100%
rename from static/img/country-flags/sd.svg
rename to public/img/country-flags/sd.svg
diff --git a/static/img/country-flags/se.svg b/public/img/country-flags/se.svg
similarity index 100%
rename from static/img/country-flags/se.svg
rename to public/img/country-flags/se.svg
diff --git a/static/img/country-flags/sg.svg b/public/img/country-flags/sg.svg
similarity index 100%
rename from static/img/country-flags/sg.svg
rename to public/img/country-flags/sg.svg
diff --git a/static/img/country-flags/sh.svg b/public/img/country-flags/sh.svg
similarity index 100%
rename from static/img/country-flags/sh.svg
rename to public/img/country-flags/sh.svg
diff --git a/static/img/country-flags/si.svg b/public/img/country-flags/si.svg
similarity index 100%
rename from static/img/country-flags/si.svg
rename to public/img/country-flags/si.svg
diff --git a/static/img/country-flags/sj.svg b/public/img/country-flags/sj.svg
similarity index 100%
rename from static/img/country-flags/sj.svg
rename to public/img/country-flags/sj.svg
diff --git a/static/img/country-flags/sk.svg b/public/img/country-flags/sk.svg
similarity index 100%
rename from static/img/country-flags/sk.svg
rename to public/img/country-flags/sk.svg
diff --git a/static/img/country-flags/sl.svg b/public/img/country-flags/sl.svg
similarity index 100%
rename from static/img/country-flags/sl.svg
rename to public/img/country-flags/sl.svg
diff --git a/static/img/country-flags/sm.svg b/public/img/country-flags/sm.svg
similarity index 100%
rename from static/img/country-flags/sm.svg
rename to public/img/country-flags/sm.svg
diff --git a/static/img/country-flags/sn.svg b/public/img/country-flags/sn.svg
similarity index 100%
rename from static/img/country-flags/sn.svg
rename to public/img/country-flags/sn.svg
diff --git a/static/img/country-flags/so.svg b/public/img/country-flags/so.svg
similarity index 100%
rename from static/img/country-flags/so.svg
rename to public/img/country-flags/so.svg
diff --git a/static/img/country-flags/sr.svg b/public/img/country-flags/sr.svg
similarity index 100%
rename from static/img/country-flags/sr.svg
rename to public/img/country-flags/sr.svg
diff --git a/static/img/country-flags/ss.svg b/public/img/country-flags/ss.svg
similarity index 100%
rename from static/img/country-flags/ss.svg
rename to public/img/country-flags/ss.svg
diff --git a/static/img/country-flags/st.svg b/public/img/country-flags/st.svg
similarity index 100%
rename from static/img/country-flags/st.svg
rename to public/img/country-flags/st.svg
diff --git a/static/img/country-flags/sv.svg b/public/img/country-flags/sv.svg
similarity index 100%
rename from static/img/country-flags/sv.svg
rename to public/img/country-flags/sv.svg
diff --git a/static/img/country-flags/sx.svg b/public/img/country-flags/sx.svg
similarity index 100%
rename from static/img/country-flags/sx.svg
rename to public/img/country-flags/sx.svg
diff --git a/static/img/country-flags/sy.svg b/public/img/country-flags/sy.svg
similarity index 100%
rename from static/img/country-flags/sy.svg
rename to public/img/country-flags/sy.svg
diff --git a/static/img/country-flags/sz.svg b/public/img/country-flags/sz.svg
similarity index 100%
rename from static/img/country-flags/sz.svg
rename to public/img/country-flags/sz.svg
diff --git a/static/img/country-flags/ta.svg b/public/img/country-flags/ta.svg
similarity index 100%
rename from static/img/country-flags/ta.svg
rename to public/img/country-flags/ta.svg
diff --git a/static/img/country-flags/tc.svg b/public/img/country-flags/tc.svg
similarity index 100%
rename from static/img/country-flags/tc.svg
rename to public/img/country-flags/tc.svg
diff --git a/static/img/country-flags/td.svg b/public/img/country-flags/td.svg
similarity index 100%
rename from static/img/country-flags/td.svg
rename to public/img/country-flags/td.svg
diff --git a/static/img/country-flags/tf.svg b/public/img/country-flags/tf.svg
similarity index 100%
rename from static/img/country-flags/tf.svg
rename to public/img/country-flags/tf.svg
diff --git a/static/img/country-flags/tg.svg b/public/img/country-flags/tg.svg
similarity index 100%
rename from static/img/country-flags/tg.svg
rename to public/img/country-flags/tg.svg
diff --git a/static/img/country-flags/th.svg b/public/img/country-flags/th.svg
similarity index 100%
rename from static/img/country-flags/th.svg
rename to public/img/country-flags/th.svg
diff --git a/static/img/country-flags/tj.svg b/public/img/country-flags/tj.svg
similarity index 100%
rename from static/img/country-flags/tj.svg
rename to public/img/country-flags/tj.svg
diff --git a/static/img/country-flags/tk.svg b/public/img/country-flags/tk.svg
similarity index 100%
rename from static/img/country-flags/tk.svg
rename to public/img/country-flags/tk.svg
diff --git a/static/img/country-flags/tl.svg b/public/img/country-flags/tl.svg
similarity index 100%
rename from static/img/country-flags/tl.svg
rename to public/img/country-flags/tl.svg
diff --git a/static/img/country-flags/tm.svg b/public/img/country-flags/tm.svg
similarity index 100%
rename from static/img/country-flags/tm.svg
rename to public/img/country-flags/tm.svg
diff --git a/static/img/country-flags/tn.svg b/public/img/country-flags/tn.svg
similarity index 100%
rename from static/img/country-flags/tn.svg
rename to public/img/country-flags/tn.svg
diff --git a/static/img/country-flags/to.svg b/public/img/country-flags/to.svg
similarity index 100%
rename from static/img/country-flags/to.svg
rename to public/img/country-flags/to.svg
diff --git a/static/img/country-flags/tr.svg b/public/img/country-flags/tr.svg
similarity index 100%
rename from static/img/country-flags/tr.svg
rename to public/img/country-flags/tr.svg
diff --git a/static/img/country-flags/tt.svg b/public/img/country-flags/tt.svg
similarity index 100%
rename from static/img/country-flags/tt.svg
rename to public/img/country-flags/tt.svg
diff --git a/static/img/country-flags/tv.svg b/public/img/country-flags/tv.svg
similarity index 100%
rename from static/img/country-flags/tv.svg
rename to public/img/country-flags/tv.svg
diff --git a/static/img/country-flags/tw.svg b/public/img/country-flags/tw.svg
similarity index 100%
rename from static/img/country-flags/tw.svg
rename to public/img/country-flags/tw.svg
diff --git a/static/img/country-flags/tz.svg b/public/img/country-flags/tz.svg
similarity index 100%
rename from static/img/country-flags/tz.svg
rename to public/img/country-flags/tz.svg
diff --git a/static/img/country-flags/ua.svg b/public/img/country-flags/ua.svg
similarity index 100%
rename from static/img/country-flags/ua.svg
rename to public/img/country-flags/ua.svg
diff --git a/static/img/country-flags/ug.svg b/public/img/country-flags/ug.svg
similarity index 100%
rename from static/img/country-flags/ug.svg
rename to public/img/country-flags/ug.svg
diff --git a/static/img/country-flags/um.svg b/public/img/country-flags/um.svg
similarity index 100%
rename from static/img/country-flags/um.svg
rename to public/img/country-flags/um.svg
diff --git a/static/img/country-flags/un.svg b/public/img/country-flags/un.svg
similarity index 100%
rename from static/img/country-flags/un.svg
rename to public/img/country-flags/un.svg
diff --git a/static/img/country-flags/us.svg b/public/img/country-flags/us.svg
similarity index 100%
rename from static/img/country-flags/us.svg
rename to public/img/country-flags/us.svg
diff --git a/static/img/country-flags/uy.svg b/public/img/country-flags/uy.svg
similarity index 100%
rename from static/img/country-flags/uy.svg
rename to public/img/country-flags/uy.svg
diff --git a/static/img/country-flags/uz.svg b/public/img/country-flags/uz.svg
similarity index 100%
rename from static/img/country-flags/uz.svg
rename to public/img/country-flags/uz.svg
diff --git a/static/img/country-flags/va.svg b/public/img/country-flags/va.svg
similarity index 100%
rename from static/img/country-flags/va.svg
rename to public/img/country-flags/va.svg
diff --git a/static/img/country-flags/vc.svg b/public/img/country-flags/vc.svg
similarity index 100%
rename from static/img/country-flags/vc.svg
rename to public/img/country-flags/vc.svg
diff --git a/static/img/country-flags/ve.svg b/public/img/country-flags/ve.svg
similarity index 100%
rename from static/img/country-flags/ve.svg
rename to public/img/country-flags/ve.svg
diff --git a/static/img/country-flags/vg.svg b/public/img/country-flags/vg.svg
similarity index 100%
rename from static/img/country-flags/vg.svg
rename to public/img/country-flags/vg.svg
diff --git a/static/img/country-flags/vi.svg b/public/img/country-flags/vi.svg
similarity index 100%
rename from static/img/country-flags/vi.svg
rename to public/img/country-flags/vi.svg
diff --git a/static/img/country-flags/vn.svg b/public/img/country-flags/vn.svg
similarity index 100%
rename from static/img/country-flags/vn.svg
rename to public/img/country-flags/vn.svg
diff --git a/static/img/country-flags/vu.svg b/public/img/country-flags/vu.svg
similarity index 100%
rename from static/img/country-flags/vu.svg
rename to public/img/country-flags/vu.svg
diff --git a/static/img/country-flags/wf.svg b/public/img/country-flags/wf.svg
similarity index 100%
rename from static/img/country-flags/wf.svg
rename to public/img/country-flags/wf.svg
diff --git a/static/img/country-flags/ws.svg b/public/img/country-flags/ws.svg
similarity index 100%
rename from static/img/country-flags/ws.svg
rename to public/img/country-flags/ws.svg
diff --git a/static/img/country-flags/xk.svg b/public/img/country-flags/xk.svg
similarity index 100%
rename from static/img/country-flags/xk.svg
rename to public/img/country-flags/xk.svg
diff --git a/static/img/country-flags/xx.svg b/public/img/country-flags/xx.svg
similarity index 100%
rename from static/img/country-flags/xx.svg
rename to public/img/country-flags/xx.svg
diff --git a/static/img/country-flags/ye.svg b/public/img/country-flags/ye.svg
similarity index 100%
rename from static/img/country-flags/ye.svg
rename to public/img/country-flags/ye.svg
diff --git a/static/img/country-flags/yt.svg b/public/img/country-flags/yt.svg
similarity index 100%
rename from static/img/country-flags/yt.svg
rename to public/img/country-flags/yt.svg
diff --git a/static/img/country-flags/za.svg b/public/img/country-flags/za.svg
similarity index 100%
rename from static/img/country-flags/za.svg
rename to public/img/country-flags/za.svg
diff --git a/static/img/country-flags/zm.svg b/public/img/country-flags/zm.svg
similarity index 100%
rename from static/img/country-flags/zm.svg
rename to public/img/country-flags/zm.svg
diff --git a/static/img/country-flags/zw.svg b/public/img/country-flags/zw.svg
similarity index 100%
rename from static/img/country-flags/zw.svg
rename to public/img/country-flags/zw.svg
diff --git a/public/img/icons/android-chrome-192x192.png b/public/img/icons/android-chrome-192x192.png
new file mode 100644
index 00000000..b02aa64d
Binary files /dev/null and b/public/img/icons/android-chrome-192x192.png differ
diff --git a/public/img/icons/android-chrome-512x512.png b/public/img/icons/android-chrome-512x512.png
new file mode 100644
index 00000000..06088b01
Binary files /dev/null and b/public/img/icons/android-chrome-512x512.png differ
diff --git a/public/img/icons/android-chrome-maskable-192x192.png b/public/img/icons/android-chrome-maskable-192x192.png
new file mode 100644
index 00000000..791e9c8c
Binary files /dev/null and b/public/img/icons/android-chrome-maskable-192x192.png differ
diff --git a/public/img/icons/android-chrome-maskable-512x512.png b/public/img/icons/android-chrome-maskable-512x512.png
new file mode 100644
index 00000000..5f2098ed
Binary files /dev/null and b/public/img/icons/android-chrome-maskable-512x512.png differ
diff --git a/public/img/icons/apple-touch-icon-120x120.png b/public/img/icons/apple-touch-icon-120x120.png
new file mode 100644
index 00000000..1427cf62
Binary files /dev/null and b/public/img/icons/apple-touch-icon-120x120.png differ
diff --git a/public/img/icons/apple-touch-icon-152x152.png b/public/img/icons/apple-touch-icon-152x152.png
new file mode 100644
index 00000000..f24d454a
Binary files /dev/null and b/public/img/icons/apple-touch-icon-152x152.png differ
diff --git a/public/img/icons/apple-touch-icon-180x180.png b/public/img/icons/apple-touch-icon-180x180.png
new file mode 100644
index 00000000..404e192a
Binary files /dev/null and b/public/img/icons/apple-touch-icon-180x180.png differ
diff --git a/public/img/icons/apple-touch-icon-60x60.png b/public/img/icons/apple-touch-icon-60x60.png
new file mode 100644
index 00000000..cf10a560
Binary files /dev/null and b/public/img/icons/apple-touch-icon-60x60.png differ
diff --git a/public/img/icons/apple-touch-icon-76x76.png b/public/img/icons/apple-touch-icon-76x76.png
new file mode 100644
index 00000000..c500769e
Binary files /dev/null and b/public/img/icons/apple-touch-icon-76x76.png differ
diff --git a/public/img/icons/apple-touch-icon.png b/public/img/icons/apple-touch-icon.png
new file mode 100644
index 00000000..03c0c5d5
Binary files /dev/null and b/public/img/icons/apple-touch-icon.png differ
diff --git a/public/img/icons/favicon-16x16.png b/public/img/icons/favicon-16x16.png
new file mode 100644
index 00000000..42af0096
Binary files /dev/null and b/public/img/icons/favicon-16x16.png differ
diff --git a/public/img/icons/favicon-32x32.png b/public/img/icons/favicon-32x32.png
new file mode 100644
index 00000000..46ca04de
Binary files /dev/null and b/public/img/icons/favicon-32x32.png differ
diff --git a/public/img/icons/msapplication-icon-144x144.png b/public/img/icons/msapplication-icon-144x144.png
new file mode 100644
index 00000000..7808237a
Binary files /dev/null and b/public/img/icons/msapplication-icon-144x144.png differ
diff --git a/public/img/icons/mstile-150x150.png b/public/img/icons/mstile-150x150.png
new file mode 100644
index 00000000..3b37a43a
Binary files /dev/null and b/public/img/icons/mstile-150x150.png differ
diff --git a/public/img/icons/safari-pinned-tab.svg b/public/img/icons/safari-pinned-tab.svg
new file mode 100644
index 00000000..e44c0d5b
--- /dev/null
+++ b/public/img/icons/safari-pinned-tab.svg
@@ -0,0 +1,3 @@
+
diff --git a/static/img/igdb-logo.png b/public/img/igdb-logo.png
similarity index 100%
rename from static/img/igdb-logo.png
rename to public/img/igdb-logo.png
diff --git a/static/img/notepad-ruler.png b/public/img/notepad-ruler.png
similarity index 100%
rename from static/img/notepad-ruler.png
rename to public/img/notepad-ruler.png
diff --git a/static/img/screenshot-1.jpg b/public/img/screenshot-1.jpg
similarity index 100%
rename from static/img/screenshot-1.jpg
rename to public/img/screenshot-1.jpg
diff --git a/static/img/screenshot.png b/public/img/screenshot.png
similarity index 100%
rename from static/img/screenshot.png
rename to public/img/screenshot.png
diff --git a/public/index.html b/public/index.html
new file mode 100644
index 00000000..467df440
--- /dev/null
+++ b/public/index.html
@@ -0,0 +1,37 @@
+
+
+
+
+
+
+
+ <%= htmlWebpackPlugin.options.title %>
+
+
+
+
+
+
+
+
+
diff --git a/static/logo.png b/public/logo.png
similarity index 100%
rename from static/logo.png
rename to public/logo.png
diff --git a/static/logos/companies/android.svg b/public/logos/companies/android.svg
similarity index 100%
rename from static/logos/companies/android.svg
rename to public/logos/companies/android.svg
diff --git a/static/logos/companies/discord.svg b/public/logos/companies/discord.svg
similarity index 100%
rename from static/logos/companies/discord.svg
rename to public/logos/companies/discord.svg
diff --git a/static/logos/companies/epicgames.svg b/public/logos/companies/epicgames.svg
similarity index 100%
rename from static/logos/companies/epicgames.svg
rename to public/logos/companies/epicgames.svg
diff --git a/static/logos/companies/facebook.svg b/public/logos/companies/facebook.svg
similarity index 100%
rename from static/logos/companies/facebook.svg
rename to public/logos/companies/facebook.svg
diff --git a/static/logos/companies/fandom.svg b/public/logos/companies/fandom.svg
similarity index 100%
rename from static/logos/companies/fandom.svg
rename to public/logos/companies/fandom.svg
diff --git a/static/logos/companies/github.svg b/public/logos/companies/github.svg
similarity index 100%
rename from static/logos/companies/github.svg
rename to public/logos/companies/github.svg
diff --git a/static/logos/companies/gog.svg b/public/logos/companies/gog.svg
similarity index 100%
rename from static/logos/companies/gog.svg
rename to public/logos/companies/gog.svg
diff --git a/static/logos/companies/google.svg b/public/logos/companies/google.svg
similarity index 100%
rename from static/logos/companies/google.svg
rename to public/logos/companies/google.svg
diff --git a/static/logos/companies/instagram.svg b/public/logos/companies/instagram.svg
similarity index 100%
rename from static/logos/companies/instagram.svg
rename to public/logos/companies/instagram.svg
diff --git a/static/logos/companies/ipad.svg b/public/logos/companies/ipad.svg
similarity index 100%
rename from static/logos/companies/ipad.svg
rename to public/logos/companies/ipad.svg
diff --git a/static/logos/companies/iphone.svg b/public/logos/companies/iphone.svg
similarity index 100%
rename from static/logos/companies/iphone.svg
rename to public/logos/companies/iphone.svg
diff --git a/static/logos/companies/itch.svg b/public/logos/companies/itch.svg
similarity index 100%
rename from static/logos/companies/itch.svg
rename to public/logos/companies/itch.svg
diff --git a/static/logos/companies/microsoft.svg b/public/logos/companies/microsoft.svg
similarity index 100%
rename from static/logos/companies/microsoft.svg
rename to public/logos/companies/microsoft.svg
diff --git a/static/logos/companies/reddit.svg b/public/logos/companies/reddit.svg
similarity index 100%
rename from static/logos/companies/reddit.svg
rename to public/logos/companies/reddit.svg
diff --git a/static/logos/companies/steam.svg b/public/logos/companies/steam.svg
similarity index 100%
rename from static/logos/companies/steam.svg
rename to public/logos/companies/steam.svg
diff --git a/static/logos/companies/twitch.svg b/public/logos/companies/twitch.svg
similarity index 100%
rename from static/logos/companies/twitch.svg
rename to public/logos/companies/twitch.svg
diff --git a/static/logos/companies/twitter.svg b/public/logos/companies/twitter.svg
similarity index 100%
rename from static/logos/companies/twitter.svg
rename to public/logos/companies/twitter.svg
diff --git a/static/logos/companies/wikipedia.svg b/public/logos/companies/wikipedia.svg
similarity index 100%
rename from static/logos/companies/wikipedia.svg
rename to public/logos/companies/wikipedia.svg
diff --git a/static/logos/companies/youtube.svg b/public/logos/companies/youtube.svg
similarity index 100%
rename from static/logos/companies/youtube.svg
rename to public/logos/companies/youtube.svg
diff --git a/static/logos/news-sources/rps.svg b/public/logos/news-sources/rps.svg
similarity index 100%
rename from static/logos/news-sources/rps.svg
rename to public/logos/news-sources/rps.svg
diff --git a/static/logos/platforms-new/3do.png b/public/logos/platforms-new/3do.png
similarity index 100%
rename from static/logos/platforms-new/3do.png
rename to public/logos/platforms-new/3do.png
diff --git a/static/logos/platforms-new/action-max.png b/public/logos/platforms-new/action-max.png
similarity index 100%
rename from static/logos/platforms-new/action-max.png
rename to public/logos/platforms-new/action-max.png
diff --git a/static/logos/platforms-new/amiga-cd-32.png b/public/logos/platforms-new/amiga-cd-32.png
similarity index 100%
rename from static/logos/platforms-new/amiga-cd-32.png
rename to public/logos/platforms-new/amiga-cd-32.png
diff --git a/static/logos/platforms-new/arcadia-2001.png b/public/logos/platforms-new/arcadia-2001.png
similarity index 100%
rename from static/logos/platforms-new/arcadia-2001.png
rename to public/logos/platforms-new/arcadia-2001.png
diff --git a/static/logos/platforms-new/astrocade.png b/public/logos/platforms-new/astrocade.png
similarity index 100%
rename from static/logos/platforms-new/astrocade.png
rename to public/logos/platforms-new/astrocade.png
diff --git a/static/logos/platforms-new/atari-2600.png b/public/logos/platforms-new/atari-2600.png
similarity index 100%
rename from static/logos/platforms-new/atari-2600.png
rename to public/logos/platforms-new/atari-2600.png
diff --git a/static/logos/platforms-new/atari-5200.png b/public/logos/platforms-new/atari-5200.png
similarity index 100%
rename from static/logos/platforms-new/atari-5200.png
rename to public/logos/platforms-new/atari-5200.png
diff --git a/static/logos/platforms-new/atari-7800.png b/public/logos/platforms-new/atari-7800.png
similarity index 100%
rename from static/logos/platforms-new/atari-7800.png
rename to public/logos/platforms-new/atari-7800.png
diff --git a/static/logos/platforms-new/atari-xe.png b/public/logos/platforms-new/atari-xe.png
similarity index 100%
rename from static/logos/platforms-new/atari-xe.png
rename to public/logos/platforms-new/atari-xe.png
diff --git a/static/logos/platforms-new/beena.png b/public/logos/platforms-new/beena.png
similarity index 100%
rename from static/logos/platforms-new/beena.png
rename to public/logos/platforms-new/beena.png
diff --git a/static/logos/platforms-new/cassette-vision.png b/public/logos/platforms-new/cassette-vision.png
similarity index 100%
rename from static/logos/platforms-new/cassette-vision.png
rename to public/logos/platforms-new/cassette-vision.png
diff --git a/static/logos/platforms-new/cd-i.png b/public/logos/platforms-new/cd-i.png
similarity index 100%
rename from static/logos/platforms-new/cd-i.png
rename to public/logos/platforms-new/cd-i.png
diff --git a/static/logos/platforms-new/channel-f.png b/public/logos/platforms-new/channel-f.png
similarity index 100%
rename from static/logos/platforms-new/channel-f.png
rename to public/logos/platforms-new/channel-f.png
diff --git a/static/logos/platforms-new/coleco-vision.png b/public/logos/platforms-new/coleco-vision.png
similarity index 100%
rename from static/logos/platforms-new/coleco-vision.png
rename to public/logos/platforms-new/coleco-vision.png
diff --git a/static/logos/platforms-new/commodore-cdtv.png b/public/logos/platforms-new/commodore-cdtv.png
similarity index 100%
rename from static/logos/platforms-new/commodore-cdtv.png
rename to public/logos/platforms-new/commodore-cdtv.png
diff --git a/static/logos/platforms-new/commodore64.png b/public/logos/platforms-new/commodore64.png
similarity index 100%
rename from static/logos/platforms-new/commodore64.png
rename to public/logos/platforms-new/commodore64.png
diff --git a/static/logos/platforms-new/consoles-1.jpg b/public/logos/platforms-new/consoles-1.jpg
similarity index 100%
rename from static/logos/platforms-new/consoles-1.jpg
rename to public/logos/platforms-new/consoles-1.jpg
diff --git a/static/logos/platforms-new/cps-changer.png b/public/logos/platforms-new/cps-changer.png
similarity index 100%
rename from static/logos/platforms-new/cps-changer.png
rename to public/logos/platforms-new/cps-changer.png
diff --git a/static/logos/platforms-new/creativision.png b/public/logos/platforms-new/creativision.png
similarity index 100%
rename from static/logos/platforms-new/creativision.png
rename to public/logos/platforms-new/creativision.png
diff --git a/static/logos/platforms-new/dreamcast.png b/public/logos/platforms-new/dreamcast.png
similarity index 100%
rename from static/logos/platforms-new/dreamcast.png
rename to public/logos/platforms-new/dreamcast.png
diff --git a/static/logos/platforms-new/family-computer.png b/public/logos/platforms-new/family-computer.png
similarity index 100%
rename from static/logos/platforms-new/family-computer.png
rename to public/logos/platforms-new/family-computer.png
diff --git a/static/logos/platforms-new/fm-towns-marty.png b/public/logos/platforms-new/fm-towns-marty.png
similarity index 100%
rename from static/logos/platforms-new/fm-towns-marty.png
rename to public/logos/platforms-new/fm-towns-marty.png
diff --git a/static/logos/platforms-new/game-wave.png b/public/logos/platforms-new/game-wave.png
similarity index 100%
rename from static/logos/platforms-new/game-wave.png
rename to public/logos/platforms-new/game-wave.png
diff --git a/static/logos/platforms-new/gamecube.png b/public/logos/platforms-new/gamecube.png
similarity index 100%
rename from static/logos/platforms-new/gamecube.png
rename to public/logos/platforms-new/gamecube.png
diff --git a/static/logos/platforms-new/genesis-32x.png b/public/logos/platforms-new/genesis-32x.png
similarity index 100%
rename from static/logos/platforms-new/genesis-32x.png
rename to public/logos/platforms-new/genesis-32x.png
diff --git a/static/logos/platforms-new/genesis.png b/public/logos/platforms-new/genesis.png
similarity index 100%
rename from static/logos/platforms-new/genesis.png
rename to public/logos/platforms-new/genesis.png
diff --git a/static/logos/platforms-new/gx4000.png b/public/logos/platforms-new/gx4000.png
similarity index 100%
rename from static/logos/platforms-new/gx4000.png
rename to public/logos/platforms-new/gx4000.png
diff --git a/static/logos/platforms-new/halcyon.png b/public/logos/platforms-new/halcyon.png
similarity index 100%
rename from static/logos/platforms-new/halcyon.png
rename to public/logos/platforms-new/halcyon.png
diff --git a/static/logos/platforms-new/hyper-scan.png b/public/logos/platforms-new/hyper-scan.png
similarity index 100%
rename from static/logos/platforms-new/hyper-scan.png
rename to public/logos/platforms-new/hyper-scan.png
diff --git a/static/logos/platforms-new/imagination-machine.png b/public/logos/platforms-new/imagination-machine.png
similarity index 100%
rename from static/logos/platforms-new/imagination-machine.png
rename to public/logos/platforms-new/imagination-machine.png
diff --git a/static/logos/platforms-new/intellivision.png b/public/logos/platforms-new/intellivision.png
similarity index 100%
rename from static/logos/platforms-new/intellivision.png
rename to public/logos/platforms-new/intellivision.png
diff --git a/static/logos/platforms-new/interactive-vision.png b/public/logos/platforms-new/interactive-vision.png
similarity index 100%
rename from static/logos/platforms-new/interactive-vision.png
rename to public/logos/platforms-new/interactive-vision.png
diff --git a/static/logos/platforms-new/ique.png b/public/logos/platforms-new/ique.png
similarity index 100%
rename from static/logos/platforms-new/ique.png
rename to public/logos/platforms-new/ique.png
diff --git a/static/logos/platforms-new/jaguar-cd.png b/public/logos/platforms-new/jaguar-cd.png
similarity index 100%
rename from static/logos/platforms-new/jaguar-cd.png
rename to public/logos/platforms-new/jaguar-cd.png
diff --git a/static/logos/platforms-new/jaguar.png b/public/logos/platforms-new/jaguar.png
similarity index 100%
rename from static/logos/platforms-new/jaguar.png
rename to public/logos/platforms-new/jaguar.png
diff --git a/static/logos/platforms-new/konix.png b/public/logos/platforms-new/konix.png
similarity index 100%
rename from static/logos/platforms-new/konix.png
rename to public/logos/platforms-new/konix.png
diff --git a/static/logos/platforms-new/laser-active.png b/public/logos/platforms-new/laser-active.png
similarity index 100%
rename from static/logos/platforms-new/laser-active.png
rename to public/logos/platforms-new/laser-active.png
diff --git a/static/logos/platforms-new/leisure-vision.png b/public/logos/platforms-new/leisure-vision.png
similarity index 100%
rename from static/logos/platforms-new/leisure-vision.png
rename to public/logos/platforms-new/leisure-vision.png
diff --git a/static/logos/platforms-new/loopy.png b/public/logos/platforms-new/loopy.png
similarity index 100%
rename from static/logos/platforms-new/loopy.png
rename to public/logos/platforms-new/loopy.png
diff --git a/static/logos/platforms-new/mac.png b/public/logos/platforms-new/mac.png
similarity index 100%
rename from static/logos/platforms-new/mac.png
rename to public/logos/platforms-new/mac.png
diff --git a/static/logos/platforms-new/mark-iii.png b/public/logos/platforms-new/mark-iii.png
similarity index 100%
rename from static/logos/platforms-new/mark-iii.png
rename to public/logos/platforms-new/mark-iii.png
diff --git a/static/logos/platforms-new/mega-cd-ii.png b/public/logos/platforms-new/mega-cd-ii.png
similarity index 100%
rename from static/logos/platforms-new/mega-cd-ii.png
rename to public/logos/platforms-new/mega-cd-ii.png
diff --git a/static/logos/platforms-new/mega-cd.png b/public/logos/platforms-new/mega-cd.png
similarity index 100%
rename from static/logos/platforms-new/mega-cd.png
rename to public/logos/platforms-new/mega-cd.png
diff --git a/static/logos/platforms-new/mega-drive.png b/public/logos/platforms-new/mega-drive.png
similarity index 100%
rename from static/logos/platforms-new/mega-drive.png
rename to public/logos/platforms-new/mega-drive.png
diff --git a/static/logos/platforms-new/mega-ld.png b/public/logos/platforms-new/mega-ld.png
similarity index 100%
rename from static/logos/platforms-new/mega-ld.png
rename to public/logos/platforms-new/mega-ld.png
diff --git a/static/logos/platforms-new/mp1000.png b/public/logos/platforms-new/mp1000.png
similarity index 100%
rename from static/logos/platforms-new/mp1000.png
rename to public/logos/platforms-new/mp1000.png
diff --git a/static/logos/platforms-new/my-vision.png b/public/logos/platforms-new/my-vision.png
similarity index 100%
rename from static/logos/platforms-new/my-vision.png
rename to public/logos/platforms-new/my-vision.png
diff --git a/static/logos/platforms-new/neo-geo-cd.png b/public/logos/platforms-new/neo-geo-cd.png
similarity index 100%
rename from static/logos/platforms-new/neo-geo-cd.png
rename to public/logos/platforms-new/neo-geo-cd.png
diff --git a/static/logos/platforms-new/neo-geo.png b/public/logos/platforms-new/neo-geo.png
similarity index 100%
rename from static/logos/platforms-new/neo-geo.png
rename to public/logos/platforms-new/neo-geo.png
diff --git a/static/logos/platforms-new/nes.png b/public/logos/platforms-new/nes.png
similarity index 100%
rename from static/logos/platforms-new/nes.png
rename to public/logos/platforms-new/nes.png
diff --git a/static/logos/platforms-new/nintendo-64-dd.png b/public/logos/platforms-new/nintendo-64-dd.png
similarity index 100%
rename from static/logos/platforms-new/nintendo-64-dd.png
rename to public/logos/platforms-new/nintendo-64-dd.png
diff --git a/static/logos/platforms-new/nintendo-64.png b/public/logos/platforms-new/nintendo-64.png
similarity index 100%
rename from static/logos/platforms-new/nintendo-64.png
rename to public/logos/platforms-new/nintendo-64.png
diff --git a/static/logos/platforms-new/nsw.png b/public/logos/platforms-new/nsw.png
similarity index 100%
rename from static/logos/platforms-new/nsw.png
rename to public/logos/platforms-new/nsw.png
diff --git a/static/logos/platforms-new/nuon.png b/public/logos/platforms-new/nuon.png
similarity index 100%
rename from static/logos/platforms-new/nuon.png
rename to public/logos/platforms-new/nuon.png
diff --git a/static/logos/platforms-new/odyssey2.png b/public/logos/platforms-new/odyssey2.png
similarity index 100%
rename from static/logos/platforms-new/odyssey2.png
rename to public/logos/platforms-new/odyssey2.png
diff --git a/static/logos/platforms-new/pc-engine.png b/public/logos/platforms-new/pc-engine.png
similarity index 100%
rename from static/logos/platforms-new/pc-engine.png
rename to public/logos/platforms-new/pc-engine.png
diff --git a/static/logos/platforms-new/pc-fx.png b/public/logos/platforms-new/pc-fx.png
similarity index 100%
rename from static/logos/platforms-new/pc-fx.png
rename to public/logos/platforms-new/pc-fx.png
diff --git a/static/logos/platforms-new/picno.png b/public/logos/platforms-new/picno.png
similarity index 100%
rename from static/logos/platforms-new/picno.png
rename to public/logos/platforms-new/picno.png
diff --git a/static/logos/platforms-new/pico.png b/public/logos/platforms-new/pico.png
similarity index 100%
rename from static/logos/platforms-new/pico.png
rename to public/logos/platforms-new/pico.png
diff --git a/static/logos/platforms-new/pippin.png b/public/logos/platforms-new/pippin.png
similarity index 100%
rename from static/logos/platforms-new/pippin.png
rename to public/logos/platforms-new/pippin.png
diff --git a/static/logos/platforms-new/playdia.png b/public/logos/platforms-new/playdia.png
similarity index 100%
rename from static/logos/platforms-new/playdia.png
rename to public/logos/platforms-new/playdia.png
diff --git a/static/logos/platforms-new/playstation.png b/public/logos/platforms-new/playstation.png
similarity index 100%
rename from static/logos/platforms-new/playstation.png
rename to public/logos/platforms-new/playstation.png
diff --git a/static/logos/platforms-new/ps-2.png b/public/logos/platforms-new/ps-2.png
similarity index 100%
rename from static/logos/platforms-new/ps-2.png
rename to public/logos/platforms-new/ps-2.png
diff --git a/static/logos/platforms-new/ps3.png b/public/logos/platforms-new/ps3.png
similarity index 100%
rename from static/logos/platforms-new/ps3.png
rename to public/logos/platforms-new/ps3.png
diff --git a/static/logos/platforms-new/ps4.png b/public/logos/platforms-new/ps4.png
similarity index 100%
rename from static/logos/platforms-new/ps4.png
rename to public/logos/platforms-new/ps4.png
diff --git a/static/logos/platforms-new/ps5.png b/public/logos/platforms-new/ps5.png
similarity index 100%
rename from static/logos/platforms-new/ps5.png
rename to public/logos/platforms-new/ps5.png
diff --git a/static/logos/platforms-new/pv-1000.png b/public/logos/platforms-new/pv-1000.png
similarity index 100%
rename from static/logos/platforms-new/pv-1000.png
rename to public/logos/platforms-new/pv-1000.png
diff --git a/static/logos/platforms-new/rca-studio-ii.png b/public/logos/platforms-new/rca-studio-ii.png
similarity index 100%
rename from static/logos/platforms-new/rca-studio-ii.png
rename to public/logos/platforms-new/rca-studio-ii.png
diff --git a/static/logos/platforms-new/satellaview.png b/public/logos/platforms-new/satellaview.png
similarity index 100%
rename from static/logos/platforms-new/satellaview.png
rename to public/logos/platforms-new/satellaview.png
diff --git a/static/logos/platforms-new/sega-cd.png b/public/logos/platforms-new/sega-cd.png
similarity index 100%
rename from static/logos/platforms-new/sega-cd.png
rename to public/logos/platforms-new/sega-cd.png
diff --git a/static/logos/platforms-new/sega-master-system.png b/public/logos/platforms-new/sega-master-system.png
similarity index 100%
rename from static/logos/platforms-new/sega-master-system.png
rename to public/logos/platforms-new/sega-master-system.png
diff --git a/static/logos/platforms-new/sega-saturn.png b/public/logos/platforms-new/sega-saturn.png
similarity index 100%
rename from static/logos/platforms-new/sega-saturn.png
rename to public/logos/platforms-new/sega-saturn.png
diff --git a/static/logos/platforms-new/sg-1000.png b/public/logos/platforms-new/sg-1000.png
similarity index 100%
rename from static/logos/platforms-new/sg-1000.png
rename to public/logos/platforms-new/sg-1000.png
diff --git a/static/logos/platforms-new/socrates.png b/public/logos/platforms-new/socrates.png
similarity index 100%
rename from static/logos/platforms-new/socrates.png
rename to public/logos/platforms-new/socrates.png
diff --git a/static/logos/platforms-new/stadia.png b/public/logos/platforms-new/stadia.png
similarity index 100%
rename from static/logos/platforms-new/stadia.png
rename to public/logos/platforms-new/stadia.png
diff --git a/static/logos/platforms-new/super-acan.png b/public/logos/platforms-new/super-acan.png
similarity index 100%
rename from static/logos/platforms-new/super-acan.png
rename to public/logos/platforms-new/super-acan.png
diff --git a/static/logos/platforms-new/super-cassette-vision.png b/public/logos/platforms-new/super-cassette-vision.png
similarity index 100%
rename from static/logos/platforms-new/super-cassette-vision.png
rename to public/logos/platforms-new/super-cassette-vision.png
diff --git a/static/logos/platforms-new/super-cd-rom.png b/public/logos/platforms-new/super-cd-rom.png
similarity index 100%
rename from static/logos/platforms-new/super-cd-rom.png
rename to public/logos/platforms-new/super-cd-rom.png
diff --git a/static/logos/platforms-new/super-famicom.png b/public/logos/platforms-new/super-famicom.png
similarity index 100%
rename from static/logos/platforms-new/super-famicom.png
rename to public/logos/platforms-new/super-famicom.png
diff --git a/static/logos/platforms-new/super-grafx.png b/public/logos/platforms-new/super-grafx.png
similarity index 100%
rename from static/logos/platforms-new/super-grafx.png
rename to public/logos/platforms-new/super-grafx.png
diff --git a/static/logos/platforms-new/super-nintendo.png b/public/logos/platforms-new/super-nintendo.png
similarity index 100%
rename from static/logos/platforms-new/super-nintendo.png
rename to public/logos/platforms-new/super-nintendo.png
diff --git a/static/logos/platforms-new/super-vision-8000.png b/public/logos/platforms-new/super-vision-8000.png
similarity index 100%
rename from static/logos/platforms-new/super-vision-8000.png
rename to public/logos/platforms-new/super-vision-8000.png
diff --git a/static/logos/platforms-new/turbo-grafx-16.png b/public/logos/platforms-new/turbo-grafx-16.png
similarity index 100%
rename from static/logos/platforms-new/turbo-grafx-16.png
rename to public/logos/platforms-new/turbo-grafx-16.png
diff --git a/static/logos/platforms-new/tutor.png b/public/logos/platforms-new/tutor.png
similarity index 100%
rename from static/logos/platforms-new/tutor.png
rename to public/logos/platforms-new/tutor.png
diff --git a/static/logos/platforms-new/tv-boy.png b/public/logos/platforms-new/tv-boy.png
similarity index 100%
rename from static/logos/platforms-new/tv-boy.png
rename to public/logos/platforms-new/tv-boy.png
diff --git a/static/logos/platforms-new/ultravision.png b/public/logos/platforms-new/ultravision.png
similarity index 100%
rename from static/logos/platforms-new/ultravision.png
rename to public/logos/platforms-new/ultravision.png
diff --git a/static/logos/platforms-new/v-flash.png b/public/logos/platforms-new/v-flash.png
similarity index 100%
rename from static/logos/platforms-new/v-flash.png
rename to public/logos/platforms-new/v-flash.png
diff --git a/static/logos/platforms-new/v-smile.png b/public/logos/platforms-new/v-smile.png
similarity index 100%
rename from static/logos/platforms-new/v-smile.png
rename to public/logos/platforms-new/v-smile.png
diff --git a/static/logos/platforms-new/vc4000.png b/public/logos/platforms-new/vc4000.png
similarity index 100%
rename from static/logos/platforms-new/vc4000.png
rename to public/logos/platforms-new/vc4000.png
diff --git a/static/logos/platforms-new/vectrex.png b/public/logos/platforms-new/vectrex.png
similarity index 100%
rename from static/logos/platforms-new/vectrex.png
rename to public/logos/platforms-new/vectrex.png
diff --git a/static/logos/platforms-new/video-art.png b/public/logos/platforms-new/video-art.png
similarity index 100%
rename from static/logos/platforms-new/video-art.png
rename to public/logos/platforms-new/video-art.png
diff --git a/static/logos/platforms-new/video-challenger.png b/public/logos/platforms-new/video-challenger.png
similarity index 100%
rename from static/logos/platforms-new/video-challenger.png
rename to public/logos/platforms-new/video-challenger.png
diff --git a/static/logos/platforms-new/video-driver.png b/public/logos/platforms-new/video-driver.png
similarity index 100%
rename from static/logos/platforms-new/video-driver.png
rename to public/logos/platforms-new/video-driver.png
diff --git a/static/logos/platforms-new/videopac.png b/public/logos/platforms-new/videopac.png
similarity index 100%
rename from static/logos/platforms-new/videopac.png
rename to public/logos/platforms-new/videopac.png
diff --git a/static/logos/platforms-new/vis.png b/public/logos/platforms-new/vis.png
similarity index 100%
rename from static/logos/platforms-new/vis.png
rename to public/logos/platforms-new/vis.png
diff --git a/static/logos/platforms-new/wii-u.png b/public/logos/platforms-new/wii-u.png
similarity index 100%
rename from static/logos/platforms-new/wii-u.png
rename to public/logos/platforms-new/wii-u.png
diff --git a/static/logos/platforms-new/wii.png b/public/logos/platforms-new/wii.png
similarity index 100%
rename from static/logos/platforms-new/wii.png
rename to public/logos/platforms-new/wii.png
diff --git a/static/logos/platforms-new/windows.png b/public/logos/platforms-new/windows.png
similarity index 100%
rename from static/logos/platforms-new/windows.png
rename to public/logos/platforms-new/windows.png
diff --git a/static/logos/platforms-new/xavix.png b/public/logos/platforms-new/xavix.png
similarity index 100%
rename from static/logos/platforms-new/xavix.png
rename to public/logos/platforms-new/xavix.png
diff --git a/static/logos/platforms-new/xbox-360.png b/public/logos/platforms-new/xbox-360.png
similarity index 100%
rename from static/logos/platforms-new/xbox-360.png
rename to public/logos/platforms-new/xbox-360.png
diff --git a/static/logos/platforms-new/xbox-one.png b/public/logos/platforms-new/xbox-one.png
similarity index 100%
rename from static/logos/platforms-new/xbox-one.png
rename to public/logos/platforms-new/xbox-one.png
diff --git a/static/logos/platforms-new/xbox.png b/public/logos/platforms-new/xbox.png
similarity index 100%
rename from static/logos/platforms-new/xbox.png
rename to public/logos/platforms-new/xbox.png
diff --git a/static/logos/platforms-new/xboxsx.png b/public/logos/platforms-new/xboxsx.png
similarity index 100%
rename from static/logos/platforms-new/xboxsx.png
rename to public/logos/platforms-new/xboxsx.png
diff --git a/static/logos/platforms-new/zeebo.png b/public/logos/platforms-new/zeebo.png
similarity index 100%
rename from static/logos/platforms-new/zeebo.png
rename to public/logos/platforms-new/zeebo.png
diff --git a/static/logos/platforms-new/zemina.png b/public/logos/platforms-new/zemina.png
similarity index 100%
rename from static/logos/platforms-new/zemina.png
rename to public/logos/platforms-new/zemina.png
diff --git a/static/logos/platforms/3do-alt.svg b/public/logos/platforms/3do-alt.svg
similarity index 100%
rename from static/logos/platforms/3do-alt.svg
rename to public/logos/platforms/3do-alt.svg
diff --git a/static/logos/platforms/3do.svg b/public/logos/platforms/3do.svg
similarity index 100%
rename from static/logos/platforms/3do.svg
rename to public/logos/platforms/3do.svg
diff --git a/static/logos/platforms/3ds.svg b/public/logos/platforms/3ds.svg
similarity index 100%
rename from static/logos/platforms/3ds.svg
rename to public/logos/platforms/3ds.svg
diff --git a/static/logos/platforms/acpc.svg b/public/logos/platforms/acpc.svg
similarity index 100%
rename from static/logos/platforms/acpc.svg
rename to public/logos/platforms/acpc.svg
diff --git a/static/logos/platforms/amazon-fire-tv.png b/public/logos/platforms/amazon-fire-tv.png
similarity index 100%
rename from static/logos/platforms/amazon-fire-tv.png
rename to public/logos/platforms/amazon-fire-tv.png
diff --git a/static/logos/platforms/amiga-cd32.svg b/public/logos/platforms/amiga-cd32.svg
similarity index 100%
rename from static/logos/platforms/amiga-cd32.svg
rename to public/logos/platforms/amiga-cd32.svg
diff --git a/static/logos/platforms/amiga.svg b/public/logos/platforms/amiga.svg
similarity index 100%
rename from static/logos/platforms/amiga.svg
rename to public/logos/platforms/amiga.svg
diff --git a/static/logos/platforms/android.svg b/public/logos/platforms/android.svg
similarity index 100%
rename from static/logos/platforms/android.svg
rename to public/logos/platforms/android.svg
diff --git a/static/logos/platforms/appleii.svg b/public/logos/platforms/appleii.svg
similarity index 100%
rename from static/logos/platforms/appleii.svg
rename to public/logos/platforms/appleii.svg
diff --git a/static/logos/platforms/atari-st.svg b/public/logos/platforms/atari-st.svg
similarity index 100%
rename from static/logos/platforms/atari-st.svg
rename to public/logos/platforms/atari-st.svg
diff --git a/static/logos/platforms/atari2600.svg b/public/logos/platforms/atari2600.svg
similarity index 100%
rename from static/logos/platforms/atari2600.svg
rename to public/logos/platforms/atari2600.svg
diff --git a/static/logos/platforms/atari5200.svg b/public/logos/platforms/atari5200.svg
similarity index 100%
rename from static/logos/platforms/atari5200.svg
rename to public/logos/platforms/atari5200.svg
diff --git a/static/logos/platforms/atari7800.svg b/public/logos/platforms/atari7800.svg
similarity index 100%
rename from static/logos/platforms/atari7800.svg
rename to public/logos/platforms/atari7800.svg
diff --git a/static/logos/platforms/atari8bit.svg b/public/logos/platforms/atari8bit.svg
similarity index 100%
rename from static/logos/platforms/atari8bit.svg
rename to public/logos/platforms/atari8bit.svg
diff --git a/static/logos/platforms/atary-5200.svg b/public/logos/platforms/atary-5200.svg
similarity index 100%
rename from static/logos/platforms/atary-5200.svg
rename to public/logos/platforms/atary-5200.svg
diff --git a/static/logos/platforms/c-plus-4.svg b/public/logos/platforms/c-plus-4.svg
similarity index 100%
rename from static/logos/platforms/c-plus-4.svg
rename to public/logos/platforms/c-plus-4.svg
diff --git a/static/logos/platforms/c16.svg b/public/logos/platforms/c16.svg
similarity index 100%
rename from static/logos/platforms/c16.svg
rename to public/logos/platforms/c16.svg
diff --git a/static/logos/platforms/c64.svg b/public/logos/platforms/c64.svg
similarity index 100%
rename from static/logos/platforms/c64.svg
rename to public/logos/platforms/c64.svg
diff --git a/static/logos/platforms/casio-loopy.png b/public/logos/platforms/casio-loopy.png
similarity index 100%
rename from static/logos/platforms/casio-loopy.png
rename to public/logos/platforms/casio-loopy.png
diff --git a/static/logos/platforms/colecovision.svg b/public/logos/platforms/colecovision.svg
similarity index 100%
rename from static/logos/platforms/colecovision.svg
rename to public/logos/platforms/colecovision.svg
diff --git a/static/logos/platforms/commodore.svg b/public/logos/platforms/commodore.svg
similarity index 100%
rename from static/logos/platforms/commodore.svg
rename to public/logos/platforms/commodore.svg
diff --git a/static/logos/platforms/cpet.svg b/public/logos/platforms/cpet.svg
similarity index 100%
rename from static/logos/platforms/cpet.svg
rename to public/logos/platforms/cpet.svg
diff --git a/static/logos/platforms/daydream.png b/public/logos/platforms/daydream.png
similarity index 100%
rename from static/logos/platforms/daydream.png
rename to public/logos/platforms/daydream.png
diff --git a/static/logos/platforms/dc.svg b/public/logos/platforms/dc.svg
similarity index 100%
rename from static/logos/platforms/dc.svg
rename to public/logos/platforms/dc.svg
diff --git a/static/logos/platforms/dos.svg b/public/logos/platforms/dos.svg
similarity index 100%
rename from static/logos/platforms/dos.svg
rename to public/logos/platforms/dos.svg
diff --git a/static/logos/platforms/evercade.svg b/public/logos/platforms/evercade.svg
similarity index 100%
rename from static/logos/platforms/evercade.svg
rename to public/logos/platforms/evercade.svg
diff --git a/static/logos/platforms/famicom.svg b/public/logos/platforms/famicom.svg
similarity index 100%
rename from static/logos/platforms/famicom.svg
rename to public/logos/platforms/famicom.svg
diff --git a/static/logos/platforms/fds.png b/public/logos/platforms/fds.png
similarity index 100%
rename from static/logos/platforms/fds.png
rename to public/logos/platforms/fds.png
diff --git a/static/logos/platforms/game-and-watch.svg b/public/logos/platforms/game-and-watch.svg
similarity index 100%
rename from static/logos/platforms/game-and-watch.svg
rename to public/logos/platforms/game-and-watch.svg
diff --git a/static/logos/platforms/gamegear.svg b/public/logos/platforms/gamegear.svg
similarity index 100%
rename from static/logos/platforms/gamegear.svg
rename to public/logos/platforms/gamegear.svg
diff --git a/static/logos/platforms/gb.svg b/public/logos/platforms/gb.svg
similarity index 100%
rename from static/logos/platforms/gb.svg
rename to public/logos/platforms/gb.svg
diff --git a/static/logos/platforms/gba.svg b/public/logos/platforms/gba.svg
similarity index 100%
rename from static/logos/platforms/gba.svg
rename to public/logos/platforms/gba.svg
diff --git a/static/logos/platforms/gbc.svg b/public/logos/platforms/gbc.svg
similarity index 100%
rename from static/logos/platforms/gbc.svg
rename to public/logos/platforms/gbc.svg
diff --git a/static/logos/platforms/intellivision.svg b/public/logos/platforms/intellivision.svg
similarity index 100%
rename from static/logos/platforms/intellivision.svg
rename to public/logos/platforms/intellivision.svg
diff --git a/static/logos/platforms/ios.svg b/public/logos/platforms/ios.svg
similarity index 100%
rename from static/logos/platforms/ios.svg
rename to public/logos/platforms/ios.svg
diff --git a/static/logos/platforms/jaguar.svg b/public/logos/platforms/jaguar.svg
similarity index 100%
rename from static/logos/platforms/jaguar.svg
rename to public/logos/platforms/jaguar.svg
diff --git a/static/logos/platforms/linux.svg b/public/logos/platforms/linux.svg
similarity index 100%
rename from static/logos/platforms/linux.svg
rename to public/logos/platforms/linux.svg
diff --git a/static/logos/platforms/lynx.svg b/public/logos/platforms/lynx.svg
similarity index 100%
rename from static/logos/platforms/lynx.svg
rename to public/logos/platforms/lynx.svg
diff --git a/static/logos/platforms/mac.svg b/public/logos/platforms/mac.svg
similarity index 100%
rename from static/logos/platforms/mac.svg
rename to public/logos/platforms/mac.svg
diff --git a/static/logos/platforms/msx.svg b/public/logos/platforms/msx.svg
similarity index 100%
rename from static/logos/platforms/msx.svg
rename to public/logos/platforms/msx.svg
diff --git a/static/logos/platforms/msx2.svg b/public/logos/platforms/msx2.svg
similarity index 100%
rename from static/logos/platforms/msx2.svg
rename to public/logos/platforms/msx2.svg
diff --git a/static/logos/platforms/n64.svg b/public/logos/platforms/n64.svg
similarity index 100%
rename from static/logos/platforms/n64.svg
rename to public/logos/platforms/n64.svg
diff --git a/static/logos/platforms/nds.svg b/public/logos/platforms/nds.svg
similarity index 100%
rename from static/logos/platforms/nds.svg
rename to public/logos/platforms/nds.svg
diff --git a/static/logos/platforms/neo-geo-cd.svg b/public/logos/platforms/neo-geo-cd.svg
similarity index 100%
rename from static/logos/platforms/neo-geo-cd.svg
rename to public/logos/platforms/neo-geo-cd.svg
diff --git a/static/logos/platforms/neo-geo-pocket-color.svg b/public/logos/platforms/neo-geo-pocket-color.svg
similarity index 100%
rename from static/logos/platforms/neo-geo-pocket-color.svg
rename to public/logos/platforms/neo-geo-pocket-color.svg
diff --git a/static/logos/platforms/neo-geo-pocket.svg b/public/logos/platforms/neo-geo-pocket.svg
similarity index 100%
rename from static/logos/platforms/neo-geo-pocket.svg
rename to public/logos/platforms/neo-geo-pocket.svg
diff --git a/static/logos/platforms/neogeoaes.svg b/public/logos/platforms/neogeoaes.svg
similarity index 100%
rename from static/logos/platforms/neogeoaes.svg
rename to public/logos/platforms/neogeoaes.svg
diff --git a/static/logos/platforms/neogeomvs.svg b/public/logos/platforms/neogeomvs.svg
similarity index 100%
rename from static/logos/platforms/neogeomvs.svg
rename to public/logos/platforms/neogeomvs.svg
diff --git a/static/logos/platforms/nes.svg b/public/logos/platforms/nes.svg
similarity index 100%
rename from static/logos/platforms/nes.svg
rename to public/logos/platforms/nes.svg
diff --git a/static/logos/platforms/new-nintendo-3ds.svg b/public/logos/platforms/new-nintendo-3ds.svg
similarity index 100%
rename from static/logos/platforms/new-nintendo-3ds.svg
rename to public/logos/platforms/new-nintendo-3ds.svg
diff --git a/static/logos/platforms/ngage.svg b/public/logos/platforms/ngage.svg
similarity index 100%
rename from static/logos/platforms/ngage.svg
rename to public/logos/platforms/ngage.svg
diff --git a/static/logos/platforms/ngc.svg b/public/logos/platforms/ngc.svg
similarity index 100%
rename from static/logos/platforms/ngc.svg
rename to public/logos/platforms/ngc.svg
diff --git a/static/logos/platforms/nintendo-64.svg b/public/logos/platforms/nintendo-64.svg
similarity index 100%
rename from static/logos/platforms/nintendo-64.svg
rename to public/logos/platforms/nintendo-64.svg
diff --git a/static/logos/platforms/nintendo-dsi.svg b/public/logos/platforms/nintendo-dsi.svg
similarity index 100%
rename from static/logos/platforms/nintendo-dsi.svg
rename to public/logos/platforms/nintendo-dsi.svg
diff --git a/static/logos/platforms/nintendo-eshop.png b/public/logos/platforms/nintendo-eshop.png
similarity index 100%
rename from static/logos/platforms/nintendo-eshop.png
rename to public/logos/platforms/nintendo-eshop.png
diff --git a/static/logos/platforms/nintendo-switch-alt.svg b/public/logos/platforms/nintendo-switch-alt.svg
similarity index 100%
rename from static/logos/platforms/nintendo-switch-alt.svg
rename to public/logos/platforms/nintendo-switch-alt.svg
diff --git a/static/logos/platforms/oculus-vr.svg b/public/logos/platforms/oculus-vr.svg
similarity index 100%
rename from static/logos/platforms/oculus-vr.svg
rename to public/logos/platforms/oculus-vr.svg
diff --git a/static/logos/platforms/odyssey--1.svg b/public/logos/platforms/odyssey--1.svg
similarity index 100%
rename from static/logos/platforms/odyssey--1.svg
rename to public/logos/platforms/odyssey--1.svg
diff --git a/static/logos/platforms/ouya.svg b/public/logos/platforms/ouya.svg
similarity index 100%
rename from static/logos/platforms/ouya.svg
rename to public/logos/platforms/ouya.svg
diff --git a/static/logos/platforms/pc-engine.svg b/public/logos/platforms/pc-engine.svg
similarity index 100%
rename from static/logos/platforms/pc-engine.svg
rename to public/logos/platforms/pc-engine.svg
diff --git a/static/logos/platforms/philips-cd-i.svg b/public/logos/platforms/philips-cd-i.svg
similarity index 100%
rename from static/logos/platforms/philips-cd-i.svg
rename to public/logos/platforms/philips-cd-i.svg
diff --git a/static/logos/platforms/playstation-5.svg b/public/logos/platforms/playstation-5.svg
similarity index 100%
rename from static/logos/platforms/playstation-5.svg
rename to public/logos/platforms/playstation-5.svg
diff --git a/static/logos/platforms/playstation-vr.png b/public/logos/platforms/playstation-vr.png
similarity index 100%
rename from static/logos/platforms/playstation-vr.png
rename to public/logos/platforms/playstation-vr.png
diff --git a/static/logos/platforms/pokemon-mini.svg b/public/logos/platforms/pokemon-mini.svg
similarity index 100%
rename from static/logos/platforms/pokemon-mini.svg
rename to public/logos/platforms/pokemon-mini.svg
diff --git a/static/logos/platforms/ps.svg b/public/logos/platforms/ps.svg
similarity index 100%
rename from static/logos/platforms/ps.svg
rename to public/logos/platforms/ps.svg
diff --git a/static/logos/platforms/ps2.svg b/public/logos/platforms/ps2.svg
similarity index 100%
rename from static/logos/platforms/ps2.svg
rename to public/logos/platforms/ps2.svg
diff --git a/static/logos/platforms/ps3.svg b/public/logos/platforms/ps3.svg
similarity index 100%
rename from static/logos/platforms/ps3.svg
rename to public/logos/platforms/ps3.svg
diff --git a/static/logos/platforms/ps4--1.svg b/public/logos/platforms/ps4--1.svg
similarity index 100%
rename from static/logos/platforms/ps4--1.svg
rename to public/logos/platforms/ps4--1.svg
diff --git a/static/logos/platforms/ps5.svg b/public/logos/platforms/ps5.svg
similarity index 100%
rename from static/logos/platforms/ps5.svg
rename to public/logos/platforms/ps5.svg
diff --git a/static/logos/platforms/psn.png b/public/logos/platforms/psn.png
similarity index 100%
rename from static/logos/platforms/psn.png
rename to public/logos/platforms/psn.png
diff --git a/static/logos/platforms/psp.svg b/public/logos/platforms/psp.svg
similarity index 100%
rename from static/logos/platforms/psp.svg
rename to public/logos/platforms/psp.svg
diff --git a/static/logos/platforms/psvita.svg b/public/logos/platforms/psvita.svg
similarity index 100%
rename from static/logos/platforms/psvita.svg
rename to public/logos/platforms/psvita.svg
diff --git a/static/logos/platforms/satellaview.svg b/public/logos/platforms/satellaview.svg
similarity index 100%
rename from static/logos/platforms/satellaview.svg
rename to public/logos/platforms/satellaview.svg
diff --git a/static/logos/platforms/saturn.svg b/public/logos/platforms/saturn.svg
similarity index 100%
rename from static/logos/platforms/saturn.svg
rename to public/logos/platforms/saturn.svg
diff --git a/static/logos/platforms/sega-genesis.svg b/public/logos/platforms/sega-genesis.svg
similarity index 100%
rename from static/logos/platforms/sega-genesis.svg
rename to public/logos/platforms/sega-genesis.svg
diff --git a/static/logos/platforms/sega32.svg b/public/logos/platforms/sega32.svg
similarity index 100%
rename from static/logos/platforms/sega32.svg
rename to public/logos/platforms/sega32.svg
diff --git a/static/logos/platforms/segacd.svg b/public/logos/platforms/segacd.svg
similarity index 100%
rename from static/logos/platforms/segacd.svg
rename to public/logos/platforms/segacd.svg
diff --git a/static/logos/platforms/series-x.svg b/public/logos/platforms/series-x.svg
similarity index 100%
rename from static/logos/platforms/series-x.svg
rename to public/logos/platforms/series-x.svg
diff --git a/static/logos/platforms/sfam.svg b/public/logos/platforms/sfam.svg
similarity index 100%
rename from static/logos/platforms/sfam.svg
rename to public/logos/platforms/sfam.svg
diff --git a/static/logos/platforms/sg1000.svg b/public/logos/platforms/sg1000.svg
similarity index 100%
rename from static/logos/platforms/sg1000.svg
rename to public/logos/platforms/sg1000.svg
diff --git a/static/logos/platforms/smd.svg b/public/logos/platforms/smd.svg
similarity index 100%
rename from static/logos/platforms/smd.svg
rename to public/logos/platforms/smd.svg
diff --git a/static/logos/platforms/sms.svg b/public/logos/platforms/sms.svg
similarity index 100%
rename from static/logos/platforms/sms.svg
rename to public/logos/platforms/sms.svg
diff --git a/static/logos/platforms/snes--1.svg b/public/logos/platforms/snes--1.svg
similarity index 100%
rename from static/logos/platforms/snes--1.svg
rename to public/logos/platforms/snes--1.svg
diff --git a/static/logos/platforms/stadia.svg b/public/logos/platforms/stadia.svg
similarity index 100%
rename from static/logos/platforms/stadia.svg
rename to public/logos/platforms/stadia.svg
diff --git a/static/logos/platforms/steam--1.svg b/public/logos/platforms/steam--1.svg
similarity index 100%
rename from static/logos/platforms/steam--1.svg
rename to public/logos/platforms/steam--1.svg
diff --git a/static/logos/platforms/steam-vr.png b/public/logos/platforms/steam-vr.png
similarity index 100%
rename from static/logos/platforms/steam-vr.png
rename to public/logos/platforms/steam-vr.png
diff --git a/static/logos/platforms/supergrafx.svg b/public/logos/platforms/supergrafx.svg
similarity index 100%
rename from static/logos/platforms/supergrafx.svg
rename to public/logos/platforms/supergrafx.svg
diff --git a/static/logos/platforms/swancrystal.png b/public/logos/platforms/swancrystal.png
similarity index 100%
rename from static/logos/platforms/swancrystal.png
rename to public/logos/platforms/swancrystal.png
diff --git a/static/logos/platforms/switch.svg b/public/logos/platforms/switch.svg
similarity index 100%
rename from static/logos/platforms/switch.svg
rename to public/logos/platforms/switch.svg
diff --git a/static/logos/platforms/turbografx-16-slash-pc-engine-cd.png b/public/logos/platforms/turbografx-16-slash-pc-engine-cd.png
similarity index 100%
rename from static/logos/platforms/turbografx-16-slash-pc-engine-cd.png
rename to public/logos/platforms/turbografx-16-slash-pc-engine-cd.png
diff --git a/static/logos/platforms/turbografx16--1.svg b/public/logos/platforms/turbografx16--1.svg
similarity index 100%
rename from static/logos/platforms/turbografx16--1.svg
rename to public/logos/platforms/turbografx16--1.svg
diff --git a/static/logos/platforms/vc.png b/public/logos/platforms/vc.png
similarity index 100%
rename from static/logos/platforms/vc.png
rename to public/logos/platforms/vc.png
diff --git a/static/logos/platforms/vectrex.svg b/public/logos/platforms/vectrex.svg
similarity index 100%
rename from static/logos/platforms/vectrex.svg
rename to public/logos/platforms/vectrex.svg
diff --git a/static/logos/platforms/vic-20.svg b/public/logos/platforms/vic-20.svg
similarity index 100%
rename from static/logos/platforms/vic-20.svg
rename to public/logos/platforms/vic-20.svg
diff --git a/static/logos/platforms/virtualboy.svg b/public/logos/platforms/virtualboy.svg
similarity index 100%
rename from static/logos/platforms/virtualboy.svg
rename to public/logos/platforms/virtualboy.svg
diff --git a/static/logos/platforms/wii.svg b/public/logos/platforms/wii.svg
similarity index 100%
rename from static/logos/platforms/wii.svg
rename to public/logos/platforms/wii.svg
diff --git a/static/logos/platforms/wiiu.svg b/public/logos/platforms/wiiu.svg
similarity index 100%
rename from static/logos/platforms/wiiu.svg
rename to public/logos/platforms/wiiu.svg
diff --git a/static/logos/platforms/wiiware.svg b/public/logos/platforms/wiiware.svg
similarity index 100%
rename from static/logos/platforms/wiiware.svg
rename to public/logos/platforms/wiiware.svg
diff --git a/static/logos/platforms/win.svg b/public/logos/platforms/win.svg
similarity index 100%
rename from static/logos/platforms/win.svg
rename to public/logos/platforms/win.svg
diff --git a/static/logos/platforms/windows-mixed-reality.png b/public/logos/platforms/windows-mixed-reality.png
similarity index 100%
rename from static/logos/platforms/windows-mixed-reality.png
rename to public/logos/platforms/windows-mixed-reality.png
diff --git a/static/logos/platforms/wonderswan-color.png b/public/logos/platforms/wonderswan-color.png
similarity index 100%
rename from static/logos/platforms/wonderswan-color.png
rename to public/logos/platforms/wonderswan-color.png
diff --git a/static/logos/platforms/wonderswan.svg b/public/logos/platforms/wonderswan.svg
similarity index 100%
rename from static/logos/platforms/wonderswan.svg
rename to public/logos/platforms/wonderswan.svg
diff --git a/static/logos/platforms/x1.svg b/public/logos/platforms/x1.svg
similarity index 100%
rename from static/logos/platforms/x1.svg
rename to public/logos/platforms/x1.svg
diff --git a/static/logos/platforms/xbox.svg b/public/logos/platforms/xbox.svg
similarity index 100%
rename from static/logos/platforms/xbox.svg
rename to public/logos/platforms/xbox.svg
diff --git a/static/logos/platforms/xbox360.svg b/public/logos/platforms/xbox360.svg
similarity index 100%
rename from static/logos/platforms/xbox360.svg
rename to public/logos/platforms/xbox360.svg
diff --git a/static/logos/platforms/xboxone.svg b/public/logos/platforms/xboxone.svg
similarity index 100%
rename from static/logos/platforms/xboxone.svg
rename to public/logos/platforms/xboxone.svg
diff --git a/static/logos/platforms/xla.png b/public/logos/platforms/xla.png
similarity index 100%
rename from static/logos/platforms/xla.png
rename to public/logos/platforms/xla.png
diff --git a/static/logos/platforms/zxs.svg b/public/logos/platforms/zxs.svg
similarity index 100%
rename from static/logos/platforms/zxs.svg
rename to public/logos/platforms/zxs.svg
diff --git a/static/logos/rating-systems/CERO.png b/public/logos/rating-systems/CERO.png
similarity index 100%
rename from static/logos/rating-systems/CERO.png
rename to public/logos/rating-systems/CERO.png
diff --git a/static/logos/rating-systems/USK.svg b/public/logos/rating-systems/USK.svg
similarity index 100%
rename from static/logos/rating-systems/USK.svg
rename to public/logos/rating-systems/USK.svg
diff --git a/static/logos/rating-systems/acb.png b/public/logos/rating-systems/acb.png
similarity index 100%
rename from static/logos/rating-systems/acb.png
rename to public/logos/rating-systems/acb.png
diff --git a/static/logos/rating-systems/classind.png b/public/logos/rating-systems/classind.png
similarity index 100%
rename from static/logos/rating-systems/classind.png
rename to public/logos/rating-systems/classind.png
diff --git a/static/logos/rating-systems/esrb.svg b/public/logos/rating-systems/esrb.svg
similarity index 100%
rename from static/logos/rating-systems/esrb.svg
rename to public/logos/rating-systems/esrb.svg
diff --git a/static/logos/rating-systems/grac.svg b/public/logos/rating-systems/grac.svg
similarity index 100%
rename from static/logos/rating-systems/grac.svg
rename to public/logos/rating-systems/grac.svg
diff --git a/static/logos/rating-systems/pegi.svg b/public/logos/rating-systems/pegi.svg
similarity index 100%
rename from static/logos/rating-systems/pegi.svg
rename to public/logos/rating-systems/pegi.svg
diff --git a/static/no-image.jpg b/public/no-image.jpg
similarity index 100%
rename from static/no-image.jpg
rename to public/no-image.jpg
diff --git a/public/robots.txt b/public/robots.txt
new file mode 100644
index 00000000..eb053628
--- /dev/null
+++ b/public/robots.txt
@@ -0,0 +1,2 @@
+User-agent: *
+Disallow:
diff --git a/src/App.vue b/src/App.vue
index d667912e..22ad1ae3 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -1,4 +1,4 @@
-
+
@@ -16,7 +16,7 @@
>
-
+
@@ -24,7 +24,7 @@