Bugsnag error monitoring & reporting for JavaScript
Automatically detect JavaScript errors in the browser, Node.js and React Native, with plugins for React, Vue, Angular, Express, Restify and Koa. Get cross-platform error detection for handled and unhandled errors with real-time error alerts and detailed diagnostic reports.
Learn more about JavaScript error reporting and React Native error reporting from Bugsnag.
This is a monorepo (managed with Lerna containing our universal error reporting client @bugsnag/js, and our React Native client @bugsnag/react-native, along with:
the core Bugsnag libraries for reporting errors (@bugsnag/core )
plugins for supporting various frameworks (e.g. @bugsnag/plugin-react )
plugins for internal functionality (e.g. @bugsnag/plugin-simple-throttle )
Etc. See packages for a full list of contents.
Getting started
Create a Bugsnag account
Complete the instructions in the integration guide
Report handled exceptions using Bugsnag.notify()
Customize your integration using the configuration options
Integrating with frameworks
Use the following plugins and guides to integrate Bugsnag with various frameworks.
Browser
| Framework | Bugsnag plugin | Documentation |
|---|---|---|
| :--- | :--- | :--- |
| Vue | @bugsnag/plugin-vue | Vue docs |
| React | @bugsnag/plugin-react | React docs |
| Angular | @bugsnag/plugin-angular | Angular docs |
Desktop
| Framework | Bugsnag notifier | Documentation |
|---|---|---|
| :--- | :--- | :--- |
| Electron | @bugsnag/electron | Electron docs |
Server
| Framework | Bugsnag plugin | Documentation |
|---|---|---|
| :--- | :--- | :--- |
| Koa | @bugsnag/plugin-koa | Koa docs |
| Express | @bugsnag/plugin-express | Express docs |
| Restify | @bugsnag/plugin-restify | Restify docs |
Mobile
| Framework | Bugsnag notifier | Documentation |
|---|---|---|
| :--- | :--- | :--- |
| React Native | @bugsnag/react-native | React Native docs |
Support
Check out the FAQ and configuration options
Search open and closed issues for similar problems
Report a bug or request a feature
Contributing
Most updates to this repo will be made by Bugsnag employees. We are unable to accommodate significant external PRs such as features additions or any large refactoring, however minor fixes are welcome. See contributing for more information.
Development quick start
- ``` shell
- # Clone the repository
- git clone git@github.com:bugsnag/bugsnag-js.git --recursive
- cd bugsnag-js
- # Install top-level dependencies
- npm i
- # Bootstrap all of the packages
- npm run bootstrap
- # Build the standalone notifiers and plugins
- npm run build
- # Run the unit tests
- npm run test:unit
- # Run tests for a specific package
- npm run test:unit -- --testPathPattern="packages/react-native"
- # Generate a code coverage report
- npm run test:unit -- --coverage
- # Run the linter
- npm run test:lint
- # Run the typescript compatibility tests
- npm run test:types
- ```
See contributing for more information.
License
All packages in this repository are released under the MIT License. See LICENSE.txt for details.