.github | ||
.husky | ||
bitwarden_license | ||
config | ||
jslib@5b7b2a03dd | ||
scripts | ||
src | ||
.dockerignore | ||
.editorconfig | ||
.eslintignore | ||
.eslintrc.json | ||
.git-blame-ignore-revs | ||
.gitattributes | ||
.gitignore | ||
.gitmodules | ||
.prettierignore | ||
.prettierrc.json | ||
config.js | ||
CONTRIBUTING.md | ||
crowdin.yml | ||
dev-server.shared.pem | ||
Dockerfile | ||
entrypoint.sh | ||
LICENSE_BITWARDEN.txt | ||
LICENSE_GPL.txt | ||
LICENSE.txt | ||
package-lock.json | ||
package.json | ||
postcss.config.js | ||
README.md | ||
SECURITY.md | ||
tailwind.config.js | ||
tsconfig.json | ||
webpack.config.js |
The Bitwarden web project is an Angular application that powers the web vault (https://vault.bitwarden.com/).
Build/Run
Requirements
- Node.js v16.13.1 or greater
- NPM v8
Run the app
For local development, run the app with:
npm install
npm run build:oss:watch
You can now access the web vault in your browser at https://localhost:8080
.
If you want to point the development web vault to the production APIs, you can run using:
npm install
ENV=cloud npm run build:oss:watch
You can also manually adjusting your API endpoint settings by adding config/local.json
overriding any of the following values:
{
"dev": {
"proxyApi": "http://your-api-url",
"proxyIdentity": "http://your-identity-url",
"proxyEvents": "http://your-events-url",
"proxyNotifications": "http://your-notifications-url",
"allowedHosts": ["hostnames-to-allow-in-webpack"]
},
"urls": {}
}
Where the urls
object is defined by the Urls type in jslib.
We're Hiring!
Interested in contributing in a big way? Consider joining our team! We're hiring for many positions. Please take a look at our Careers page to see what opportunities are currently open as well as what it's like to work at Bitwarden.
Contribute
Code contributions are welcome! Please commit any pull requests against the master
branch. Learn more about how to contribute by reading the CONTRIBUTING.md
file.
Security audits and feedback are welcome. Please open an issue or email us privately if the report is sensitive in nature. You can read our security policy in the SECURITY.md
file.
Prettier
We recently migrated to using Prettier as code formatter. All previous branches will need to updated to avoid large merge conflicts using the following steps:
- Check out your local Branch
- Run
git merge 2b0a9d995e0147601ca8ae4778434a19354a60c2
- Resolve any merge conflicts, commit.
- Run
npm run prettier
- Commit
- Run
git merge -Xours 56477eb39cfd8a73c9920577d24d75fed36e2cf5
- Push
Git blame
We also recommend that you configure git to ignore the prettier revision using:
git config blame.ignoreRevsFile .git-blame-ignore-revs