Architecture
In this section we will cover the high level architecture of Bitwarden, how it is structured, focusing initially on how the server and clients interact with each other, before diving into the details of the server and clients.
Since the web-based clients mostly behave the same, we will focus on the web vault while calling out client-specific areas for the browser extension, desktop application and CLI. The mobile applications have their own codebases.