Skip to content

PackPulse

Open-source Fabric mod updater that syncs mods, configs, resource packs, and shader packs from a remote manifest before you play.

FabricNeoForge
Loaders
FabricNeoForge
Downloads on Modrinth
646
Followers on Modrinth
2
versions
13
Updated
May 17, 2026May 17
Published
in 2026

At a glance

Runs on Fabric and NeoForge
For Minecraft 1.20–1.21.11
Client only — no need to install it on the server
Latest version — 1.0.2 from May 17, 2026
License MIT — free
Where it's needed
In gamerequiredOn servernot needed

Install in the game only; not needed on the server

Game versions1.20–1.21.11

PackPulseMod

PackPulseMod is an open-source client-side updater for private Minecraft modpacks.

It is designed for server owners and small communities who want players to keep their pack folders in sync without shipping a full launcher.

PackPulseMod is not tied to any specific server. You host your own files and manifest.json, then set the manifest URL in the client config.

Features

  • Syncs missing or changed files on Minecraft startup
  • Uses SHA-256 hashes for file checks
  • Supports mods, config, resourcepacks, shaderpacks, extra top-level mod folders, and optional options.txt
  • Shows a confirmation screen before downloading
  • Lets players choose which files to download
  • Includes a scrollable file list
  • Shows clean mod/file names without .jar, .zip, .txt, etc.
  • Has a Download all button
  • Supports HTTP and HTTPS manifest URLs
  • Supports explicit file removal through the manifest delete list
  • Can optionally remove stale files that are no longer in the manifest
  • Shows a restart screen when updated .jar mods require a restart

Supported Builds

LoaderMinecraft versions
Fabric1.20.1 - 1.20.6
Fabric1.21 - 1.21.11
NeoForge1.20.5 - 1.20.6
NeoForge1.21 - 1.21.11

Client Setup

  1. Install the correct Fabric Loader or NeoForge version.
  2. Put the matching PackPulseMod jar into .minecraft/mods.
  3. Start Minecraft once to create the config.
  4. Close Minecraft.
  5. Open:
.minecraft/config/packpulse.json
  1. Replace the example manifestUrl with your own URL:
{
  "manifestUrl": "https://your-domain.example/packpulse/manifest.json",
  "removeFilesMissingFromManifest": false,
  "updateOnStartup": true,
  "showProgressWindow": true,
  "autoRestartAfterModUpdates": false,
  "restartExecutable": ""
}

The default URL is only a placeholder. You must host your own manifest.

Server Pack Layout

Put pack files on your server like this:

server-pack/
  mods/
  config/
  defaultconfigs/
  kubejs/
  resourcepacks/
  shaderpacks/
  options.txt

options.txt is optional.

Manifest

PackPulseMod expects a JSON manifest with file paths, download URLs, SHA-256 hashes, and an optional delete list for files that should be removed from clients.

The repository includes scripts that can generate and deploy this manifest automatically. When a previously published file disappears from the server pack, the generator adds it to delete, so old renamed mods can be removed safely.

Example script workflow:

sudo mkdir -p /opt/packpulse/scripts /opt/packpulse/server-pack
cd /opt/packpulse

curl -fsSL -o scripts/generate_manifest.py https://raw.githubusercontent.com/Kamilhik/PackPulseMod/main/scripts/generate_manifest.py
curl -fsSL -o scripts/deploy_http_ip.sh https://raw.githubusercontent.com/Kamilhik/PackPulseMod/main/scripts/deploy_http_ip.sh
curl -fsSL -o scripts/deploy_https_letsencrypt.sh https://raw.githubusercontent.com/Kamilhik/PackPulseMod/main/scripts/deploy_https_letsencrypt.sh
chmod +x scripts/deploy_http_ip.sh scripts/deploy_https_letsencrypt.sh

HTTP by IP:

sudo ./scripts/deploy_http_ip.sh --server-ip YOUR_SERVER_IP

HTTPS with domain and Let's Encrypt:

sudo ./scripts/deploy_https_letsencrypt.sh --domain files.example.com --email you@example.com

After changing your pack files, run the same deploy script again.

Notes

  • This mod is client-side.
  • It is meant for private packs, server packs, and community packs.
  • For public releases, test the edge versions of each supported Minecraft range.

Русский

PackPulseMod - это open-source клиентский мод для автоматического обновления приватных Minecraft-сборок.

Он подходит для владельцев серверов и небольших сообществ, которым нужно синхронизировать папки сборки у игроков без отдельного лаунчера.

PackPulseMod не привязан к конкретному серверу. Ты размещаешь свои файлы и manifest.json, а затем указываешь ссылку на manifest в конфиге клиента.

Возможности

  • Синхронизация отсутствующих или измененных файлов при запуске Minecraft
  • Проверка файлов по SHA-256
  • Поддержка mods, config, resourcepacks, shaderpacks, дополнительных папок модов и опционального options.txt
  • Экран подтверждения перед скачиванием
  • Выбор, какие файлы скачивать
  • Список файлов со скроллом
  • Красивые названия файлов без .jar, .zip, .txt и других расширений
  • Кнопка Скачать всё
  • Поддержка HTTP и HTTPS ссылок на manifest
  • Явное удаление файлов через список delete в manifest
  • Опциональное удаление устаревших файлов, которых больше нет в manifest
  • Экран перезапуска, если после обновления .jar-модов нужен перезапуск

Поддерживаемые Сборки

ЛоадерВерсии Minecraft
Fabric1.20.1 - 1.20.6
Fabric1.21 - 1.21.11
NeoForge1.20.5 - 1.20.6
NeoForge1.21 - 1.21.11

Настройка Клиента

  1. Установи подходящий Fabric Loader или NeoForge.
  2. Положи нужный jar PackPulseMod в .minecraft/mods.
  3. Запусти Minecraft один раз, чтобы создался конфиг.
  4. Закрой Minecraft.
  5. Открой:
.minecraft/config/packpulse.json
  1. Замени примерный manifestUrl на свою ссылку:
{
  "manifestUrl": "https://your-domain.example/packpulse/manifest.json",
  "removeFilesMissingFromManifest": false,
  "updateOnStartup": true,
  "showProgressWindow": true,
  "autoRestartAfterModUpdates": false,
  "restartExecutable": ""
}

Стандартная ссылка является только примером. Нужно разместить свой manifest.

Структура Серверной Сборки

Файлы сборки на сервере должны лежать так:

server-pack/
  mods/
  config/
  defaultconfigs/
  kubejs/
  resourcepacks/
  shaderpacks/
  options.txt

options.txt необязателен.

Manifest

PackPulseMod ожидает JSON manifest с путями файлов, ссылками для скачивания, SHA-256 хэшами и опциональным списком delete для удаления файлов у клиентов.

В репозитории есть скрипты, которые могут автоматически создать manifest и развернуть файлы на сервере. Если ранее опубликованный файл исчез из серверной сборки, генератор добавит его в delete, чтобы старые переименованные моды удалялись безопасно.

Пример:

sudo mkdir -p /opt/packpulse/scripts /opt/packpulse/server-pack
cd /opt/packpulse

curl -fsSL -o scripts/generate_manifest.py https://raw.githubusercontent.com/Kamilhik/PackPulseMod/main/scripts/generate_manifest.py
curl -fsSL -o scripts/deploy_http_ip.sh https://raw.githubusercontent.com/Kamilhik/PackPulseMod/main/scripts/deploy_http_ip.sh
curl -fsSL -o scripts/deploy_https_letsencrypt.sh https://raw.githubusercontent.com/Kamilhik/PackPulseMod/main/scripts/deploy_https_letsencrypt.sh
chmod +x scripts/deploy_http_ip.sh scripts/deploy_https_letsencrypt.sh

HTTP по IP:

sudo ./scripts/deploy_http_ip.sh --server-ip YOUR_SERVER_IP

HTTPS через домен и Let's Encrypt:

sudo ./scripts/deploy_https_letsencrypt.sh --domain files.example.com --email you@example.com

После изменения файлов сборки просто запусти тот же deploy-скрипт снова.

Примечания

  • Мод работает на стороне клиента.
  • Подходит для приватных сборок, серверных сборок и сборок небольших сообществ.
  • Перед публичным релизом лучше проверить крайние версии каждого поддерживаемого диапазона Minecraft.

License

MIT

FAQ

How to install PackPulse?

Install Fabric for your Minecraft version, download PackPulse for the same version and loader, put the file into the mods folder and launch the game with the loader profile.

Which Minecraft versions does PackPulse support?

PackPulse has builds for Minecraft 1.20–1.21.11.

Is PackPulse needed on the server?

Client only — no need to install it on the server

License and source
MIT Licensefree to use and share with credit to the author
Original — Modrinth↗Files unchanged, verified with SHA-512Is this your mod? For rights holders

The site uses cookies: the necessary ones for sign-in and the theme, plus the Yandex Metrica and LiveInternet visit counters — they show us how the site is used. We have no advertising cookies. More