archy/DEMO-DEPLOY.md
Dorian a2aa9657b1 fix: prevent My Apps crash when installing apps + add filebrowser to demo
The My Apps page went blank after installing apps because pkg['static-files'].icon
was accessed without optional chaining on dynamically installed packages that lack
the static-files property.

- Make static-files optional in PackageDataEntry type
- Add defensive ?.icon access with fallback in Apps.vue and AppDetails.vue
- Add filebrowser to mock backend staticDevApps (enables Cloud page in demo)
- Expand portMappings and marketplaceMetadata for all marketplace apps
- installPackage now uses staticApp() format for consistent data shape

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-09 17:09:59 +00:00

47 lines
1.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Demo Deployment via Portainer
Deploy Archipelago with the **mock backend** for demos. No real node required.
## Quick Deploy (Portainer)
1. In Portainer: **Stacks****Add stack**
2. Name: `archy-demo`
3. **Web editor** → paste contents of `docker-compose.demo.yml`
4. Or **Build from repository**: use this repo URL and set Compose path to `docker-compose.demo.yml`
5. Deploy
**Access:** http://your-host:4848
## Mock Backend
- Uses the Node.js mock backend (not the Rust backend)
- Pre-loaded apps, fake data, simulated install/start/stop
- **Login password:** `password123`
## Port
Default: **4848**. To change, edit the ports mapping in `docker-compose.demo.yml`:
```yaml
ports:
- "YOUR_PORT:80"
```
## Chat (Claude AI)
Set `ANTHROPIC_API_KEY` in the Portainer stack environment to enable real AI chat:
1. In the stack editor, add under **Environment variables**:
- `ANTHROPIC_API_KEY` = your Anthropic API key (starts with `sk-ant-api...`)
2. Redeploy the stack
Without this key, chat shows a "not configured" error. The key is passed to the `neode-backend` container which proxies requests to `api.anthropic.com`.
## Dev Mode
`VITE_DEV_MODE=existing` skips setup/onboarding and goes straight to login. For other flows:
- `setup` Password setup screen first
- `onboarding` Experimental onboarding flow
- `existing` Login only (default for demo)