@hoodie/client v10.2.0
hoodie-client
Client API for the Hoodie server
@hoodie/client integrates Hoodie’s client core modules:
Example
var Hoodie = require('@hoodie/client')
var hoodie = new Hoodie({
url: 'https://myhoodieapp.com',
PouchDB: require('pouchdb')
})
hoodie.account.signUp({
username: 'pat@Example.com',
password: 'secret'
}).then(function (accountAttributes) {
hoodie.log.info('Signed up as %s', accountAttributes.username)
}).catch(function (error) {
hoodie.log.error(error)
})API
- Constructor
- hoodie.url
- hoodie.account
- hoodie.store
- hoodie.connectionStatus
- hoodie.log
- hoodie.request
- hoodie.plugin
- hoodie.on
- hoodie.one
- hoodie.off
- hoodie.trigger
- Events
Constructor
new Hoodie(options)hoodie.url
Read-only
hoodie.urlfull url to the hoodie server, e.g. http://example.com/hoodie
hoodie.account
hoodie.account is an instance of hoodie-account-client.
See account API
hoodie.store
hoodie.store is an instance of hoodie-store.
See store API
hoodie.connectionStatus
hoodie.connectionStatus is an instance of hoodie-connection-status.
See connectionStatus API
hoodie.log
hoodie.log is an instance of hoodie-log.
See log API
hoodie.request
Sends an http request
hoodie.request(url)
// or
hoodie.request(options)Examples
// sends a GET request to hoodie.url + '/foo/api/bar'
hoodie.request('/foo/api/bar')
// sends a GET request to another host
hoodie.request('https://example.com/foo/bar')
// sends a PATCH request to /foo/api/bar
hoodie.request({
method: 'PATCH',
url: '/foo/api/bar',
headers: {
'x-my-header': 'my value'
},
data: {
foo: 'bar'
}
})hoodie.plugin
Initialise hoodie plugin
hoodie.plugin(methods)
hoodie.plugin(plugin)Examples
hoodie.plugin({
sayHi: function () { alert('hi') }
})
hoodie.plugin(function (hoodie) {
hoodie.sayHi = function () { alert('hi') }
})hoodie.on
Subscribe to event.
hoodie.on(eventName, handler)Example
hoodie.on('account:signin', function (accountProperties) {
alert('Hello there, ' + accountProperties.username)
})hoodie.one
Call function once at given event.
hoodie.one(eventName, handler)Example
hoodie.one('mycustomevent', function (options) {
console.log('foo is %s', options.bar)
})
hoodie.trigger('mycustomevent', { foo: 'bar' })
hoodie.trigger('mycustomevent', { foo: 'baz' })
// logs "foo is bar"
// DOES NOT log "foo is baz"hoodie.off
Removes event handler that has been added before
hoodie.off(eventName, handler)Example
hoodie.off('connectionstatus:disconnect', showNotification)hoodie.trigger
Trigger custom events
hoodie.trigger(eventName[, option1, option2, ...])Example
hoodie.trigger('mycustomevent', { foo: 'bar' })Events
Testing
Local setup
git clone https://github.com/hoodiehq/hoodie-client.git
cd hoodie-client
npm installRun all tests
npm testRun test from one file only
node tests/specs/idContributing
Have a look at the Hoodie project's contribution guidelines. If you want to hang out you can join our Hoodie Community Chat.
License
6 years ago
8 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago