A WIP next-gen map frontend for pogo.
Diadem is under active development, and as of writing this, not ready for production use.
For a list of planned features (and fixes), check out the issues. To get an idea of what's working right now, check out the demo.
Before this becomes ready for production, documentation is lacking, and for now it's generally not advised to set this up yourself. But I'm not stopping you:
git clone https://github.com/ccev/diadem && cd./setup.sh, then fill out config/config.tomlpnpm run db:pushpnpm install&&pnpm run build- Start with pm2:
PORT=3900 HOST=127.0.0.1 FORCE_COLOR=1 pm2 start build/index.js -n "diadem" - Set up a reverse proxy, I use caddy with this config:
map.co { root * /path/diadem/build reverse_proxy * 127.0.0.1:3900 }
git pull./setup.sh && pnpm install && pnpm run buildpm2 restart diadem
Diadem proxies and optimizes UICON repos. Clients will cache all uicons for 7 days. But I suggest adding your own caching rules, i.e. with Cloudflare:
- In you CF dashboard, go to your domain -> Caching -> Cache rules -> Create rule
- Set a name, and set
URI Full|wildcard|https://map.co/assets/* - Optionally configure the caching rule and save
If you want to contribute anything, feel free to fork this repo and open a pull request.
To set up a local dev environment, follow the setup instructions and run pnpm run dev.
A local dev server will spin up, changes can be viewed live in your browser.
Diadem is built on top of a decade worth of pogo tooling. Especially noteworthy for this project are:
- TurtleSocks and Mygod for their work on ReactMap, Koji, Masterfile-Generator, pogo-translations, wwm-uicons and uicons.json
- UnownHash for their work on Dragonite and Golbat
Published under the AGPL license.