How sandip1402/keeper-vault works
Keeper Vault is a local-first credential manager. A user sets up or unlocks a vault in the main screen, then manages and filters credentials; the screen persists changes through the vault module. The vault derives keys and encrypts credential data, using platform-appropriate local storage and optional biometric unlock. The app shell supplies shared providers and error recovery. The excerpts show the main workflow and storage calls, but the README is empty and several UI details are unsampled, so the graph avoids guessing finer-grained screen interactions.
Main entry points: index.tsx Vault screen · vault.ts Vault operations · ErrorBoundary.tsx Error boundary · useColors.ts Color selection
Components 16
App interface
- Vault screen
app/index.tsx - Credential manager
app/index.tsx - Appearance settings
app/index.tsx
Vault security
- Vault operations
src/vault.ts - Key derivation and encryption
src/vault.ts
Local persistence
- Encrypted vault data
src/vault.ts - Secure settings
src/vault.ts
App foundation
- Root app shell
app/_layout.tsx - Error boundary
components/ErrorBoundary.tsx - Error recovery screen
components/ErrorFallback.tsx - Color selection
hooks/useColors.ts - Color palettes
constants/colors.ts
Other components
- Vault user
- AsyncStorage
- Expo SecureStore
- Device authentication
Connections 16
- Vault user → Vault screen: uses
app/index.tsx - Vault screen → Vault operations: sets up and unlocks
app/index.tsx - Vault screen → Credential manager: manages credentials
app/index.tsx - Vault screen → Appearance settings: sets appearance
app/index.tsx - Vault screen → Vault operations: saves changes
app/index.tsx - Vault operations → Key derivation and encryption: derives and encrypts
src/vault.ts - Vault operations → Encrypted vault data: reads and writes
src/vault.ts - Vault operations → Secure settings: reads and writes
src/vault.ts - Encrypted vault data → AsyncStorage: stored in
src/vault.ts - Secure settings → Expo SecureStore: stored in
src/vault.ts - Vault operations → Device authentication: requests authentication
src/vault.ts - Secure settings → Device authentication: requires authentication
src/vault.ts - Root app shell → Error boundary: wraps app
app/_layout.tsx - Error boundary → Error recovery screen: shows on error
components/ErrorBoundary.tsx - Vault screen → Color selection: selects colors
app/index.tsx - Color selection → Color palettes: reads palettes
hooks/useColors.ts