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:
@@ -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
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user