@Gapi Ipfs InterPlanetary File System Pub Sub Module (Beta)
IPFS-WIKI
More information about IPFS system can be find herehere
For questions/issues you can write ticketGapi or rxdi
This module is intended to be used with@gapi/ipfs hello world ipfs address:
https://ipfs.io/ipfs/QmPhYdx4dB6TwBU1KEbYmyET7HQJoLpyERvRD4kMWv3B3a
Installation and basic examples:
To install this module, run:
$ npm install @gapi/ipfs-pubsub --save
Consuming @gapi/ipfs-pubsub
Import inside AppModule or CoreModule
import { Module, Service } from '@rxdi/core';
import { IpfsPubSubModule, IpfsPubSubRoom } from '@gapi/ipfs-pubsub';
@Module({
imports: [
IpfsPubSubModule.forRoot({
rooms: [
{ topic: 'test-topic'},
{ topic: 'test-topic2'},
{ topic: 'test-topic3'},
],
logging: true
}),
]
})
export class CoreModule { }
TODO: Later releases
import { Module, Service } from '@rxdi/core';
import { IpfsPubSubModule, IpfsPubSubRoom } from '@gapi/ipfs-pubsub';
@Service()
export class TestRoom implements IpfsPubSubRoom {
name?: string = 'TestRoom'; // optional if not provided it will take class name as topic
constructor(
@Inject(OrbitDb) private orbitdb: Promise<OrbitDb>
@Inject(IpfsPubSubRoom) private ipfsPubSubRoom: IpfsPubSubRoom
@Inject(IPFS) private ipfs: IPFS
) {
}
}
@Module({
imports: [
IpfsPubSubModule.forRoot({
rooms: [TestRoom],
logging: true
}),
]
})
export class CoreModule { }
TODO: Better documentation...
Enjoy ! :)