explaingit

bitwarden/server

📈 Trending18,609C#Audience · developerComplexity · 4/5ActiveLicenseSetup · hard

TLDR

Open-source password manager backend built in C# and ASP.NET Core. Provides APIs and database logic for Bitwarden's browser, desktop, mobile, and web clients, with self-hosting via Docker.

Mindmap

mindmap
  root((repo))
    What it does
      Password manager backend
      APIs for clients
      User authentication
    Tech stack
      C# and ASP.NET Core
      SQL Server and T-SQL
      Docker containers
    Self-hosting
      Docker deployment
      Linux macOS Windows
      Helper setup scripts
    Use cases
      Host your own vault
      Integrate with clients
      Deploy to cloud
    Audience
      Self-hosters
      Developers
      Organizations

Things people build with this

USE CASE 1

Self-host a private password vault for your organization instead of using Bitwarden's cloud.

USE CASE 2

Deploy Bitwarden backend to your own servers using Docker containers for compliance or data residency requirements.

USE CASE 3

Integrate custom authentication or billing systems by modifying the server codebase.

USE CASE 4

Run a local development environment to test changes to the password manager backend.

Tech stack

C#ASP.NET CoreSQL ServerT-SQLDocker.NET

Getting it running

Difficulty · hard Time to first run · 1h+

Requires Docker, SQL Server database setup.NET SDK, and multiple service dependencies to run locally.

Open-source software; check the repository for specific license terms allowing use, modification, and distribution.

In plain English

This is the server-side codebase for Bitwarden, the open-source password manager. It contains the APIs, database logic, and other backend infrastructure that all Bitwarden client applications, the browser extension, desktop app, mobile app, and web vault, communicate with. The server is written in C# using ASP.NET Core, a framework for building web applications on Microsoft's .NET platform. The database uses T-SQL and SQL Server. The codebase is designed to run cross-platform on Windows, macOS, and Linux. For people who want to host Bitwarden themselves (rather than using Bitwarden's own cloud), the project supports self-hosting via Docker containers. Docker is a tool that packages software and its dependencies into isolated containers that can run consistently across different machines. Helper scripts are provided for both Linux/macOS and Windows to download the containers and start them with a single command. The Docker images for individual services, including the API, identity server, billing, notifications, single sign-on, and an admin panel, are published to GitHub Container Registry and available for both US and EU production deployments. The repo includes extensive documentation links for setting up a local development environment and for deploying a self-hosted instance. Bitwarden is also actively hiring, with a link to their careers page in the readme.

Copy-paste prompts

Prompt 1
How do I set up a self-hosted Bitwarden server using Docker on my Linux machine?
Prompt 2
What are the main API endpoints in the Bitwarden server and how do the client apps communicate with them?
Prompt 3
Show me how to deploy Bitwarden server to both US and EU production environments using the provided Docker images.
Prompt 4
I want to modify the Bitwarden server code to add custom single sign-on. Where should I start in this codebase?
Prompt 5
What's the database schema for Bitwarden's password vault, and how is user data encrypted and stored?
Open on GitHub → Explain another repo

Generated 2026-05-18 · Model: sonnet-4-6 · Verify against the repo before relying on details.