Skip to content

MountainGoatATU/GoatVaultClient

Repository files navigation

codecov CodeScene Average Code Health

GoatVault

GoatVault is a secure, cross-platform password manager built with .NET MAUI.

Features

  • Zero-knowledge storage of vault
  • Encrypted vault with Argon2Id and AES
  • Cross-platform syncing on Windows and Android

Architecture

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.

Getting Started

Prerequisites

  • .NET 10 SDK (or later)
  • MAUI Workloads for your target platforms (android, ios, maccatalyst, windows)

Installation

  1. Clone the repository:

    git clone https://github.com/MountainGoatATU/GoatVaultClient.git
    cd GoatVaultClient
  2. Restore dependencies:

    dotnet restore
  3. Create a file named appsettings.json in the GoatVaultClient/GoatVaultClient directory.

  4. Copy appsettings.example.json to appsettings.json and update the values:

    {
      "API_BASE_URL": "https://api.example.com"
    }
  5. Build and Run:

    • Windows: Select GoatVaultClient (Windows Machine) and run.

About

Front-end interface for GoatVault

Topics

Resources

Stars

Watchers

Forks

Contributors

Languages