{"id":39134488,"url":"https://github.com/dofusdude/doduda","last_synced_at":"2026-04-12T22:27:27.520Z","repository":{"id":184824624,"uuid":"672523753","full_name":"dofusdude/doduda","owner":"dofusdude","description":"CLI for Dofus asset downloading and unpacking","archived":false,"fork":false,"pushed_at":"2026-01-16T23:26:15.000Z","size":412,"stargazers_count":33,"open_issues_count":0,"forks_count":9,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-01-17T11:37:49.557Z","etag":null,"topics":["api","database","dofus","dofus-unity","dofus3","download","unpack"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"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/dofusdude.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-07-30T11:31:32.000Z","updated_at":"2026-01-16T23:26:07.000Z","dependencies_parsed_at":"2023-07-30T13:49:27.900Z","dependency_job_id":"4c0fb560-d6f8-41d0-aa10-b3bd61c8e086","html_url":"https://github.com/dofusdude/doduda","commit_stats":null,"previous_names":["dofusdude/doduda"],"tags_count":56,"template":false,"template_full_name":null,"purl":"pkg:github/dofusdude/doduda","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dofusdude%2Fdoduda","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dofusdude%2Fdoduda/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dofusdude%2Fdoduda/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dofusdude%2Fdoduda/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dofusdude","download_url":"https://codeload.github.com/dofusdude/doduda/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dofusdude%2Fdoduda/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28518623,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-17T18:55:29.170Z","status":"ssl_error","status_checked_at":"2026-01-17T18:55:03.375Z","response_time":85,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["api","database","dofus","dofus-unity","dofus3","download","unpack"],"created_at":"2026-01-17T21:23:04.751Z","updated_at":"2026-01-17T21:23:04.819Z","avatar_url":"https://github.com/dofusdude.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://docs.dofusdu.de/dofus2/logo_cropped.png\" width=\"120\"\u003e\n  \u003ch3 align=\"center\"\u003edoduda\u003c/h3\u003e\n  \u003cp align=\"center\"\u003eCLI for Dofus asset downloading and unpacking\u003c/p\u003e\n  \u003cp align=\"center\"\u003e\u003ca href=\"https://goreportcard.com/report/github.com/dofusdude/doduda\"\u003e\u003cimg src=\"https://goreportcard.com/badge/github.com/dofusdude/doduda\" alt=\"\"\u003e\u003c/a\u003e \u003ca href=\"https://github.com/dofusdude/doduda/actions/workflows/tests.yml\"\u003e\u003cimg src=\"https://github.com/dofusdude/doduda/actions/workflows/tests.yml/badge.svg\" alt=\"\"\u003e\u003c/a\u003e\n  \u003c/p\u003e\n\u003c/p\u003e\n\nDownload the latest Dofus 3 data from Ankama and convert the interesting parts to a developer friendly json format:\n\n```sh\n# Install\ncurl -s https://get.dofusdu.de/doduda | sh\n\n# Run\ndoduda \u0026\u0026 doduda map\n```\n\n## Features\n\nSee `doduda --help` for all parameters.\n\n### Load\n\nDownload the latest Dofus version. You can change the target folder with `--output`.\n\n\u003cimg src=\"https://vhs.charm.sh/vhs-15sHEeT47mgiZ7vrgnenB2.gif\" alt=\"load example\" width=\"600\"\u003e\n\nYou can also download the complete game to get a playable version without unpacking the files using `doduda --full`.\nIf you want a different platform version than Windows, you can specify the it with the `--platform` parameter.\n\n### Map\n\nMake the cryptic data easier to use in apps.\n\n\u003cimg src=\"https://vhs.charm.sh/vhs-3YcvO6NALEaRFoNPu9Jhe2.gif\" alt=\"map example\" width=\"600\"\u003e\n\nThe command assumes that all categories (except images) are already downloaded.\n\n### Watchdog\n\nListen for new Dofus versions and react to their release.\n\n\u003cimg src=\"https://vhs.charm.sh/vhs-g7BGgJ5f4iUhuzRhoYzzR.gif\" alt=\"watchdog example\" width=\"600\"\u003e\n\nYou can use that for getting anything that supports webhooks to react to Dofus version updates. Some ideas are:\n\n- [Discord Channels](https://support.discord.com/hc/en-us/articles/228383668-Intro-to-Webhooks)\n- [ntfy.sh](https://ntfy.sh) (Push notifications to your phone)\n\n### Render\n\nGenerate pre-rendered, high resolution `.png` images from the vector files.\n\n\u003cimg src=\"https://vhs.charm.sh/vhs-H3yfHga5lcnzj9UhLyP5C.gif\" alt=\"render example\" width=\"600\"\u003e\n\n## Installation\n\n```sh\ncurl -s https://get.dofusdu.de/doduda | sh\n```\n\nThere is only one dependency: [Docker](https://docs.docker.com/get-docker/).\n\nYou need to have it installed when you:\n\n- want to unpack the Dofus 3 data files.\n- want to use the `render` command to generate images for Dofus 2.\n\nYou don't need it when you only want to use the `map` command or download the entire game (`--full`). The script above will crash if Docker is not installed since Dofus 3 is the default game at the moment.\n\nIf you have problems with Docker, like a missing socket, the solution is often to find your `docker.sock` path and link it to the missing path or export your path as `DOCKER_HOST` environment variable `export DOCKER_HOST=unix://\u003cyour docker.sock path\u003e` before running `doduda`.\n\n### GitHub Releases\n\nGet the latest `doduda` binary from the [release](https://github.com/dofusdude/doduda/releases) page.\n\n### Go install (needs [Go](https://go.dev/doc/install) \u003e= 1.21)\n\nYou need to have `$GOPATH/bin` in your `$PATH` for this to work, so `export PATH=$PATH:$(go env GOPATH)/bin` if you haven't already.\n\n```bash\ngo install github.com/dofusdude/doduda@latest\n```\n\n## The dofusdude auto-update cycle\n\nThis tool is the first step in a pipeline that updates the data on [GitHub](https://github.com/dofusdude/dofus3-main) when a new Dofus version is released.\n\n1. Two watchdogs (`doduda listen`) listen for new Dofus versions. One for main and one for beta. When something releases, the watchdog calls the GitHub API to start a workflow that uses `doduda` to download and parse the update to check for new elements and item_types. They hold global IDs for the API, so they must be consistent with each update.\n2. At the end of the `doduda` workflow, it triggers the corresponding data repository to do a release, which then downloads the latest `doduda` binary (because it is a different workflow) and runs it to produce the final dataset. The data repository opens a release and uploads the files.\n3. After a release, `doduapi` needs to know that a new update is available. The data repository workflow calls the update endpoint. The API then fetches the latest version from GitHub, indexes, starts the image upscaler (if necessary) and does a atomic switch of the database when ready.\n\n## Known Problems\n\n- Run `doduda` with `--headless` in a server environment or automations to avoid \"no tty\" errors.\n\n## Credit\n\nTo unpack Dofus 2 data, doduda ships a port of the [PyDofus](https://github.com/balciseri/PyDofus) project. Thanks to balciseri for the work on PyDofus!\n\nThe terminal visualizations are made with [vhs](https://vhs.charm.sh).\n\nMany thanks to Ankama for developing and updating Dofus! All data belongs to them. I just make it more accessible for the developer community.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdofusdude%2Fdoduda","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdofusdude%2Fdoduda","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdofusdude%2Fdoduda/lists"}