desktop

(โ˜… 3,540)

The desktop vault (Windows, macOS, & Linux).

  • .editorconfig
  • .eslintignore
  • .eslintrc.json
  • .git-blame-ignore-revs
  • .gitattributes
  • .gitignore
  • .gitmodules
  • .nvmrc
  • .prettierignore
  • .prettierrc.json
  • CONTRIBUTING.md
  • crowdin.yml
  • electron-builder.json
  • jslib
  • LICENSE.txt
  • package-lock.json
  • package.json
  • README.md
  • SECURITY.md
  • sign.js
  • tsconfig.json
  • tsconfig.renderer.json
  • webpack.main.js
  • webpack.renderer.js

# Installation Guide

1. Get the code
git clone https://github.com/bitwarden/desktop

Downloads the entire project code from GitHub to your computer.

cd desktop

Moves into the project folder you just downloaded.

2. Docker

Easy Recommended
Prerequisites
  • Git Needed to download the project code from GitHub.
  • Docker Desktop Needed to build and run containers. Install it and keep it running in the background.
โš ๏ธ This is a large repository, so this method may point to an internal sub-package rather than the actual core product. Check the full README as well.
docker compose -f scripts/dev/docker-compose.yml up -d --build

Runs the command against the services defined in the compose file.

โœ… Run docker compose ps to check the containers are Up. If the README mentions a port, open http://localhost:PORT in your browser.

3. Node.js

Easy
Prerequisites
  • Git Needed to download the project code from GitHub.
  • Node.js Node.js must be installed to use npm. The LTS version is recommended.
npm ci

Type this command into your terminal and run it.

npm run electron

Type this command into your terminal and run it.

โœ… After running the command, open the address shown in the terminal (usually something like http://localhost:3000) in your browser.

Pulled directly from this repo's README.

4. Rust

Medium
Prerequisites
  • Git Needed to download the project code from GitHub.
  • Rust (rustup) Installing via rustup also installs cargo.
cd desktop_native

This project's files live in a subfolder, so move into it first.

cargo build --release

Compiles the Rust project.

cargo run

Builds and then immediately runs the program.

โœ… If cargo build finishes without errors, it worked. The executable is created under target/.
// repository documentation