For Developers¶
Welcome to Vauchi development! This section contains everything you need to contribute.
Getting Started¶
New to the project? Start here:
- Contributing Guide — Set up your environment and learn the workflow
- Architecture Overview — Understand how the system works
- Cryptography Reference — Deep dive into encryption
Documentation¶
| Document | Description |
|---|---|
| Contributing | Development workflow, code guidelines, PR process |
| Architecture | System overview, components, data flow |
| Cryptography | Encryption algorithms, key management, protocols |
| Tech Stack | Languages, frameworks, libraries |
| Diagrams | Sequence diagrams for core flows |
Repository Structure¶
Vauchi is a multi-repo project under the vauchi GitLab group:
| Repository | Purpose |
|---|---|
vauchi/ |
Orchestrator repo (this documentation) |
core/ |
Rust workspace: vauchi-core + UniFFI bindings |
relay/ |
WebSocket relay server |
desktop/ |
Tauri + SolidJS desktop app |
ios/ |
SwiftUI app |
android/ |
Kotlin/Compose app |
features/ |
Gherkin specs |
locales/ |
i18n JSON files |
Quick Commands¶
# Clone and setup workspace
git clone git@gitlab.com:vauchi/vauchi.git
cd vauchi
just setup
# Build everything
just build
# Run all checks
just check
# Run tests
just test
# Show all commands
just help
Key Principles¶
All development follows our core principles:
- TDD mandatory — Red → Green → Refactor
- 90%+ coverage — For vauchi-core
- Real crypto in tests — No mocking
- Problem-first — Every task starts as a problem record
Getting Help¶
- Issues: GitLab Issues
- Discussions: GitHub Discussions
- Code of Conduct: Community Standards