mirror of
https://github.com/bitwarden/browser
synced 2024-12-18 20:33:00 +01:00
04811c934f
* Noted upper limit of Node.js verion support for the application: the SCSS dependency v4.13.1 only supports Node.js up to v13.9.0. Added note for npm commands for running the application against local APIs versus production. The correct npm command for running against production was found here https://github.com/bitwarden/web/issues/666. Added more lines to the services.module.ts example to better reflect the actual file. * Added CORS common issue and solution to README.md * Changed Node.js version notes for real this time.
86 lines
2.9 KiB
Markdown
86 lines
2.9 KiB
Markdown
<p align="center">
|
||
<img src="https://raw.githubusercontent.com/bitwarden/brand/master/screenshots/web-vault-macbook.png" alt="" width="600" height="358" />
|
||
</p>
|
||
<p align="center">
|
||
The Bitwarden web project is an Angular application that powers the web vault (https://vault.bitwarden.com/).
|
||
</p>
|
||
<p align="center">
|
||
<a href="https://ci.appveyor.com/project/bitwarden/web/branch/master" target="_blank">
|
||
<img src="https://ci.appveyor.com/api/projects/status/github/bitwarden/web?branch=master&svg=true" alt="appveyor build" />
|
||
</a>
|
||
<a href="https://crowdin.com/project/bitwarden-web" target="_blank">
|
||
<img src="https://d322cqt584bo4o.cloudfront.net/bitwarden-web/localized.svg" alt="Crowdin" />
|
||
</a>
|
||
<a href="https://hub.docker.com/u/bitwarden/" target="_blank">
|
||
<img src="https://img.shields.io/docker/pulls/bitwarden/web.svg" alt="DockerHub" />
|
||
</a>
|
||
<a href="https://gitter.im/bitwarden/Lobby" target="_blank">
|
||
<img src="https://badges.gitter.im/bitwarden/Lobby.svg" alt="gitter chat" />
|
||
</a>
|
||
</p>
|
||
|
||
## Build/Run
|
||
|
||
### Requirements
|
||
|
||
- [Node.js](https://nodejs.org) v8.11 or greater
|
||
|
||
### Run the app
|
||
|
||
For local development, run the app with:
|
||
|
||
```
|
||
npm install
|
||
npm run build:watch
|
||
```
|
||
|
||
You can now access the web vault in your browser at `https://localhost:8080`. You can adjust your API endpoint settings in `src/app/services/services.module.ts` by altering the `apiService.setUrls` call. For example:
|
||
|
||
```typescript
|
||
await apiService.setUrls({
|
||
base: isDev ? null : window.location.origin,
|
||
api: isDev ? 'http://mylocalapi' : null,
|
||
identity: isDev ? 'http://mylocalidentity' : null,
|
||
events: isDev ? 'http://mylocalevents' : null,
|
||
});
|
||
```
|
||
|
||
If you want to point the development web vault to the production APIs, you can set:
|
||
|
||
```typescript
|
||
await apiService.setUrls({
|
||
base: null,
|
||
api: 'https://api.bitwarden.com',
|
||
identity: 'https://identity.bitwarden.com',
|
||
events: 'https://events.bitwarden.com',
|
||
});
|
||
```
|
||
|
||
And note to run the app with:
|
||
|
||
```
|
||
npm install
|
||
npm run build:prod:watch
|
||
```
|
||
|
||
## Common Issues:
|
||
|
||
### CORS
|
||
|
||
If you run the frontend and receive a notification after attempting to login that says:
|
||
```
|
||
An error has occurred.
|
||
NetworkError when attempting to fetch resource.
|
||
```
|
||
And in the console:
|
||
```
|
||
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://api.bitwarden.com/accounts/prelogin. (Reason: CORS header ‘Access-Control-Allow-Origin’ missing).
|
||
```
|
||
This means that you are having a CORS header issue. This can be mitigated by using a CORS header changing extension in your browser such as [this one.](https://mybrowseraddon.com/access-control-allow-origin.html)
|
||
|
||
## Contribute
|
||
|
||
Code contributions are welcome! Please commit any pull requests against the `master` branch.
|
||
|
||
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`](SECURITY.md) file.
|