How bitxeno/atvloadly works
atvloadly is a web service for sideloading and refreshing apps on Apple TV. The main workflow is to discover and pair a TV, choose an IPA or tracked source, install it using an Apple ID or external signing identity, and later refresh or update it. The map also includes device discovery, source tracking, certificate management, MCP, notifications, and screenshots. Edges use the sampled source index or README as evidence; several implementations were not sampled, so their internal connections are omitted.
Main entry points: router.go HTTP API · external_install.go Install workflow · app_source.go Source tracking · task.go Refresh scheduler
Components 22
User access
- Web interface
web/static/src/App.vue - HTTP API
web/router.go - MCP tools
internal/mcp/tools/install.go - MCP endpoint
internal/mcp/server.go
Apple TV devices
- Device discovery
internal/manager/device_manager_avahi.go - Device registry
internal/manager/device_manager.go - Device pairing
internal/manager/pair_manager.go - Sideload engine
internal/manager/install_manager.go - Screenshots
internal/manager/screenshot_manager.go
Apps and signing
- Source tracking
internal/service/app_source.go - GitHub releases
internal/source/github.go - AltStore sources
internal/source/altstore.go - IPA handling
internal/ipa/ipa.go - Install workflow
internal/service/external_install.go - Signing validation
internal/signing/appcheck/plan.go - Certificate management API
web/signing_routes.go
Background operations
- Refresh scheduler
internal/task/task.go - Notifications
internal/notify/notify.go - WebSocket service
internal/service/websocket.go
Other components
- Operator
Connections 22
- Operator → Web interface: uses
README.md - Web interface → HTTP API: sends requests
- Operator → Device pairing: pairs TV
README.md - HTTP API → Device registry: lists devices
web/router.go - Device discovery → Device registry: updates devices
internal/manager/device_manager_avahi.go - Operator → HTTP API: requests install
web/router.go - HTTP API → Install workflow: runs install
web/router.go - HTTP API → Source tracking: manages sources
web/router.go - Source tracking → GitHub releases: uses provider
- Source tracking → AltStore sources: uses provider
- Install workflow → IPA handling: processes IPA
- Install workflow → Signing validation: checks signing
internal/service/external_install.go - Install workflow → Sideload engine: runs engine
- Certificate management API → Install workflow: checks install
web/signing_routes.go - Operator → Certificate management API: manages identity
web/signing_routes.go - Refresh scheduler → Install workflow: runs refresh
internal/task/task.go - Refresh scheduler → Notifications: sends updates
internal/task/task.go - HTTP API → Screenshots: requests capture
- HTTP API → WebSocket service: opens connection
- MCP endpoint → MCP tools: registers tools
internal/mcp/server.go - MCP tools → Install workflow: runs install
internal/mcp/tools/install.go - Settings → Database: persists settings