vue-cli-service had to be added to devDependencies to be picked up by the Vue CLI UI properly, and we need it to build, so we need to make sure dev dependencies are included on the production server. |
||
|---|---|---|
| docker | ||
| public | ||
| src | ||
| .env.example | ||
| .gitattributes | ||
| .gitignore | ||
| babel.config.js | ||
| docker-compose.override.yml.example | ||
| docker-compose.yml | ||
| license.txt | ||
| package.json | ||
| readme.md | ||
| shipitfile.js | ||
| vue.config.js | ||
| yarn.lock | ||
Splatoon2.ink
Splatoon2.ink shows the current and upcoming map schedules for Splatoon 2.
This site was built with Vue.js and Bulma. All data comes from the SplatNet 2 API.
More information about Nintendo's API can be found here.
Note: The Splatnet updater script requires Node.js v8 or later.
Getting Started
Clone this repo:
git clone git@github.com:misenhower/splatoon2.ink.git
Next, copy .env.example to .env and update its values.
cp .env.example .env
You can retrieve your iksm_session ID value (NINTENDO_SESSION_ID inside .env) using Fiddler or a similar tool.
See here for further instructions.
I recommend using Yarn to manage JS dependencies.
yarn install # Install dependencies
yarn splatnet # Retrieve updates from Splatnet and the Salmon Run calendar
yarn serve # Start the webpack dev server
Data retrieved from Splatnet is stored in the public/data directory.
By default, the dev server will run on port 8080.
When running yarn serve you can access the site by going to http://localhost:8080.
Production
Build minified assets for production:
yarn build
Retrieve updates from Splatnet every hour via node-cron:
yarn cron
Docker
I use a Docker container on my production server to build production assets and retrieve data from Splatnet.
sudo docker-compose run --rm app yarn build # Build production assets
sudo docker-compose up -d app # Start periodic updates