All server calls go through a shared axios instance (src/api.js) that gets a token with API_PASSWORD from the runtime config, renews it before it expires and retries once on 401. Character images are loaded with the token as blobs. Removes the unused express and cors dependencies and bumps the version to 1.2.0. Closes #2
1.1 KiB
1.1 KiB
music-randomizer-vue
Project setup
npm install
Compiles and hot-reloads for development
npm run serve
Compiles and minifies for production
npm run build
Lints and fixes files
npm run lint
Configuration
The Docker image writes config.js from public/config.template.js when the container starts, using these environment variables:
| Variable | Description |
|---|---|
API_HOSTNAME |
URL of the MusicServer, for example https://music.example.com. Empty to use the same host as the frontend. |
API_PASSWORD |
The MusicServer's API_PASSWORD, used to get an API token. Empty if the server has no password. Anyone who can open the frontend can read it. |
For npm run serve, create public/config.js (ignored by git):
window.__RUNTIME_CONFIG__ = { API_HOSTNAME: 'http://localhost:8080', API_PASSWORD: '' };
When the frontend is served by the MusicServer image, the server provides config.js with its own API_PASSWORD.