gitmyhub

clients

TypeScript ★ 13k updated 8h ago

Bitwarden client apps (web, browser extension, desktop, and cli).

Source code for all Bitwarden password manager client apps, browser extension, desktop app, web vault, and command-line tool, built as a TypeScript and Angular monorepo using Electron for desktop.

TypeScriptAngularElectronJavaScriptsetup: hardcomplexity 4/5

Bitwarden is a password manager that stores your login credentials, credit card numbers, and other sensitive information in an encrypted vault. This repository contains the source code for the client applications that users interact with directly: the web vault you access in a browser, the browser extensions for Chrome and Firefox, the desktop app for Windows and Mac, and a command-line tool for power users and automation scripts. The iOS and Android apps live in separate repositories.

All of these apps are built from TypeScript, which is a programming language commonly used for web and desktop interfaces. The desktop app uses a framework called Electron, which lets web-based code run as a native application on your computer. The browser extensions follow the standard Chrome and Firefox extension format.

The repository is organized as a monorepo, meaning all four client types live together in one codebase and share common code. The company has separate contributing documentation that explains how to set up a development environment and build each app individually.

Bitwarden separates its client apps from its server infrastructure, which runs the backend that handles account storage, syncing, and organization features. That server code lives in a different repository. There is also a separate directory connector tool for businesses that want to sync user accounts from corporate directory services.

Bitwarden is an open-source company and welcomes code contributions from the public. The codebase is written primarily in TypeScript and uses Angular as the web framework for the browser-facing interfaces.

Where it fits