Vue.js integration for Honeybadger.io
Note: This repository has been moved to @honeybadger-io/js, home to all Honeybadger's JavaScript packages.
Note: Since v3.2 release of this project, both Vue.js v2.x and v3.x are supported!
For comprehensive documentation and support, check out our documentation site.
The documentation includes detailed Vue Integration Guides, both for Vue.js v2.x and v3.x.
The goal is to provide an idiomatic, simple integration of Honeybadger's exception monitoring service with Vue.js applications.
This version is considered suitable for preview.
Honeybadger-vue hooks in to the error handler in Vue. This means we only notify Honeybadger of Vue context for errors that Vue handles. Some errors inside Vue code may propagate to the window onerror handler instead.
In those cases, Honeybadger Javascript library's default error notifier is invoked, which will contain a stack trace but none of the Vue variables.
This project is built using a webpack-based Vue template. It's possible your own build environment may be just different enough to require some adjustments. If you find that our artifacts don't quite meet your needs, please file an issue on GitHub.
See https://github.com/honeybadger-io/honeybadger-vue/blob/master/CHANGELOG.md Changelog is automatically generated with our release automation process.
- Fork it.
- Create a topic branch
git checkout -b my_branch
- Commit your changes
git commit -am "Boom"
- Push to your branch
git push origin my_branch
- Send a pull request
# install dependencies
npm install
# Serve the demo app with hot reload at localhost:8080
HONEYBADGER_API_KEY=yourkey npm run dev
# build for production with minification
npm run build
# build for production and view the bundle analyzer report
npm run build --report
# run unit tests
npm run unit
# run all tests
HONEYBADGER_API_KEY=yourkey npm run test:all
For a detailed explanation on how things work, check out the guide and docs for vue-loader.
Releasing is done with two commands: npm version
and npm publish
. Both
commands should be used with care.
To perform a release:
-
With a clean working tree, use
npm version [new version]
to bump the version, commit the changes, tag the release, and push to GitHub. Seenpm help version
for documentation. Make sure to checkout the correct branch (i.e. if you are planning to release a version with other thanlatest
dist tag). -
To publish the release, use
npm publish
. Seenpm help publish
for documentation. This command will publish the version with thelatest
tag. To publish with a different tag, i.e.next
, usenpm publish --tag next
. -
Verify the published version in Versions tab from here.
We use Ship.js to automate releasing.
Ship.js creates a PR once per week when unreleased changes are present. You can also trigger a release PR by saying "@shipjs prepare" in any issue or pull request comment on GitHub.
If a ship.js release fails, you need to revert the release commit and delete the release branch (e.g releases/v1.1.0
)
Then, you can debug the issue by simulating the release process locally (npm run release -- --dry-run --yes --no-browse
).
honeybadger-vue is MIT licensed. See the LICENSE file in this repository for details.