chore: rename quicproquo → quicprochat in docs, Docker, CI, and packaging

Rename all project references from quicproquo/qpq to quicprochat/qpc
across documentation, Docker configuration, CI workflows, packaging
scripts, operational configs, and build tooling.

- Docker: crate paths, binary names, user/group, data dirs, env vars
- CI: workflow crate references, binary names, artifact names
- Docs: all markdown files under docs/, SDK READMEs, book.toml
- Packaging: OpenWrt Makefile, init script, UCI config (file renames)
- Scripts: justfile, dev-shell, screenshot, cross-compile, ai_team
- Operations: Prometheus config, alert rules, Grafana dashboard
- Config: .env.example (QPQ_* → QPC_*), CODEOWNERS paths
- Top-level: README, CONTRIBUTING, ROADMAP, CLAUDE.md
This commit is contained in:
2026-03-07 18:46:43 +01:00
parent a710037dde
commit 2e081ead8e
179 changed files with 1645 additions and 1645 deletions

View File

@@ -1,12 +1,12 @@
# Build Your Own SDK
This guide explains how to implement a quicproquo client SDK in any language.
This guide explains how to implement a quicprochat client SDK in any language.
## Two Approaches
### Approach 1: C FFI Wrapper (recommended)
The simplest path. Wrap `libquicproquo_ffi` using your language's FFI mechanism (e.g., Python CFFI, Ruby FFI, JNI, Swift C interop).
The simplest path. Wrap `libquicprochat_ffi` using your language's FFI mechanism (e.g., Python CFFI, Ruby FFI, JNI, Swift C interop).
**Pros**: Full Rust crypto stack (MLS, OPAQUE, hybrid KEM) with zero reimplementation.
**Cons**: Requires shipping a native library, synchronous API only.
@@ -26,7 +26,7 @@ Implement the QUIC transport and protobuf serialization natively in your languag
Open a QUIC connection to the server:
- **ALPN**: `qpq`
- **ALPN**: `qpc`
- **TLS**: 1.3 with server certificate verification
- **Port**: 5001 (default)
@@ -64,7 +64,7 @@ payload = data[10 : 10 + length]
### 3. Protobuf Messages
Generate or hand-write protobuf encode/decode for the message types in `proto/qpq/v1/*.proto`.
Generate or hand-write protobuf encode/decode for the message types in `proto/qpc/v1/*.proto`.
Minimum required messages for a basic client:
@@ -96,7 +96,7 @@ Client Server
Core operations (implement in order):
- [ ] **Connect**: Open QUIC connection with TLS 1.3 + ALPN `qpq`
- [ ] **Connect**: Open QUIC connection with TLS 1.3 + ALPN `qpc`
- [ ] **Health**: Send `HealthRequest` (method 802), verify server is running
- [ ] **Register**: OPAQUE registration (methods 100-101)
- [ ] **Login**: OPAQUE login (methods 102-103), store session token
@@ -146,7 +146,7 @@ Study these SDKs for patterns:
- **Go** (`sdks/go/`): Native QUIC + Cap'n Proto, full OPAQUE flow
- **Python** (`sdks/python/`): Native QUIC + Protobuf v2 wire format
- **TypeScript** (`sdks/typescript/`): WebSocket bridge, WASM crypto
- **C FFI** (`crates/quicproquo-ffi/`): Synchronous wrapper
- **C FFI** (`crates/quicprochat-ffi/`): Synchronous wrapper
## Testing
@@ -154,7 +154,7 @@ Test your SDK against a local server:
```sh
# Start the server
cargo run -p quicproquo-server
cargo run -p quicprochat-server
# Run your SDK's tests
```