SecureVault is a cross-platform personal security and productivity application designed to help users securely manage important personal information in one place.
The project includes a Windows desktop application powered by Electron and an Android application powered by Capacitor. SecureVault combines password management, secure notes, financial tracking, planning, reminders, personal goals, encrypted local storage, cloud authentication, and cloud synchronization.
- Store and organize website credentials.
- Save usernames, passwords, websites, and categories.
- Search saved passwords.
- Copy usernames and passwords.
- Reveal or hide stored passwords.
- View password strength indicators.
- Organize credentials by category.
- Select multiple entries for supported bulk actions.
- Keep sensitive password data inside the protected vault.
- Create, edit, and organize personal notes.
- Search and manage saved notes.
- Pin important notes.
- Organize notes using categories and labels.
- Store sensitive information inside the protected vault.
- Move supported notes to Trash.
- Restore deleted notes where supported.
- Track income and expenses.
- Create and manage financial transactions.
- Organize financial records by category.
- Review transaction details and amounts.
- Search and manage financial records.
- Use budget-management features to monitor spending.
- Track financial information alongside other personal records.
- Create and manage budgets.
- Monitor financial categories and spending.
- Set personal savings goals.
- Track progress toward savings targets.
- Organize financial goals alongside other personal planning tools.
- Create and manage personal goals and aspirations.
- Add titles, descriptions, categories, images, and target dates.
- Track goal progress.
- Mark goals as completed or achieved.
- Search and filter goals.
- Select multiple goals for supported bulk actions.
- Move supported goals to Trash instead of immediately deleting them.
- Create scheduled reminders.
- Set reminder dates and times.
- Configure recurring reminders where supported.
- Manage reminder occurrences.
- Receive notifications where supported by the platform.
- Use planner features to organize personal tasks and schedules.
- Store and manage personal contact information.
- Organize contacts inside SecureVault.
- Keep important contact information available alongside other personal records.
- Move supported records to Trash before permanent deletion.
- Restore supported deleted records.
- Permanently delete items from Trash.
- Apply the configured retention workflow where supported.
- Select multiple records in supported sections.
- Select and deselect supported rows or cards.
- Use visual highlighting to distinguish selected items.
- Cancel selection mode and clear the current selection.
- Perform supported bulk actions on selected records.
- Password-based vault access.
- Encrypted vault data using the application's configured encryption implementation.
- Protected access to sensitive personal information.
- Local data storage for core vault functionality.
The Windows desktop version includes support for Windows Hello biometric authentication where configured.
- Biometric authentication support.
- Windows Data Protection API integration where configured.
- Additional protection for biometric-related local data.
- Desktop security features designed for supported Windows systems.
SecureVault includes cloud authentication improvements for supported versions.
- Firebase Authentication integration.
- Google sign-in support.
- User authentication state handling.
- Protected application access and cloud-connected features.
- Improved authentication flow between sign-in and vault access.
Authentication does not replace the vault's own security protections. The vault access and encryption workflow remain important for protecting sensitive user data.
SecureVault now includes cloud-related functionality for supported application versions.
- Cloud account integration.
- Cloud synchronization support.
- User-based synchronization workflows.
- Synchronization between supported devices and application versions.
- Cloud connection handling through the application's configured services.
- Cloud synchronization logic separated from the core local vault functionality.
The exact availability of cloud synchronization depends on the configured backend services, authentication state, internet connection, and application version.
The project includes a Cloudflare Worker component for cloud-related services.
The Cloudflare Worker project includes:
- Worker configuration.
- Worker source code.
- Package configuration.
- Automated worker testing.
- Wrangler configuration.
- Cloud service integration support.
The worker is located in:
cloudflare-worker/
Deployment and configuration may require a Cloudflare account and the appropriate environment configuration.
SecureVault is available as an Android application through Capacitor.
Android-related features include:
- Native Android project integration.
- Capacitor-based mobile application support.
- Firebase integration for Android.
- Google Services configuration.
- Cloud authentication support.
- Cloud synchronization support.
- Mobile access to SecureVault features.
The Android project is located in:
android/
Android-specific configuration includes:
android/app/google-services.json
This file contains Firebase configuration required for the configured Android application.
The Windows desktop version is powered by Electron.
Features include:
- Windows desktop application packaging.
- React-based user interface.
- Electron application integration.
- Automatic application startup configuration.
- Local application services.
- System tray and background operation where configured.
- Windows Hello support where configured.
- Windows installer generation through electron-builder.
- Offline access to core local functionality.
The Windows installer can be built using:
npm run distThe generated files are typically placed in:
release/
SecureVault is designed so that core vault functionality can operate locally.
Supported local functionality includes:
- Local vault data storage.
- Local encrypted data handling.
- Offline access to core features.
- Desktop application functionality without requiring continuous internet access.
Some features require an internet connection, including:
- Google sign-in.
- Firebase Authentication.
- Cloud synchronization.
- Cloud-connected services.
SecureVault uses the following technologies:
- React
- JavaScript
- TypeScript
- Vite
- HTML
- CSS
- Electron
- electron-builder
- Capacitor
- Android
- Gradle
- Firebase
- Firebase Authentication
- Google Authentication
- Cloud synchronization services
- Cloudflare Workers
- Node.js
- npm
- Express where configured
To run the project from source, you need:
- Node.js
- npm
- Git
- Project dependencies installed through npm
For the Windows desktop version:
- Windows
- Node.js
- npm
Windows is recommended for testing Windows-specific features such as:
- Electron packaging.
- Windows Hello.
- Windows Data Protection API integration.
- Windows installer generation.
For Android development, you may need:
- Android Studio.
- Android SDK.
- Java Development Kit required by the Android toolchain.
- An Android device or emulator.
- Capacitor dependencies.
Clone the repository:
git clone https://github.com/IM-IMPO/Secure-Vault.gitEnter the project directory:
cd Secure-VaultInstall the dependencies:
npm installStart the Vite development server:
npm run devOpen the local URL displayed in the terminal.
Start the Electron application in development mode:
npm run electron:devThis uses the configured Electron startup process.
Build the production frontend:
npm run buildPreview the built frontend:
npm run previewBuild the Windows version using:
npm run distThe build process will:
- Build the Vite frontend.
- Package the Electron application.
- Create the Windows application package.
- Generate the NSIS installer.
- Generate the installer block map where configured.
The generated installer is typically located in:
release/
For example:
SecureVault Setup 1.0.0.exe
Test the installer before distributing it.
After installing the required dependencies and Android development tools, synchronize the web build with Capacitor as required by the project's configured workflow.
The Android project is located in:
android/
Open the Android project using Android Studio to build, test, and generate Android application packages.
Before distributing an Android build, verify:
- Firebase configuration is correct.
- Google sign-in is configured correctly.
- Authentication works on the device.
- Cloud synchronization works as expected.
- Vault access works correctly.
- Sensitive data is not exposed in logs or builds.
SecureVault includes Firebase integration for authentication and cloud-connected features.
The project contains Firebase-related application logic, including cloud authentication and synchronization components.
Important Firebase-related files include:
android/app/google-services.json
src/cloud.js
securevault/src/components/CloudLoginScreen.tsx
securevault/src/lib/cloudSync.js
Firebase configuration must match the configured application package, SHA certificates where required, authorized domains, and authentication providers.
Do not expose private service credentials or administrative keys in public frontend source code.
Cloud synchronization is intended to provide synchronization support between authenticated SecureVault environments where configured.
Before relying on cloud synchronization for important data:
- Test synchronization with non-sensitive test data.
- Verify authentication correctly identifies the user.
- Confirm synchronization completes successfully.
- Check how conflicts are handled.
- Maintain local backups of important vault data.
Cloud synchronization availability depends on the configured services and deployment environment.
SecureVault is designed around protecting personal information through a combination of local vault security and configured cloud services.
- Core vault data is stored according to the application's configured storage system.
- Sensitive data should remain protected by the application's encryption and vault access mechanisms.
- Core functionality is designed to support local operation.
When cloud functionality is enabled:
- Authentication information may be processed through Firebase.
- Cloud synchronization requires the configured online services.
- Internet connectivity may be required.
- Users should understand the configured cloud storage and synchronization behavior before storing sensitive information.
- Use a strong master password.
- Do not share your master password.
- Back up important vault data.
- Keep Windows and Android devices updated.
- Protect devices with strong device authentication.
- Review cloud synchronization before storing highly sensitive information.
- Never commit real passwords, vault data, private keys, API secrets, or administrative credentials to a public repository.
The project currently includes components similar to the following:
Secure-Vault/
├── android/
├── cloudflare-worker/
├── securevault/
├── src/
├── electron.cjs
├── capacitor.config.json
├── package.json
├── storage.rules
└── vite.config.cjs
src/— Main application source code and cloud integration.securevault/— Additional SecureVault application source.android/— Android Capacitor project.cloudflare-worker/— Cloudflare Worker source and configuration.electron.cjs— Electron main process.capacitor.config.json— Capacitor configuration.storage.rules— Storage-related security rules.vite.config.cjs— Vite configuration.package.json— Dependencies, scripts, and build configuration.dist/— Generated frontend build files.release/— Generated Windows installers and packaged application files.
Generated directories may not be tracked by Git.
| Command | Purpose |
|---|---|
npm install |
Install project dependencies |
npm run dev |
Start the Vite development server |
npm run build |
Build the production frontend |
npm run preview |
Preview the production frontend build |
npm run server |
Start the configured local server |
npm run electron |
Launch Electron using the configured entry point |
npm run electron:dev |
Run the Electron development workflow |
npm run dist |
Build the Windows installer |
Available commands depend on the scripts currently defined in package.json.
GitHub: Secure-Vault Repository
No license has currently been specified for this project.
Unless a license file is added to the repository, all rights remain with the copyright holder and reuse, modification, or redistribution is not automatically granted.