App catalog served from Gitea repos (app-catalog) with 35 apps. Nodes fetch catalog dynamically — new apps appear without frontend rebuild. Test app added and removed to verify pipeline. Gitea manifest updated with internal_port/nginx_proxy for iframe. Updated catalog.json, nginx configs, app session configs. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
40 lines
1.1 KiB
Markdown
40 lines
1.1 KiB
Markdown
# Archipelago App Catalog
|
|
|
|
Dynamic app catalog for the Archipelago marketplace. Nodes fetch this catalog to discover available apps.
|
|
|
|
## How it works
|
|
|
|
1. The Archipelago frontend fetches `catalog.json` from this repo
|
|
2. Apps listed here appear in every node's app store automatically
|
|
3. When a user installs an app, the backend pulls the Docker image and creates the container
|
|
|
|
## Adding a new app
|
|
|
|
Add an entry to `catalog.json`:
|
|
|
|
```json
|
|
{
|
|
"id": "my-app",
|
|
"title": "My App",
|
|
"version": "1.0.0",
|
|
"description": "What it does",
|
|
"icon": "/assets/img/app-icons/my-app.svg",
|
|
"author": "Author",
|
|
"category": "data",
|
|
"dockerImage": "git.tx1138.com/lfg2025/my-app:1.0.0",
|
|
"repoUrl": "https://github.com/...",
|
|
"containerConfig": {
|
|
"ports": ["8080:8080"],
|
|
"volumes": ["/var/lib/archipelago/my-app:/data"],
|
|
"env": ["NODE_ENV=production"]
|
|
}
|
|
}
|
|
```
|
|
|
|
For apps with hardcoded backend configs (Bitcoin, LND, etc.), `containerConfig` is optional.
|
|
For new apps, include `containerConfig` so the backend knows how to create the container.
|
|
|
|
## Categories
|
|
|
|
money, commerce, data, home, nostr, networking, community, development, l484
|