@hoodie/server
v23.0.0
Published
Hapi plugin for Hoodie’s server core module
Downloads
77
Readme
hoodie-server
Hapi plugin for Hoodie’s server core module
@hoodie/server
integrates Hoodie’s server core modules:
Example
var Hapi = require('hapi')
var hoodie = require('@hoodie/server').register
var PouchDB = require('pouchdb-core').plugin(require('pouchdb-mapreduce')).plugin(require('pouchdb-adapter-memory'))
var server = new Hapi.Server()
server.connection({
host: 'localhost',
port: 8000
})
server.register({
register: hoodie,
options: { // pass options here
PouchDB: PouchDB,
paths: {
public: 'dist'
}
}
}, function (error) {
if (error) {
throw error
}
server.start(function (error) {
if (error) {
throw error
}
console.log(('Server running at:', server.info.uri)
})
})
Usage
option | default | description
------------------------- | ------------ | -------------
adminPassword | - | Password to login with admin account
paths.data | '.hoodie'
| Data path
paths.public | 'public'
| Public path
PouchDB | – | PouchDB constructor. See also custom PouchDB builds.
account | {}
| Hoodie Account Server options. account.admins
are generated based on adminPassword
option above. account.usersDb
is hardcoded to _users
at this point. account.secret
is stored in hoodie-store/hoodie
and will be generated if it does not yet exist.
store | {}
| Hoodie Store Server options. store.couchdb
, store.PouchDB
are set based on the PouchDB
option above. store.hooks.onPreAuth
is set to bind user authentication for Hoodie Account to Hoodie Store.
Testing
Local setup
git clone https://github.com/hoodiehq/hoodie-server.git
cd hoodie-server
npm install
Run all tests
npm test
Contributing
Have a look at the Hoodie project's contribution guidelines. If you want to hang out you can join our Hoodie Community Chat.