SafeKey Vault is a mobile app to provide a secure and user-friendly way for managing passwords and sensitive accounts information.
The app aims to ensure utmost security by implementing biometric authentication for access while allowing users to create, update, and remove items containing login credentials and other notes for various accounts.
All in offline mode, without any in-cloud backup, to keep the data as safe as possible leveraging on device storage.
Additionally, it facilitates secure export/import functionalities for user convenience.
Note: Currently the only supported language is IT 🇮🇹
Integration of biometric authentication as the initial step upon app launch for robust security measures.
Create, Update, and Remove Items: Allow users to add new account items, edit existing ones, or delete items as needed, incorporating features to store email addresses, usernames, passwords, and additional notes securely.
Data are saved on device storage in a secure way via react-native-mmkv library.
MMKV is an open-source, high-performance and user-friendly mobile key-value storage framework designed for WeChat. It’s built on top of the key-value storage engine LevelDB and provides a simple API for storing and retrieving data. It also offers encryption support, leveraging on secure storage.
Biometrically Secured Export/Import: Implement secure export/import functionality ensuring encryption of data and requesting biometric authentication when performing these actions, thereby enhancing overall security. Implement QR code like Google Authenticator.
- Multi-language integration will come soon
Install dependencies and pods (for iOS only).
yarn install
# For iOS only
yarn pod:install
First, you will need to start Metro, the JavaScript bundler that ships with React Native.
To start Metro, run the following command from the root of your React Native project:
yarn start
Let Metro Bundler run in its own terminal. Open a new terminal from the root of your React Native project. Run the following command to start your Android or iOS app:
yarn run:android
# run on simulator
yarn run:ios:simulator
# OR run on real device
yarn run:ios:device
# OR run on real device in RELEASE mode
yarn run:ios:release
Some scripts are available to simplify some tasks.
- Tag the current version
- Merge on main branch and push
- Upgrade snapshot version
- Push on dev branch
# on MacOS
yarn macos:merge-upgrading-version
# on Windows
yarn windows:merge-upgrading-version
The releases are created through CodeMagic CI/CD platform:
- from main branch
- for both Android and iOS release
- pipeline defined into codemagic.yaml file