From 50bd0d216dd73cc4409deefc2fdcda37888f6772 Mon Sep 17 00:00:00 2001 From: Valentin Haudiquet Date: Wed, 4 Feb 2026 19:49:25 +0100 Subject: [PATCH] readme: added readme --- README.md | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..96ef0b3 --- /dev/null +++ b/README.md @@ -0,0 +1,42 @@ +# BuildPath +a tool for League of Legends champions runes and build paths + +https://buildpath.win + +## Architecture + +BuildPath is made of four components: +- a MongoDB document database +- `patch_detector`, a daemon which runs periodically to detect new League of Legends patch from official APIs +- `match_collector`, a daemon which runs periodically to collect matches from League of Legends challenger players on current patch, and generate statistics from those matches, saving them in the database +- `frontend`, which is a Nuxt.JS project hosting an API serving the statistics but also the full web frontend (Vue.JS) + +## Development + +### Getting started + +Developing BuildPath requires Docker for a local MongoDB instance, and a NodeJS/npm installation. + +BuildPath needs data to work, either for generating statistics in the `match_collector` or for the frontend. + +In order to download a production snapshot with data, import them into a local MongoDB instance and re-generate champion statistics, just use: +```bash +node dev/scripts/setup-db.js +``` + +You can re-run the script to re-generate statistics, and it won't re-download data. + +Afterwards, if you want to run the frontend: +```bash +cd frontend && npm run dev +``` + +### Code quality + +Every subproject has `lint` and `format` targets: +``` +npm run format # Format code +npm run lint # Run the linter +``` + +Please make sure those are run without errors before committing. \ No newline at end of file