/bugsnag-js

Javascript error handling tool for Bugsnag. Monitor and report JavaScript bugs & errors.

Primary LanguageTypeScriptMIT LicenseMIT

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:

Etc. See packages for a full list of contents.

Getting started

  1. Create a Bugsnag account
  2. Complete the instructions in the integration guide
  3. Report handled exceptions using Bugsnag.notify()
  4. 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

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 git@github.com: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.