Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 50acbf7

Browse files
committed
docs: Move Installation and Quick Start above Table of Contents
Promotes Installation and Quick Start to top-level sections placed between Key Features and Table of Contents for faster onboarding. Co-Authored-By: claude-flow <[email protected]>
1 parent 0ebd6be commit 50acbf7

1 file changed

Lines changed: 156 additions & 156 deletions

File tree

README.md

Lines changed: 156 additions & 156 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,162 @@ docker run -p 3000:3000 ruvnet/wifi-densepose:latest
5757

5858
---
5959

60+
## 📦 Installation
61+
62+
<details>
63+
<summary><strong>Guided Installer</strong> — Interactive hardware detection and profile selection</summary>
64+
65+
```bash
66+
./install.sh
67+
```
68+
69+
The installer walks through 7 steps: system detection, toolchain check, WiFi hardware scan, profile recommendation, dependency install, build, and verification.
70+
71+
| Profile | What it installs | Size | Requirements |
72+
|---------|-----------------|------|-------------|
73+
| `verify` | Pipeline verification only | ~5 MB | Python 3.8+ |
74+
| `python` | Full Python API server + sensing | ~500 MB | Python 3.8+ |
75+
| `rust` | Rust pipeline (~810x faster) | ~200 MB | Rust 1.70+ |
76+
| `browser` | WASM for in-browser execution | ~10 MB | Rust + wasm-pack |
77+
| `iot` | ESP32 sensor mesh + aggregator | varies | Rust + ESP-IDF |
78+
| `docker` | Docker-based deployment | ~1 GB | Docker |
79+
| `field` | WiFi-Mat disaster response kit | ~62 MB | Rust + wasm-pack |
80+
| `full` | Everything available | ~2 GB | All toolchains |
81+
82+
```bash
83+
# Non-interactive
84+
./install.sh --profile rust --yes
85+
86+
# Hardware check only
87+
./install.sh --check-only
88+
```
89+
90+
</details>
91+
92+
<details>
93+
<summary><strong>From Source</strong> — Rust (primary) or Python</summary>
94+
95+
```bash
96+
git clone https://github.com/ruvnet/wifi-densepose.git
97+
cd wifi-densepose
98+
99+
# Rust (primary — 810x faster)
100+
cd rust-port/wifi-densepose-rs
101+
cargo build --release
102+
cargo test --workspace
103+
104+
# Python (legacy v1)
105+
pip install -r requirements.txt
106+
pip install -e .
107+
108+
# Or via pip
109+
pip install wifi-densepose
110+
pip install wifi-densepose[gpu] # GPU acceleration
111+
pip install wifi-densepose[all] # All optional deps
112+
```
113+
114+
</details>
115+
116+
<details>
117+
<summary><strong>Docker</strong> — Pre-built images, no toolchain needed</summary>
118+
119+
```bash
120+
# Rust sensing server (132 MB — recommended)
121+
docker pull ruvnet/wifi-densepose:latest
122+
docker run -p 3000:3000 -p 3001:3001 -p 5005:5005/udp ruvnet/wifi-densepose:latest
123+
124+
# Python sensing pipeline (569 MB)
125+
docker pull ruvnet/wifi-densepose:python
126+
docker run -p 8765:8765 -p 8080:8080 ruvnet/wifi-densepose:python
127+
128+
# Both via docker-compose
129+
cd docker && docker compose up
130+
131+
# Export RVF model
132+
docker run --rm -v $(pwd):/out ruvnet/wifi-densepose:latest --export-rvf /out/model.rvf
133+
```
134+
135+
| Image | Tag | Size | Ports |
136+
|-------|-----|------|-------|
137+
| `ruvnet/wifi-densepose` | `latest`, `rust` | 132 MB | 3000 (REST), 3001 (WS), 5005/udp (ESP32) |
138+
| `ruvnet/wifi-densepose` | `python` | 569 MB | 8765 (WS), 8080 (UI) |
139+
140+
</details>
141+
142+
<details>
143+
<summary><strong>System Requirements</strong></summary>
144+
145+
- **Rust**: 1.70+ (primary runtime — install via [rustup](https://rustup.rs/))
146+
- **Python**: 3.8+ (for verification and legacy v1 API)
147+
- **OS**: Linux (Ubuntu 18.04+), macOS (10.15+), Windows 10+
148+
- **Memory**: Minimum 4GB RAM, Recommended 8GB+
149+
- **Storage**: 2GB free space for models and data
150+
- **Network**: WiFi interface with CSI capability (optional — installer detects what you have)
151+
- **GPU**: Optional (NVIDIA CUDA or Apple Metal)
152+
153+
</details>
154+
155+
---
156+
157+
## 🚀 Quick Start
158+
159+
<details open>
160+
<summary><strong>First API call in 3 commands</strong></summary>
161+
162+
### 1. Install
163+
164+
```bash
165+
# Fastest path — Docker
166+
docker pull ruvnet/wifi-densepose:latest
167+
docker run -p 3000:3000 ruvnet/wifi-densepose:latest
168+
169+
# Or from source (Rust)
170+
./install.sh --profile rust --yes
171+
```
172+
173+
### 2. Start the System
174+
175+
```python
176+
from wifi_densepose import WiFiDensePose
177+
178+
system = WiFiDensePose()
179+
system.start()
180+
poses = system.get_latest_poses()
181+
print(f"Detected {len(poses)} persons")
182+
system.stop()
183+
```
184+
185+
### 3. REST API
186+
187+
```bash
188+
# Health check
189+
curl http://localhost:3000/api/v1/health
190+
191+
# Latest sensing frame
192+
curl http://localhost:3000/api/v1/sensing
193+
194+
# Vital signs
195+
curl http://localhost:3000/api/v1/vital-signs
196+
```
197+
198+
### 4. Real-time WebSocket
199+
200+
```python
201+
import asyncio, websockets, json
202+
203+
async def stream():
204+
async with websockets.connect("ws://localhost:3001/ws/sensing") as ws:
205+
async for msg in ws:
206+
data = json.loads(msg)
207+
print(f"Persons: {len(data.get('persons', []))}")
208+
209+
asyncio.run(stream())
210+
```
211+
212+
</details>
213+
214+
---
215+
60216
## 📋 Table of Contents
61217

62218
<details open>
@@ -493,162 +649,6 @@ See `vendor/ruvector/` for full source.
493649

494650
---
495651

496-
## 📦 Installation
497-
498-
<details>
499-
<summary><strong>Guided Installer</strong> — Interactive hardware detection and profile selection</summary>
500-
501-
```bash
502-
./install.sh
503-
```
504-
505-
The installer walks through 7 steps: system detection, toolchain check, WiFi hardware scan, profile recommendation, dependency install, build, and verification.
506-
507-
| Profile | What it installs | Size | Requirements |
508-
|---------|-----------------|------|-------------|
509-
| `verify` | Pipeline verification only | ~5 MB | Python 3.8+ |
510-
| `python` | Full Python API server + sensing | ~500 MB | Python 3.8+ |
511-
| `rust` | Rust pipeline (~810x faster) | ~200 MB | Rust 1.70+ |
512-
| `browser` | WASM for in-browser execution | ~10 MB | Rust + wasm-pack |
513-
| `iot` | ESP32 sensor mesh + aggregator | varies | Rust + ESP-IDF |
514-
| `docker` | Docker-based deployment | ~1 GB | Docker |
515-
| `field` | WiFi-Mat disaster response kit | ~62 MB | Rust + wasm-pack |
516-
| `full` | Everything available | ~2 GB | All toolchains |
517-
518-
```bash
519-
# Non-interactive
520-
./install.sh --profile rust --yes
521-
522-
# Hardware check only
523-
./install.sh --check-only
524-
```
525-
526-
</details>
527-
528-
<details>
529-
<summary><strong>From Source</strong> — Rust (primary) or Python</summary>
530-
531-
```bash
532-
git clone https://github.com/ruvnet/wifi-densepose.git
533-
cd wifi-densepose
534-
535-
# Rust (primary — 810x faster)
536-
cd rust-port/wifi-densepose-rs
537-
cargo build --release
538-
cargo test --workspace
539-
540-
# Python (legacy v1)
541-
pip install -r requirements.txt
542-
pip install -e .
543-
544-
# Or via pip
545-
pip install wifi-densepose
546-
pip install wifi-densepose[gpu] # GPU acceleration
547-
pip install wifi-densepose[all] # All optional deps
548-
```
549-
550-
</details>
551-
552-
<details>
553-
<summary><strong>Docker</strong> — Pre-built images, no toolchain needed</summary>
554-
555-
```bash
556-
# Rust sensing server (132 MB — recommended)
557-
docker pull ruvnet/wifi-densepose:latest
558-
docker run -p 3000:3000 -p 3001:3001 -p 5005:5005/udp ruvnet/wifi-densepose:latest
559-
560-
# Python sensing pipeline (569 MB)
561-
docker pull ruvnet/wifi-densepose:python
562-
docker run -p 8765:8765 -p 8080:8080 ruvnet/wifi-densepose:python
563-
564-
# Both via docker-compose
565-
cd docker && docker compose up
566-
567-
# Export RVF model
568-
docker run --rm -v $(pwd):/out ruvnet/wifi-densepose:latest --export-rvf /out/model.rvf
569-
```
570-
571-
| Image | Tag | Size | Ports |
572-
|-------|-----|------|-------|
573-
| `ruvnet/wifi-densepose` | `latest`, `rust` | 132 MB | 3000 (REST), 3001 (WS), 5005/udp (ESP32) |
574-
| `ruvnet/wifi-densepose` | `python` | 569 MB | 8765 (WS), 8080 (UI) |
575-
576-
</details>
577-
578-
<details>
579-
<summary><strong>System Requirements</strong></summary>
580-
581-
- **Rust**: 1.70+ (primary runtime — install via [rustup](https://rustup.rs/))
582-
- **Python**: 3.8+ (for verification and legacy v1 API)
583-
- **OS**: Linux (Ubuntu 18.04+), macOS (10.15+), Windows 10+
584-
- **Memory**: Minimum 4GB RAM, Recommended 8GB+
585-
- **Storage**: 2GB free space for models and data
586-
- **Network**: WiFi interface with CSI capability (optional — installer detects what you have)
587-
- **GPU**: Optional (NVIDIA CUDA or Apple Metal)
588-
589-
</details>
590-
591-
---
592-
593-
## 🚀 Quick Start
594-
595-
<details open>
596-
<summary><strong>First API call in 3 commands</strong></summary>
597-
598-
### 1. Install
599-
600-
```bash
601-
# Fastest path — Docker
602-
docker pull ruvnet/wifi-densepose:latest
603-
docker run -p 3000:3000 ruvnet/wifi-densepose:latest
604-
605-
# Or from source (Rust)
606-
./install.sh --profile rust --yes
607-
```
608-
609-
### 2. Start the System
610-
611-
```python
612-
from wifi_densepose import WiFiDensePose
613-
614-
system = WiFiDensePose()
615-
system.start()
616-
poses = system.get_latest_poses()
617-
print(f"Detected {len(poses)} persons")
618-
system.stop()
619-
```
620-
621-
### 3. REST API
622-
623-
```bash
624-
# Health check
625-
curl http://localhost:3000/api/v1/health
626-
627-
# Latest sensing frame
628-
curl http://localhost:3000/api/v1/sensing
629-
630-
# Vital signs
631-
curl http://localhost:3000/api/v1/vital-signs
632-
```
633-
634-
### 4. Real-time WebSocket
635-
636-
```python
637-
import asyncio, websockets, json
638-
639-
async def stream():
640-
async with websockets.connect("ws://localhost:3001/ws/sensing") as ws:
641-
async for msg in ws:
642-
data = json.loads(msg)
643-
print(f"Persons: {len(data.get('persons', []))}")
644-
645-
asyncio.run(stream())
646-
```
647-
648-
</details>
649-
650-
---
651-
652652
## 🖥️ CLI Usage
653653

654654
<details>

0 commit comments

Comments
 (0)