amania-jailbreak 93825ebc64 初回コミット: AltStore PAL向けADPホスティングSaaS
- Fastify API・Node Worker・PostgreSQL・S3互換ストレージ構成
- ADP ZIPのマルチパートアップロードとManifest検証(パストラバーサル・ZIP爆弾等を拒否)
- manifest.json/signatureは再シリアライズせず元バイト列を保持
- Cloudflare風の運用向け管理ダッシュボード(shadcn/Radix・日本語UI・4ルート)
  概要/Sources/アプリ/リリース + ルートランディングページ
- 汎用OIDC SSO・Workspace単位の認可・demo mode
- 匿名配布: /sources/{slug}/source.json, /artifacts/{releaseId}/manifest.json
- Docker Compose対応
2026-08-05 10:09:58 +09:00

AltDock

AltDock is a self-hostable, multi-tenant hosting service for AltStore PAL Alternative Distribution Packages (ADPs). Upload the original ADP ZIP, validate its manifest and asset set, then publish a PAL-compatible Source JSON URL.

Run locally without Docker

npm install
cp .env.example .env
npm run dev:api

With no DATABASE_URL, the API uses an in-memory store and local files under .data/storage. Open the web app in another terminal:

npm run dev

The dashboard is at http://localhost:3000 and the API is at http://localhost:4000.

Run the full stack

docker compose up

This starts PostgreSQL, MinIO, the API, the ADP worker, and the web app. The MinIO console is available at http://localhost:9001 with the credentials in docker-compose.yml.

Production identity

Set AUTH_MODE=oidc and configure OIDC_ISSUER_URL, OIDC_CLIENT_ID, OIDC_CLIENT_SECRET, OIDC_REDIRECT_URI, and a random SESSION_SECRET. The demo mode is intentionally enabled by default for local development only.

ADP workflow

  1. Submit the app for Notarization and download the completed ADP ZIP.
  2. Upload the original ZIP to AltDock; do not prettify or rewrite its files.
  3. Review the parsed bundle ID, Apple Item ID, version, build, and asset paths.
  4. Publish the release and copy the Source URL into AltStore PAL.

Published artifacts are served at /artifacts/{releaseId}/{relativePath} and the Source JSON is served at /sources/{slug}/source.json.

Checks

npm run lint
npm test
S
Description
No description provided
Readme
286 KiB
Languages
TypeScript 95.1%
JavaScript 4.5%
Dockerfile 0.4%