@sprillow-connor/electron-holochain
TypeScript icon, indicating that this package has built-in type declarations

0.0.40 • Public • Published

electron-holochain

Holochain Revision: v0.0.150 July 13, 2022

Lair Keystore Revision: v0.2.0 June 20, 2022

Expects an HAPP built with HDK v0.0.141 and HDI v0.0.13

manage holochain processes during an electron application runtime, using holochain-runner binaries.

// function initAgent(
//   app: App,
//   opts: ElectronHolochainOptions,
//   pathOptions?: PathOptions
// ): Promise<{ statusEmitter: StatusUpdates, shutdown: () => Promise<void> }>

import {app} from 'electron'
import initAgent, {
  StateSignal,
  StatusUpdates,
  STATUS_EVENT,
  APP_PORT_EVENT,
  ElectronHolochainOptions,
  PathOptions
} from 'electron-holochain'

const runnerOptions: ElectronHolochainOptions = {
  happPath: 'pathtomyhapp.happ',
  keystorePath: string
  passphrase: string
  // datastorePath?: 'string' default: databases
  // appId?: string
  // appWsPort?: number
  // adminWsPort?: number
  // proxyUrl?: string
  // membraneProof?: string
  // bootstrapUrl?: string
  // uid?: string
}

const { statusEmitter, shutdown } = await initAgent(app, runnerOptions)

// listen on the statusEmitter for status update
statusEmitter.on(STATUS_EVENT, (status: StateSignal) => {
  // do stuff
})

// listen on the statusEmitter for the websocket port used for app
statusEmitter.on(APP_PORT_EVENT, (appPort: string) => {
  // do stuff
}
// when the app quits, holochain-runner and lair-keystore will shut down automatically

// you can also call the following, to shut them down
await shutdown()

Package Sidebar

Install

npm i @sprillow-connor/electron-holochain

Weekly Downloads

0

Version

0.0.40

License

CAL-1.0

Unpacked Size

65.4 kB

Total Files

33

Last publish

Collaborators

  • sprillow-connor