honeybadger-io / honeybadger-js

Universal JavaScript library for reporting errors to Honeybadger.io :zap:
https://www.honeybadger.io/for/javascript/
MIT License
107 stars 62 forks source link
browser debugging error error-handling error-monitoring error-reporting errors honeybadger isomorphic javascript monitoring node npm package universal

Honeybadger for JavaScript

Node CI

Welcome! This is the monorepo which holds all Honeybadger packages for JavaScript. You can refer to the README of each package for more information and instructions:

Documentation and Support

For comprehensive documentation and support, check out our documentation site.

Changelog

Contributing

  1. Fork the repo.
  2. Create a topic branch git checkout -b my_branch
  3. Commit your changes git commit -am "chore: boom"
  4. Push to your branch git push origin my_branch
  5. Send a pull request

Development

We use Lerna to manage the monorepo. It helps us:

  1. Run npm install from the monorepo root.
  2. Run npm test from the monorepo root to run unit tests for all packages.

Lerna Tips

For more info, you can read the docs.

Troubleshooting TypeScript

Releasing

Packages in the monorepo are released in independent mode, meaning that Lerna will decide which packages to release and what version bump to apply based on the commits since the last release.

Releasing is done using Github actions, which run npm run release. This command calls lerna publish, which does the following:

Note: some packages may have a postpublish script, for example @honeybadger-io/js (found in packages/js) has a script to also publish to our js.honeybadger.io CDN (hosted on AWS via S3/CloudFront).

Release Automation

The repository automatically releases new packages every week using the Publish New Release - Scheduled workflow (lerna-scheduled-publish.yml).

You can manually trigger a new release using the Publish New Release workflow (lerna-publish.yml).

Note: only users with write permissions can trigger this workflow (i.e. Collaborators).

Available Commands

License

This Honeybadger repository and published packages are MIT licensed. See the MIT-LICENSE file in this repository for details.