Vault is a secure, cross-platform password management solution that enables users to safely store and sync their passwords across multiple devices. Built with React Native, Expo and Firebase, it provides military-grade encryption while maintaining a seamless user experience.
- User Authentication (for syncing, before masterkey generation)
- Password Encryption and Decryption (XOR based encryption based on SHA256 based salt)
- Passwords organized in Folders
- Password Generation (Random password generation containing alphabets(Both cases), numbers and special characters)
- Syncing across multiple devices (Everything stored encrypted in Firebase Firestors)
- Setting up master PIN, Biometric (fingerprint) and Face Landmark Detection
- PIN verification while showing password
- Copying password an username to clipboard after showing
- Fingerprint and FaceID are stored on firebase after setup but still not matched while showing password, pin is the currently the only option there
- PIN reset email
- Data Leak Alert
install node.js
Clone the repository
git clone https://github.com/HemantKumar01/Vault.git
Install the dependencies
npm i
goto scripts/firebasConfig.js
and replace the firebaseConfig with your own firebaseConfig
export const firebaseConfig = {
apiKey: "your-api-key",
authDomain: "your-auth-domain",
databaseURL:"your-database-url",
projectId: "your-project-id",
storageBucket: "your-storage-bucket",
messagingSenderId: "your-messenger-id",
appId: "your-app-id"
};
Prebuild Android or IOS (For react-native-vision-camera
to work)
npx expo run:android
npx expo run:ios
Run the project (after prebuilding using above commands of npx expo prebuild
)
npm start