JavaScripting

The definitive source of the best
JavaScript libraries, frameworks, and plugins.


  • ×

    Raven Js

    JavaScript client for Sentry
    Filed under  › 

    • 🔾75%Overall
    • 3,453
    • 1.1 days
    • 🕩675
    • 👥15


    Build Status codecov npm version typedoc

    Official Sentry SDKs for JavaScript

    This is the next line of Sentry JavaScript SDKs, comprised in the @sentry/ namespace. It will provide a more convenient interface and improved consistency between various JavaScript environments.

    Contents

    Supported Platforms

    For each major JavaScript platform, there is a specific high-level SDK that provides all the tools you need in a single package. Please refer to the README and instructions of those SDKs for more detailed information:

    • @sentry/hub: Global state management of SDKs
    • @sentry/minimal: Minimal SDK for library authors to add Sentry support
    • @sentry/browser: SDK for Browsers, including integrations for React, Angular, Ember, Vue and Backbone
    • @sentry/node: SDK for Node, including integrations for Express, Koa, Loopback, Sails and Connect
    • @sentry/electron: SDK for Electron with support for native crashes
    • sentry-cordova: SDK for Cordova Apps and Ionic with support for native crashes
    • raven-js: Our old stable Javascript SDK, we still support and release bug fixes for the SDK but all new features will be implemented in @sentry/browser which is the successor.
    • raven: Our old stable Node SDK, same as for raven-js we still support and release bug fixes for the SDK but all new features will be implemented in @sentry/node which is the successor.

    Installation and Usage

    To install a SDK, simply add the high-level package, for example:

    npm install --save @sentry/browser
    yarn add @sentry/browser
    

    Setup and usage of these SDKs always follows the same principle.

    import { init, captureMessage } from '@sentry/browser';
    
    init({
      dsn: '__DSN__',
      // ...
    });
    
    captureMessage('Hello, world!');
    

    If you want sentry to be customized for the browsers you want to support use the esm build:

    import { init, captureMessage } from '@sentry/browser/esm';
    

    and add it to your babel/... build, if you want to support older browsers

    TIP: You can use <script type="module" src="newbrowser.js"> + <script nomodule src="oldbrowser.js"> to provide builds for newer and older browsers

    Other Packages

    Besides the high-level SDKs, this repository contains shared packages, helpers and configuration used for SDK development. If you're thinking about contributing to or creating a JavaScript-based SDK, have a look at the resources below:

    • @sentry/core: The base for all JavaScript SDKs with interfaces, type definitions and base classes.
    • @sentry/utils: A set of helpers and utility functions useful for various SDKs.
    • @sentry/typescript: Shared Typescript compiler and linter options.
    • @sentry/types: Types used in all packages.
    Show All