Bitwarden Client Applications
repository·main·Indexed 12 days ago
https://github.com/bitwarden/clientsDocumentation for Bitwarden's client-side ecosystem, including the web vault, browser extensions, desktop clients, and the Bitwarden CLI. Covers development for the Angular-based browser extension, native macOS passkey provider, Windows Chromium importer with Application Bound Encryption (ABE) bypass, the secure_memory crate for AES-256-GCM secret protection, and the Bitwarden SSH Agent.
What's inside Bitwarden
- The Bitwarden web project is an Angular application that powers the Bitwarden Web Vault (https://vault.bitwarden.com/). It serves as the primary web-based interface for managing Bitwarden vaults.
Overview of Bitwarden SSH Agent
mainThe Bitwarden SSH Agent is a Desktop client feature that serves as a drop-in replacement for native SSH Agents. It uses the Bitwarden Vault for secure, encrypted storage of SSH keys, allowing users to manage keys via the UI and optionally approve signing requests through the interface.
Supported Functionalities
- Listing keys: Use
ssh-add -Lto display public keys and their names. - Request signing: Used for signing files, git commits, or authenticating with remote hosts.
- Agent forwarding: Supports
ssh -Ato allow remote hosts to use your keys.
Supported Key Types
- Ed25519
- RSA (SHA-256 and SHA-512)
- ECDSA
- Listing keys: Use
Overview of the Subscription library
mainThesubscriptionlibrary provides the components and services required for managing Bitwarden subscriptions. It is owned and maintained by thebillingteam.Overview of the Autofill Provider library
mainTheautofill_provideris a library designed to allow native autofill providers (operating system frameworks or APIs, such as the macOS autofill framework) to interact with a host Bitwarden desktop application. It enables Bitwarden to provide user credentials for tasks like autofill and passkey operations directly through the operating system's native credential management systems.Overview of Bitwarden Send packages
mainBitwarden Send functionality is split into two primary packages used to create and modify Sends:
@bitwarden/send-core: The logic layer. It contains all types, models, and services required for Bitwarden Send. This package is a core dependency for the Bitwarden Web Vault, CLI, desktop application, and browser extension.@bitwarden/send-ui: The presentation layer. It contains the UI components used to render and interact with Bitwarden Send features.
Overview of the Bitwarden Desktop Application
mainThe Bitwarden desktop application is a cross-platform password manager built using Electron and Angular. It is designed to run on the following operating systems:
- Windows
- macOS
- Linux
Overview of the @bitwarden/state framework
mainThe@bitwarden/statepackage provides a State Provider Framework designed to allow state to be owned by specific domains while enforcing best practices. It reduces boilerplate associated with account switching and provides a trustworthy, observable stream of state throughout the application.Overview of the Bitwarden Component Library
mainThe Bitwarden Component Library (CL) is a collection of reusable low-level Angular components designed to ensure consistent design, accessibility, and DOM hierarchy across different Bitwarden clients.
Key characteristics:
- Technology Stack: Built using Angular and powered by Tailwind CSS.
- Usage: Primarily used in the web, browser, and desktop clients.
- Standardization: Unlike CSS classes, these components standardize usage patterns and accessibility requirements.
- Deprecation Note: Bootstrap is deprecated. Do not introduce any new Bootstrap code to any client applications.
Overview of core-test-utils
mainThecore-test-utilslibrary provides asynchronous testing tools specifically designed for working with state and clients within the Bitwarden client ecosystem. It is maintained by theplatformteam.Overview of the Windows WebAuthn Rust wrapper
mainThis component is a Rust wrapper for the Windows WebAuthn Library, based on themicrosoft/webauthnimplementation released in the Windows 11 November 2025 update. It provides the interface necessary to interact with WebAuthn functionality on Windows systems.Overview of the UI Foundation libraries
mainThe UI Foundation provides core UI libraries maintained by the UI Foundation team. The primary library available is_ui-common_, which provides low-level utilities specifically designed for Angular applications within the Bitwarden ecosystem.Overview of @bitwarden/vault-export-core
mainThe@bitwarden/vault-export-corepackage provides the foundational types, models, and services required to export a user's or an organization's vault. It serves as the shared logic layer used across multiple Bitwarden client applications, including the Web Vault, CLI, desktop application, and browser extension.