{"id":22691380,"url":"https://github.com/egguy/dazzar","last_synced_at":"2026-07-03T03:34:17.688Z","repository":{"id":142968043,"uuid":"78965042","full_name":"egguy/dazzar","owner":"egguy","description":"Tools for the French dota community.","archived":false,"fork":false,"pushed_at":"2017-01-14T20:35:19.000Z","size":486,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-07-19T05:22:48.786Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://dazzar.fr","language":"Python","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/egguy.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-01-14T20:33:20.000Z","updated_at":"2018-01-16T00:23:11.000Z","dependencies_parsed_at":"2023-03-16T17:00:42.832Z","dependency_job_id":null,"html_url":"https://github.com/egguy/dazzar","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/egguy/dazzar","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/egguy%2Fdazzar","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/egguy%2Fdazzar/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/egguy%2Fdazzar/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/egguy%2Fdazzar/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/egguy","download_url":"https://codeload.github.com/egguy/dazzar/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/egguy%2Fdazzar/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35071461,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-03T02:00:05.635Z","response_time":110,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-10T01:10:30.352Z","updated_at":"2026-07-03T03:34:17.671Z","avatar_url":"https://github.com/egguy.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Dazzar - Tool bazar for Dota\n\nWebsite with tools for the French Dota 2 community. Some planned features are:\n\n* [X] Logging with Steam for a unique account.\n* [X] VIP Ladder system for 5K+ players, open 1 times per week.\n* [X] Mix tool to find players to make new teams.\n* [ ] Managing tools to help teams organize training, scrims and tournaments.\n* [ ] Pool of teams looking to scrim against each others.\n* [ ] Social tools with news, comments, twitters, videos\n* [ ] Tournament tools to help the community manage tournaments.\n\n## Dependencies\n\n- `Makefile`\n- [Docker engine](https://www.docker.com/products/docker-engine) and [docker-compose](https://docs.docker.com/compose/)\n\n## Commands\n\nGeneral commands\n\n- `make build` - build the 4 docker images used\n- `make all-start` - start the images detached (prod)\n- `make all-stop` - stop the images if detached (prod)\n\nDatabase commands\n\n- `make db-start` - start the database and queue only, detached.\n- `make db-stop` - stop the database and queue only, if started.\n- `make db-migrate` - create the migrations if the models changed.\n- `make db-upgrade` - apply the migrations to the database.\n\nOther commands\n\n- `make web-start` - start the web image only, detached (prod).\n- `make web-stop` - stop the web image only.\n- `make web-run` - start the web image only, attached (debug).\n- `make bot-start` - start the bot image only, attached (prod).\n- `make bot-stop` - stop the bot image only.\n- `make bot-run` - start the bot image only, attached (debug).\n- `make script SCRIPT=SCRIPT_TO_RUN` - run the `SCRIPT_TO_RUN` defined in the `common/scripts.py` file.\n\n## About configurations\n\nSome configurations files are necessary to run the project. Because of secrets, they are not integrated into the depot. However, you can have a peek at the structure of such files watching their `*.example` counterpart. These files are `common/cfg/settings.cfg`, `docker/dazzar_postgres/conf.env` and `docker/dazzar_rabbitmq/conf.env`.\n\n## Details\n\n### Project structure\n\n    .\n    ├── bot                   # Files used inside the worker\n    ├── common                # Sources shared between the worker and the web app\n    ├── docker                # Docker files and compose\n    ├── migrations            # Database migrations\n    ├── web                   # Web sources\n    ├── LICENSE\n    ├── Makefile\n    └── README.md\n\n### Docker images\n\nThe project is composed of 4 docker images:\n\n- `dazzar_postgres` - Postgres database used for persistence stuff, shared between the web part and the worker part.\n- `dazzar_rabbitmq` - A queue to send jobs from the web platform to the workers.\n- `dazzar_web` - Flask application managing the website.\n- `dazzar_bot` - Image managing background tasks: bot manager, steam bots, tasks...\n\n### Web\n\nThe web project is a classic Flask application, rendering views using Jinja2 templating. The project is connected to a database to store all infos but also to a queue to send background jobs to workers.\n\n### Worker\n\nThe bot worker is managing a pool of steam bots to process background task (analyse profiles, create games, report results...).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fegguy%2Fdazzar","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fegguy%2Fdazzar","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fegguy%2Fdazzar/lists"}