The browser utility for working with the Charles API.
# Run npm install and write your library name when asked. That's all!
npm install @heycharles/browser-sdk
You can import the generated bundle to use the whole library generated by this starter:
import * as charles from '@heycharles/browser-sdk'
// configure which API to use. E.g. you can also run staging and sandbox APIs
charles.init({
universe: 'https://my-universe.hello-charles.com'
})
// use any authentication method that .auth provides
charles.auth.loginUsername({ username: '[email protected]', password: 'xxxxxxxxxxx' })
// or when already authenticated and rehydrating state you can immediately also hydrated an
// authenticated th client
charles.init({
universe: 'https://my-universe.hello-charles.com',
credentials: {
token: window.localStorage.getItem('charles-token')
},
user: window.localStorage.getItem('charles-user-uuid')
})
Additionally, you can import the transpiled modules from dist/lib
in case you have a modular library:
import Auth from '@heycharles/browser-sdk/dist/lib/Auth'
npm t
: Runs test suite.npm start
: Runnpm run build
in watch modenpm run test:watch
: Run test suite in interactive watch modenpm run test:prod
: Run linting and generate coveragenpm run build
: Generate bundles and typings, create docsnpm run lint
: Lints codenpm run commit
: Commit using conventional commit style (husky will tell you to use it if you haven't 😉)
Apache-2.0