> For the complete documentation index, see [llms.txt](https://astroport-1.gitbook.io/astroport.one/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://astroport-1.gitbook.io/astroport.one/readme.md).

# Astroport.ONE — L'Internet de Confiance

[FR](/astroport.one/readme.fr.md) · [ES](/astroport.one/readme.es.md) · [GitBook](https://astroport-1.gitbook.io/astroport.one/)

> **The internet was built to liberate. Instead, we became its product.** Astroport.ONE is a declaration of digital independence — an open-source suite that transforms users from digital tenants into sovereign co-owners of their infrastructure.

[![Stargazers](https://starchart.cc/papiche/Astroport.ONE.svg)](https://starchart.cc/papiche/Astroport.ONE)

***

## 🎮 The Initiation Journey: From Curious to Captain

Astroport.ONE is not just software — it's a **gamified initiation path** from digital consumer to cooperative co-owner.

```
Day 0: You discover UPlanet ORIGIN (sandbox)
       ↓ Install in one command — zero configuration
Day 1–7: You receive daily ZINEs (digital tutorials)
       ↓ Learn yt-dlp archiving, #BRO AI, Nostr, Ẑen economy
Day 7: The DRAGON Call — join the certified network
       ↓ Validate your training → receive your swarm.key
       ↓ UPlanet ORIGIN  →  UPlanet ẐEN
```

The system **sends you daily coaching emails automatically** — each ZINE tailored to your role (Explorer, ZENCard subscriber, Captain, U.SOCIETY member).

***

## 🌍 Two Worlds: ORIGIN vs ẐEN

|                    | **UPlanet ORIGIN**              | **UPlanet ẐEN**                            |
| ------------------ | ------------------------------- | ------------------------------------------ |
| **Vocation**       | Academy · Sandbox · Discovery   | Production · Real Economy                  |
| **Access**         | Open to all (swarm.key = zeros) | Certified members only (private swarm.key) |
| **Value of Ẑen**   | 1 Ẑ = 0.1 Ğ1 (play economy)     | **1 Ẑ = 1 €** (real cooperative unit)      |
| **IPFS swarm**     | Public, open                    | Private, encrypted constellation           |
| **Identity**       | Basic MULTIPASS                 | Validated uPASSPORT + DID W3C              |
| **Who manages it** | The G1FabLab collective         | **You** — as Captain                       |

The transition from ORIGIN to ẐEN is the **DRAGON Certification** — a cybersecurity + cryptography training that earns you the `swarm.key` to join the private constellation.

***

## 👥 The 4 Roles of the Constellation

### 🧱 Armateur (Host) — 14 Ẑen/week

You provide the **machine** (the ship). The collective manages it in ORIGIN mode while you learn.

* Install Astroport.ONE on any Linux PC or Raspberry Pi
* Your station appears on the UPlanet swarm map
* **Earn 14 Ẑen/week** as infrastructure host
* Subscribe: [OpenCollective — Parrainage Satellite](https://opencollective.com/monnaie-libre/contribute/parrainage-infrastructure-extension-128-go-98386)

**Power-Score** — each station broadcasts its compute capacity to the constellation:

| Score | Tier       | Profile                               |
| ----- | ---------- | ------------------------------------- |
| ≤10   | 🌿 Light   | Raspberry Pi / mini PC                |
| 11–40 | ⚡ Standard | Desktop PC, no GPU                    |
| 41+   | 🔥 Brain   | Dedicated GPU — powers the #BRO swarm |

Formula: `GPU_VRAM_GB × 4 + CPU_cores × 2 + RAM_GB × 0.5`

Brain-Nodes share compute with the constellation. Per-process energy consumption is monitored by **PowerJoular** and published in `capacities.power_score` of the station JSON.

> 📖 [Power Monitoring How-To](/astroport.one/docs/how-to/power_monitoring.md)

### 🎓 Apprenti (Explorer)

You create your **MULTIPASS** on an ORIGIN station and discover the tools over 7 days.

* **Day 1**: Archive YouTube → your private uDRIVE (yt-dlp + [Open-With Firefox](/astroport.one/docs/how-to/youtube_archive_open_with.md))
* **Day 2**: #BRO Swarm AI — local Ollama, image generation, article writing
* **Day 7**: The DRAGON Call — your invitation to the ẐEN network

> ⚠️ **Account lifecycle**: A MULTIPASS inactive at 0 Ẑen with no incoming transaction will be automatically deleted after a **7-day grace period** (J-30 and J-7 warning emails are sent automatically). Captains are exempt — their account is never purged.

### ⚓ Capitaine (Captain) — 28 Ẑen/week

You **operate the station**, master the tools, and welcome new users.

* Pass the **DRAGON Formation** (cybersecurity + cryptography) → receive your `swarm.key`
* Connect your station to the private ẐEN constellation
* Host MULTIPASS users (1 Ẑ/week each) and ZENCard subscribers (4 Ẑ/week each)
* **Earn 2× PAF** = 28 Ẑen/week default

> Contact: <support@qo-op.com> — Subject: "Candidature Capitaine DRAGON"

### 🐉 U.SOCIETY / DRAGON (Cooperative Member)

You are the **backbone of the constellation** — a certified Dragon, governance participant, and permanent member.

* **No weekly rental** — your annual sponsorship covers your access
* `swarm.key` to the private ẐEN IPFS swarm
* **NextCloud 128 Go** included
* Voting rights in CopyLaRadio SCIC cooperative decisions
* Priority access to #BRO Swarm AI (GPU shared across the constellation)
* Sponsorship: [OpenCollective — Constellation GPU](https://opencollective.com/monnaie-libre/contribute/parrainage-infrastructure-module-gpu-1-24-98385)

***

## ☁️ The ZENCard: De-Google Your Life

The **ZENCard** (5 Ẑen/week) is your sovereign cloud subscription, guided by a **7-day onboarding program**:

| Day | Tutorial                                                        |
| --- | --------------------------------------------------------------- |
| 0   | NextCloud AIO activated — connect <https://cloud.YOUR\\_DOMAIN> |
| 1   | Auto photo sync (Android + iPhone → your private capsule)       |
| 2   | Contacts & Calendar migration from Google via DAVx⁵             |
| 4   | F-Droid + Aurora Store — apps without tracking                  |
| 5   | Organic Maps (offline GPS) + Scrambled Exif (photo privacy)     |
| 7   | 🎉 Liberation complete → invitation to U.SOCIETY                |

**Included services:**

* ✅ **NextCloud 128 Go** (private cloud, no GAFAM)
* ✅ **NOSTR Identity** (decentralized social without algorithm)
* ✅ **uDRIVE IPFS** (personal distributed storage)
* ✅ **Ẑen Wallet** (each like received = 1 Ẑen)
* ✅ **#BRO AI** (local swarm intelligence)

Guide: [pad.p2p.legal/Smartphone2NextCloud](https://pad.p2p.legal/Smartphone2NextCloud#) · [CopyLaRadio Blog](https://www.copylaradio.com/blog/blog-1/post/le-pas-a-pas-qui-libere-du-grand-mechant-cloud-36)

***

## 🎯 MineLife & WoTx2: Decentralized Skills

**MineLife** is a Minecraft-inspired interface where skills are **crafted by peers**, not awarded by institutions.

```
Step 1 — Explore the Atelier → browse available skill recipes (Kind 30500)
Step 2 — Aspire X1          → publish a learning request (Kind 30501)
Step 3 — Contact holders    → DM your peers via NOSTR (Kind 4)
Step 4 — Get validated      → 3× peer reactions (Rule A) or 1× senior endorsement (Rule B)
Step 5 — Self-sign your cert → publish Kind 30503 → unlocks composite crafts
```

**Composite crafting**: `linux X1 + docker X1 + bash X1` → craft `DevOps Station X1`. No committee. No fees. Verified on the NOSTR relay. Recognized across the constellation.

> 📖 [MineLife How-To](/astroport.one/docs/how-to/minelife.md) · [WoTx2 Philosophy](/astroport.one/docs/explanation/minelife_wikipedia_wot.md)

**Roaming**: A MULTIPASS created on station A authenticates on station B via NIP-42, and its uDRIVE files sync back home automatically — so your identity and storage follow you across the constellation.

> 📖 [Roaming uDRIVE Sync](/astroport.one/docs/reference/roaming_udrive_sync.md)

***

## 🌱 ReFi & UMAP: The Ecological Land Registry

The world map in Astroport.ONE is not just a display — it is a **decentralized land registry** that rewards biodiversity.

The planet surface is divided into **UMAP tiles** of 0.01° × 0.01° (≈ 1.1 km²). Each tile has its own:

* NOSTR identity (`did:nostr:<hex>`) — a sovereign DID anchored to its GPS coordinates
* Ğ1 wallet — can receive and send ẐEN
* ORE contract — an ecological commitment (e.g. "maintain 80% forest cover")

**How it works:**

1. Citizens photograph plants, insects, and local resources with `plantnet.html`
2. PlantNet AI identifies the species — each observation feeds the tile's `biodiversity_score`
3. Score ≥ 0.7 → the ORE contract activates → ẐEN rewards are issued automatically

```
Species observed  × 2 pts  (max 70)
Total observations × 0.5 pts (max 20)
Unique observers   × 2 pts  (max 10)
─────────────────────────────────────
Score [0–1]  →  ≥ 0.7 → ORE active → ẐEN rewards
```

This is **Regenerative Finance (ReFi)** made tangible: proof of biodiversity = proof of payment. No committee, no grant application — just verified observations on the NOSTR relay.

> 📖 [ORE System — Philosophy](/astroport.one/docs/explanation/ore_system.md) · [PlantNet How-To](/astroport.one/docs/how-to/plantnet_system.md)

***

## 🤖 #BRO: The Swarm Intelligence

**#BRO** (Brain Robot Online) is the **collective AI** of the Astroport constellation:

* 🧠 **Local & private**: runs on each station via Ollama (no data sent to OpenAI)
* 🎨 **Image generation** for your Nostr publications
* 📝 **Article writing** on your decentralized blog
* 🔍 **Semantic search** in your constellation
* 🌙 **Night work**: #BRO collects and analyzes while you sleep

Unlike ChatGPT, #BRO is a **swarm of intelligences** — each station contributes, the collective grows. The more Captains, the more powerful.

```bash
# From Nostr, any message tagged:
#BRO resume my constellation messages
#BRO create an image of: [description]
#BRO weekly report

# Local API (Ollama):
curl http://127.0.0.1:11434/api/generate -d '{"model":"gemma3","prompt":"Bonjour BRO"}'
```

***

## ⚡ Astrosystemctl: The P2P Service Mesh

No VPN. No reverse proxy. No central server. Captains share GPU power directly between stations using **IPFS P2P tunnels**.

```bash
# Discover available Brain-Nodes in the constellation
astrosystemctl list-remote

# Connect to a remote Ollama (GPU) — instant tunnel to port 11434
astrosystemctl connect ollama

# Make the tunnel persistent across reboots (watchdog managed)
astrosystemctl enable ollama

# Full dashboard: local services, active tunnels, Power-Score
astrosystemctl status
```

A 🌿 Light node (Raspberry Pi, no GPU) can tunnel into a 🔥 Brain node's ComfyUI, Ollama, or Qdrant — transparent to the application. `DRAGON_p2p_ssh.sh` discovers and announces services nightly; `astrosystemctl` is the remote control.

> 📖 [Full how-to guide](/astroport.one/docs/how-to/astrosystemctl.md) — connect, enable, disable, local panel

***

## 🍪 Personal Scraping: Your Archives, Your Rules

Astroport.ONE automatically harvests content from platforms you authorize via a **cookie-based scraper system** — no third-party service, no subscription, just your own data:

* Drop a `.domain.cookie` file (Netscape format) in `~/.zen/game/nostr/$PLAYER/`
* The matching `IA/domain.sh` scraper runs daily — zero interaction needed
* **YouTube**: archives video + metadata directly to your uDRIVE IPFS
* **Leboncoin, and others**: watch listings, extract structured data, store locally
* Missing scrapers for a domain? The system **notifies the developer automatically** — community contributions welcome

**Quick start (YouTube):** install the [Open-With Firefox](/astroport.one/docs/how-to/youtube_archive_open_with.md) extension to archive any YouTube video in one click to your personal IPFS uDRIVE.

> 📖 [YouTube & Video Management](/astroport.one/docs/how-to/readme_youtube.md) · [Cookie Scraper Architecture](/astroport.one/docs/reference/domain_scrapers.md)

***

## 🛠️ Installation

### Option A — Docker Webtop (recommended to try without modifying your system)

```bash
cd docker/
docker compose -f docker-compose.webtop.yml up -d
# → http://localhost:3000  (desktop in browser, Ubuntu XFCE + KasmVNC)
```

The webtop container runs `install.sh` automatically at first start (10–30 min). All profiles work (`nextcloud`, `ai-company`) because the Docker socket is shared with the host via sibling-container architecture.

### Option A2 — VirtualBox / Vagrant (isolated VM, all features)

```bash
# Prerequisites: VirtualBox + Vagrant installed on your machine
cd docker/
vagrant up                            # Standard install (ORIGIN mode)
PROFILE=nextcloud vagrant up          # + NextCloud AIO
PROFILE=ai-company vagrant up      # + AI Stack (Open WebUI)

vagrant ssh                           # Connect to the VM
vagrant halt                          # Stop the VM
```

A full **Ubuntu 22.04 VM** with Astroport.ONE pre-installed. All port forwarding is configured automatically. Recommended for:

* Testing before bare-metal install
* Development and debugging
* Running Astroport alongside your main OS

> 💡 **Networking tip**: Use `VM_NETWORK=bridge vagrant up` for full IPFS P2P discovery.

### Option B — Direct install (bare-metal Linux — Debian/Ubuntu/Mint)

```bash
bash <(curl -sL https://install.astroport.com)
```

### Installation Profiles

```bash
# Standard — IPFS + Nostr + UPassport + Astroport
bash install.sh

# + NextCloud AIO (private cloud 128 Go, ZENCard ready)
bash install.sh "" "" "" nextcloud

# + AI Swarm Stack (Ollama + Dify AI + OpenWebUI + Qdrant)
bash install.sh "" "" "" ai-company

# + rnostr dev (Rust relay, replace strfry — experimental)
bash install.sh "" "" "" dev
```

| Profile      | Description                                                              | Status            |
| ------------ | ------------------------------------------------------------------------ | ----------------- |
| `standard`   | IPFS · Nostr strfry · UPassport · GPG · gcli                             | ✅ Production      |
| `nextcloud`  | Standard + NextCloud AIO (128 Go cloud, BTRFS storage)                   | ✅ Stable          |
| `ai-company` | Standard + Dify AI + OpenWebUI + +Qdrant AI stack                        | ⚠️ Experimental   |
| `dev`        | Standard + rnostr Rust relay (migration from strfry writePolicy plugins) | 🔧 In development |

### After Installation: What's Running

```
http://localhost:12345   Astroport station map
http://localhost:54321   UPassport (MULTIPASS creation, ZENCard)
http://localhost:8080    IPFS Gateway
ws://localhost:7777      NOSTR strfry relay (NIP-101)
http://localhost:33101   G1Billet (service shut down TrocZen is the next G1BILLET)
http://localhost:81      Nginx Proxy Manager admin (NPM)
http://localhost:8443    NextCloud AIO setup (nextcloud profile)
http://localhost:11434   Ollama API (ai-company profile)
http://localhost:8010    Dify AI AI agents (ai-company)
```

### Verified Technologies

After installation, you can check:

```bash
# Infrastructure
docker ps --format "table {{.Names}}\t{{.Status}}"

# Runtime
node --version && npm --version
deno --version          # yt-dlp JavaScript runtime
tiddlywiki --version    # Personal wiki engine

# Crypto
ipfs swarm peers | wc -l   # IPFS connectivity
```

***

## 💾 Storage Architecture: BTRFS Recommended

For production stations, mount a **dedicated BTRFS disk** at `/nextcloud-data`:

```bash
# Format and mount
sudo mkfs.btrfs -L astrodata /dev/sdX
sudo mount -o compress=zstd,noatime /dev/sdX /nextcloud-data

# /etc/fstab (persistent)
UUID=$(blkid -s UUID -o value /dev/sdX)
echo "UUID=$UUID /nextcloud-data btrfs compress=zstd,noatime 0 0" | sudo tee -a /etc/fstab

# Migrate your data
~/.zen/Astroport.ONE/stop.sh
sudo mv ~/.zen /nextcloud-data/zen   && ln -s /nextcloud-data/zen ~/.zen
sudo mv ~/.ipfs /nextcloud-data/ipfs && ln -s /nextcloud-data/ipfs ~/.ipfs
~/.zen/Astroport.ONE/start.sh
```

Why BTRFS? **Copy-on-Write** = IPFS never rewrites blocks → perfect match. **Snapshots** for instant NextCloud backups. **zstd compression** \~25% space savings.

```
/nextcloud-data/
  zen/          ← ~/.zen symlink (Astroport data, TW, game, players)
  ipfs/         ← ~/.ipfs symlink (IPFS blocks, 50-500 Go)
  nextcloud/    ← NextCloud AIO volumes (user data 128 Go each)
```

***

## 💰 The Cooperative Economy: The 3×1/3 Model

Every Ẑen collected by the station is distributed **automatically and transparently** by the code:

```
Ẑen collected     →  1/3 Treasury (cooperative reserve)
(no human decision)   1/3 R&D (open-source development)
                      1/3 Common Assets (land, forests, infrastructure)
```

**Weekly payments** (automated by `PLAYER.refresh.sh` and `NOSTRCARD.refresh.sh`):

| Source           | Amount      | Recipient               |
| ---------------- | ----------- | ----------------------- |
| MULTIPASS rental | 1 Ẑen/week  | Captain's station       |
| ZENCard rental   | 4 Ẑen/week  | Captain's station       |
| Armateur PAF     | 14 Ẑen/week | Host (from cooperative) |
| Capitaine PAF    | 28 Ẑen/week | Certified Captain       |
| Like received    | 1 Ẑen/like  | Content creator         |

All transactions are visible on the **Ğ1 blockchain** (Duniter v1/v2s). Full transparency, no hidden business model.

### ⚖️ Automated Tax Compliance

Each weekly ZENCard rental is split automatically at payment time — no human intervention, no accountant:

```
ZENCard rent (4 Ẑ)
  ├── HT portion  → Captain's cooperative wallet  (PAYforSURE.sh)
  └── TVA portion → UPLANET.IMPOT wallet          (PAYforSURE.sh)
```

The `TVA_RATE` is configurable per station (default 0%). The `UPLANET.IMPOT` wallet is deterministically derived from the station's name — it is a real Ğ1 address, auditable on-chain. If TVA collection is active, the split is atomic: both transfers are executed in the same script cycle or neither is.

This makes Astroport.ONE the first cooperative software with **on-chain tax collection built into the payment loop**.

### 🎲 CoinFlip: The Saint Petersburg Game

Want to earn Ẑen in a single click? Try the **CoinFlip** — a gamified implementation of the [Saint Petersburg Paradox](https://en.wikipedia.org/wiki/St._Petersburg_paradox):

* Stake **1 Ẑen** per game
* **PILE** (heads) → your pot doubles: 2, 4, 8, 16 Ẑen…
* **FACE** (tails) → game over; your stake goes to the **Captain's wallet** as a ludic retribution
* **Cash out anytime** to collect your winnings

The Captain benefits from every lost game — a transparent, gamified micro-contribution that funds the infrastructure hosting your station.

> 🎮 Play at `http://localhost:12345/coinflip` — Practice mode (no real Ẑen) available without login.

> 📜 Legal framework: [LEGAL.md](/astroport.one/legal.md) — Constitution of the UPlanet Ecosystem

***

## 🌐 Technical Architecture

```
┌─────────────────────────────────────────────────────────┐
│                    UPlanet ẐEN Station                   │
│                                                          │
│  IPFS (Kubo)    ←→  Astroport.ONE  ←→  Nostr (strfry)  │
│     ↕                    ↕                   ↕          │
│  uDRIVE          TiddlyWiki (TW5)         NIP-101       │
│  (IPNS)         Personal wiki/blog     Write Policy     │
│                                         Bash plugins    │
│  NextCloud AIO  ←→  Nginx Proxy Mgr  ←→  UPassport     │
│  (128 Go/user)      (SSL auto)           (FastAPI)      │
│                                                          │
│  #BRO AI Stack (ai-company) :                        │
│  Ollama → LiteLLM → Dify AI → OpenWebUI → Qdrant       │
│                                                          │
│  Crypto: Ğ1 (Duniter v2s) · NOSTR (Ed25519) · IPFS     │
│  Identity: MULTIPASS = SSSS 2/3 + DID W3C               │
└─────────────────────────────────────────────────────────┘
```

**Sovereign feedback & analytics — zero GAFAM:**

| Feature                         | Mechanism                                                                                                                                    | Storage                                      |
| ------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------- |
| **Bug reports** (`feedback.js`) | Captures console errors, scrubs private keys/tokens, signs via NIP-07 (NOSTR), POSTs to `/api/feedback` → GitHub issue created automatically | `/api/feedback` endpoint (UPassport)         |
| **Web analytics** (`astro.js`)  | Page views + interactions encrypted with NIP-44, published as NOSTR **Kind 10600** on your local relay                                       | Local relay, never leaves your constellation |

> 📖 [Analytics Architecture](/astroport.one/docs/explanation/analytics.md)

**Key scripts** (the "heartbeat" of the station):

| Script                  | Role                                                | Frequency   |
| ----------------------- | --------------------------------------------------- | ----------- |
| `20h12.process.sh`      | Daily economic cycle (ZINEs, payments, IPNS)        | Daily 20h12 |
| `NOSTRCARD.refresh.sh`  | MULTIPASS update, IPNS publication, cookie scrapers | Daily       |
| `PLAYER.refresh.sh`     | ZENCard payments, ZINE dispatch, TiddlyWiki refresh | Daily       |
| `TW.refresh.sh`         | Personal wiki sync, N2 constellation                | Daily       |
| `NOSTR.UMAP.refresh.sh` | UMap geo-posts, N2 social graph                     | Daily       |
| `DRAGON_p2p_ssh.sh`     | P2P SSH tunnel discovery (swarm.key required)       | On start    |

***

## 🔧 For Developers: `dev` Profile and rnostr Migration

The `dev` profile is a **foundational project**: migrating the Nostr write-policy plugins from Bash to Rust.

**Current state (strfry Bash plugins):**

```
NIP-101/relay.writePolicy.plugin/all_but_blacklist.sh  ← main filter
NIP-101/relay.writePolicy.plugin/filter/1.sh           ← text events
NIP-101/relay.writePolicy.plugin/filter/9735.sh        ← Ẑen payments (zaps)
NIP-101/relay.writePolicy.plugin/filter/30023.sh       ← long-form articles
...
```

Each plugin receives Nostr events via stdin/stdout JSON, classifies users (`nobody` / `player` / `uplanet`), manages the blacklist and `amisOfAmis.txt`.

**Target (rnostr Rust):**

* Rewrite as rnostr `config.toml` rules + WASM plugins
* Performance ×10-100 vs bash
* Native Qdrant semantic integration
* LLM classification (local Ollama)

🐉 **Calling Rust/DRAGON developers** — contact: <support@qo-op.com> — Subject: `DRAGON rnostr migration`

**Also wanted:** Integration of the ai-company AI stack into the Astroport ecosystem:

* Automatic #BRO responses via OpenWebUI/Dify AI triggered by Nostr events
* Subject: `DRAGON ai-company` on Nostr or <support@qo-op.com>

**Tool: `code_assistant`** (local AI code review):

```bash
~/.zen/Astroport.ONE/code_assistant NOSTRCARD.refresh.sh --kvbasename refactor1
```

***

## 🖥️ Docker Webtop (VDI — Browser Desktop)

Try Astroport.ONE without modifying your system — full Ubuntu XFCE desktop in your browser via **KasmVNC**:

```bash
cd docker/
docker compose -f docker-compose.webtop.yml up -d
# → http://localhost:3000   (HTTP)
# → https://localhost:3001  (HTTPS — recommended)
```

**Features:**

* 🖥️ Full Ubuntu XFCE desktop accessible from any browser
* 🐳 Docker socket shared with host — all profiles work (`nextcloud`, `ai-company`)
* 📋 Bidirectional clipboard, WebRTC video, touch screen support
* 🏗️ Multi-arch: amd64, arm64, arm/v7 (Raspberry Pi, Mac M-series)
* 🔄 Maintained by [linuxserver.io](https://docs.linuxserver.io/images/docker-webtop/) — no custom build needed
* 🔒 Containers launched from webtop = **sibling containers** on host Docker (not DinD)

```bash
# UPlanet ẐEN mode (with swarm.key) + NextCloud:
ASTRO_DOMAIN=mydomain.com \
CAPTAIN_EMAIL=me@example.com \
INSTALL_PROFILE=nextcloud \
IPFS_SWARM_KEY=<64-char-hex> \
docker compose -f docker-compose.webtop.yml up -d
```

> 🔒 **Remote access**: use an SSH tunnel for security: `ssh -L 3000:localhost:3000 user@YOUR_SERVER_IP` → then open `http://localhost:3000`

***

## 📚 Documentation Index

| Document                                                                                         | Content                                                                  |
| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------ |
| [ARCHITECTURE.md](/astroport.one/architecture.md)                                                | Complete technical overview, data flows, economic models                 |
| [LEGAL.md](/astroport.one/legal.md)                                                              | Constitution of the UPlanet Ecosystem · Cooperative governance           |
| [ANARCHITECTE.md](/astroport.one/anarchitecte.md)                                                | Philosophy · Vision · Digital sovereignty ↔ ecological regeneration      |
| [docs/explanation/ZEN.ECONOMY.v3.md](/astroport.one/docs/explanation/zen.economy.v3.md)          | 3×1/3 automated payments · TVA provisions · French cooperative law       |
| [UPLANET.official.README.md](/astroport.one/uplanet.official.readme.md)                          | Capital transfers management · Locataire/Sociétaire/Infrastructure       |
| [docs/explanation/DID\_IMPLEMENTATION.md](/astroport.one/docs/explanation/did_implementation.md) | W3C DID · SSSS 3/2 key management · twin keys multi-blockchain           |
| [docs/explanation/ORE\_SYSTEM.md](/astroport.one/docs/explanation/ore_system.md)                 | Ecological obligations · Geographic DIDs · Environmental smart contracts |
| [docs/explanation/ORACLE\_SYSTEM.md](/astroport.one/docs/explanation/oracle_system.md)           | WoT competency certifications · Verifiable Credentials · Nostr events    |
| [docs/explanation/README.NostrTube.md](/astroport.one/docs/explanation/readme.nostrtube.md)      | Decentralized video platform · NOSTR + IPFS · Theater mode               |
| [IA/README.md](/astroport.one/ia.md)                                                             | #BRO AI Assistant · 12-slot memory · Generation capabilities             |
| [docs/reference/COOKIE\_SYSTEM.md](/astroport.one/docs/reference/cookie_system.md)               | Universal cookie management · Authenticated web scraping                 |

***

## 🤝 Join the Constellation

**Ways to contribute:**

1. **🌱 Try it** — install ORIGIN mode in one command, no commitment
2. **☁️ Subscribe ZENCard** — de-google your life, support the cooperative
3. **⚓ Become Captain** — run a station, earn Ẑen, train new members
4. **🐉 Join U.SOCIETY** — annual sponsorship, governance rights, DRAGON access
5. **💻 Code** — Rust (rnostr), Python (AI), Bash — all welcome
6. **🌍 Spread the word** — Star the repo, share the ZINEs

**CopyLaRadio SCIC cooperative:**

* [OpenCollective](https://opencollective.com/monnaie-libre) — financial transparency
* <support@qo-op.com> — Captain training, U.SOCIETY
* [forum.monnaie-libre.fr](https://forum.monnaie-libre.fr) — community
* [copylaradio.com](https://www.copylaradio.com) — cooperative website
* [Ğ1 — Monnaie Libre](https://monnaie-libre.fr) — the free currency powering UPlanet

> **AGPL-3.0** — Free software, auditable code, no hidden business model. The code is the law. The cooperative is the structure. You are the network.

***

*Astroport.ONE — G1FabLab / CopyLaRadio SCIC —* [*github.com/papiche/Astroport.ONE*](https://github.com/papiche/Astroport.ONE)
