How hariharen9/scync works
Scync is a cross-platform, zero-knowledge secrets manager. Its main workflow is sign in, set up or unlock the encrypted vault, then find and use a secret; project organization, import/export, SSH keys, TOTP, certificates, and secure sharing extend that workflow. The web app routes through authentication and vault guards, while shared UI state and core cryptography/cloud modules support the product. Some feature wiring is documented in the README but its implementation was not sampled, so those subsystems are represented without speculative call edges.
Main entry points: App.tsx Web app · VaultGuard.tsx Vault guard · Dashboard.tsx Secret dashboard · crypto.ts Encryption and crypto
Components 27
App clients
- Web app
apps/web/src/App.tsx - Desktop shell
apps/desktop/src/main.ts
Access and vault
- Auth guard
packages/ui/src/components/AuthGuard.tsx - Sign in
apps/web/src/pages/AuthPage.tsx - Vault setup
apps/web/src/pages/SetupPage.tsx - Vault unlock
apps/web/src/pages/UnlockPage.tsx - Vault guard
packages/ui/src/components/VaultGuard.tsx
Secret workflows
- Vault workspace
apps/web/src/pages/VaultPage.tsx - Secret dashboard
packages/ui/src/components/Dashboard.tsx - Vault state
packages/ui/src/stores/vaultStore.ts - Project state
packages/ui/src/stores/projectStore.ts - Service state
packages/ui/src/stores/serviceStore.ts - Environment import
packages/ui/src/components/EnvImportModal.tsx - TOTP manager
packages/ui/src/components/TOTPDashboard.tsx - SSH manager
packages/ui/src/components/SSHManagerDashboard.tsx - Certificate manager
packages/ui/src/components/CertificateDashboard.tsx - Share management
packages/ui/src/stores/shareStore.ts - Share consumption
packages/ui/src/components/ShareConsumePage.tsx
Core and services
- Encryption and crypto
packages/core/src/crypto.ts - Biometric unlock
packages/core/src/webauthn.ts - TOTP utilities
packages/core/src/totp.ts - SSH utilities
packages/core/src/ssh.ts - Certificate utilities
packages/core/src/certificates.ts - Firebase
packages/core/src/firebase.ts - Firestore data
packages/core/src/firestore.ts
Other components
- Developer
- System clipboard
Connections 21
- Developer → Web app: opens
- Web app → Auth guard: renders
- Auth guard → Sign in: shows when unauthenticated
- Web app → Vault guard: renders after auth
- Vault guard → Vault setup: shows for setup
- Vault guard → Vault unlock: shows when locked
- Vault guard → Vault workspace: shows when unlocked
- Vault workspace → Secret dashboard: renders
- Secret dashboard → Vault state: reads vault state
- Secret dashboard → Project state: reads project state
- Service state → Firestore data: subscribes and writes
- Web app → Share consumption: renders share route
- Share consumption → Share management: consumes shared data
- Vault setup → Encryption and crypto: sets up encryption
- Vault unlock → Encryption and crypto: unlocks vault
- Biometric unlock → Encryption and crypto: derives and uses key
- TOTP manager → TOTP utilities: uses TOTP operations
- SSH manager → SSH utilities: uses SSH operations
- Certificate manager → Certificate utilities: parses certificates
- Desktop shell → Web app: hosts app
- Developer → System clipboard: copies secret