Bugsnag error monitoring & reporting for JavaScript
Automatically detect JavaScript errors in the browser, Node.js, React Native and Expo, 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
, our Expo client @bugsnag/expo
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 |
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 |
---|---|---|
Expo | @bugsnag/expo | Expo docs |
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
# Clone the repository
git clone [email protected]:bugsnag/bugsnag-js.git
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.