GoatVault is a secure, cross-platform password manager built with .NET MAUI.
- Zero-knowledge storage of vault
- Encrypted vault with Argon2Id and AES
- Cross-platform syncing on Windows and Android
The project follows the MVVM (Model-View-ViewModel) architectural pattern, leveraging the CommunityToolkit.Mvvm for efficient state management and data binding.
GoatVaultApplication: The application layer containing use cases and session context.GoatVaultClient: The UI layer containing Views, ViewModels, and platform-specific implementations.GoatVaultCore: The domain layer containing models, objects, and abstractions.GoatVaultInfrastructure: The service layer handling data, encryption, and networking.
- .NET 10 SDK (or later)
- MAUI Workloads for your target platforms (android, ios, maccatalyst, windows)
-
Clone the repository:
git clone https://github.com/MountainGoatATU/GoatVaultClient.git cd GoatVaultClient -
Restore dependencies:
dotnet restore
-
Create a file named
appsettings.jsonin theGoatVaultClient/GoatVaultClientdirectory. -
Copy
appsettings.example.jsontoappsettings.jsonand update the values:{ "API_BASE_URL": "https://api.example.com" } -
Build and Run:
- Windows: Select
GoatVaultClient(Windows Machine) and run.
- Windows: Select