@gapi/ipfs-pubsub
TypeScript icon, indicating that this package has built-in type declarations

1.8.117 • Public • Published

@Gapi Ipfs InterPlanetary File System Pub Sub Module (Beta)

More information about IPFS system can be find here IPFS-WIKI
For questions/issues you can write ticket here
This module is intended to be used with Gapi or rxdi

@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 ! :)

Readme

Keywords

Package Sidebar

Install

npm i @gapi/ipfs-pubsub

Weekly Downloads

0

Version

1.8.117

License

MIT

Unpacked Size

15.4 kB

Total Files

22

Last publish

Collaborators

  • gapi