# Pakker Fast, reliable multiplatform modpack manager for Minecraft, written in Rust. Pakker manages Minecraft modpacks across CurseForge, Modrinth, and GitHub. It handles project resolution, dependency linking, lockfile updates, exports, and remote modpack workflows from a single CLI. ## Core Features - Create and import modpacks - Add, remove, update, and inspect projects - Resolve dependencies across supported platforms with automatic cross-platform project merging - Manage pack configuration and per-project overrides - Export CurseForge, Modrinth, and serverpack layouts ### New in Pakker - Work with forked packs and remote repositories - Interactively set, configure, and test API credentials ## Quick Start 1. Run `pakker init` to create a new modpack. 2. Use `pakker add` or `pakker add-prj` to add projects. 3. Run `pakker export` when you want distributable output. ## How It Works Pakker maintains two files in your modpack directory: - `pakker.json`: pack metadata, paths, overrides, and per-project settings - `pakku-lock.json`: resolved project state with platform IDs, file URLs, and dependency links When you add a project, Pakker queries the supported platforms, merges results into a single project record with cross-platform identifiers, resolves dependencies recursively, and updates the lockfile. The resolver detects circular dependencies and links related projects via `pakku_links`. ## Acknowledgments [Pakku]: https://github.com/juraj-hrivnak/Pakku Pakker is _greatly_ inspired by [Pakku], and commits to bringing similar functionality with improved performance and additional features through a Rust implementation. Pakku is by no means a bad project, but I found it difficult to work with the Kotlin code. [teksturepako]: https://github.com/juraj-hrivnak Many thanks to [teksturepako] for Pakku, as well as his infinite patience, code reviews and suggestions to bring Pakker to its current state.