Skip to content

vauchi/web-demo

Repository files navigation

Mirror: This repo is a read-only mirror of gitlab.com/vauchi/web-demo. Please open issues and merge requests there.

Pipeline REUSE

Note

You're early — and that's the point. Vauchi is pre-alpha and under heavy development: not yet ready for production, and APIs may change without notice. If you're here now, you can help shape it — try it, break it, and tell us what's missing.

Vauchi Web Demo

Browser-based demo of Vauchi — living contact cards, exchanged in person.

Built with SolidJS + WASM. Core compiled to wasm32-unknown-unknown with hybrid WebCrypto + RustCrypto crypto backend.

Prerequisites

  • Node.js 18+
  • Rust 1.78+ with wasm32-unknown-unknown target
  • wasm-pack

Build

# Build WASM module
cd wasm && wasm-pack build --target web && cd ..

# Build web app
npm install
npm run build

Development

npm run dev

Architecture

This app implements the core-driven UI contract:

  • ScreenRenderer renders ScreenModel from core (JSON via WASM bridge)
  • 14 SolidJS components map to core's Component enum variants
  • ActionHandler maps user input to UserAction JSON
  • WASM bridge replaces Tauri IPC with direct wasm-bindgen calls

Crypto uses hybrid WebCrypto (browser-native for 7/9 primitives) + RustCrypto (ChaCha20-Poly1305, Argon2 compiled to WASM).

Relay

Connects to demo.relay.vauchi.app (1h TTL, 100 user cap, nightly wipe).

License

GPL-3.0-or-later

About

Vauchi — Browser-based WASM demo (mirror of gitlab.com/vauchi)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors