nostr-social-graph
    Preparing search index...

    Class SocialGraph

    Index

    Constructors

    Methods

    • Parameters

      • follower: string
      • followedUser: string

      Returns void

    • Parameters

      • address: string

      Returns Set<string>

    • Parameters

      • address: string

      Returns number

    • Parameters

      • address: string

      Returns number

    • Parameters

      • user: string

      Returns number

    • Parameters

      • user: string
      • includeSelf: boolean = false

      Returns Set<string>

    • Parameters

      • address: string

      Returns Set<string>

    • Parameters

      • user: string

      Returns undefined | number

    • Returns {
          followedByUser: Map<number, Set<number>>;
          followersByUser: Map<number, Set<number>>;
          followListCreatedAt: Map<number, number>;
          ids: UniqueIds;
          mutedByUser: Map<number, Set<number>>;
          muteListCreatedAt: Map<number, number>;
          str: (id: number) => string;
          userMutedBy: Map<number, Set<number>>;
      }

    • Parameters

      • user: string

      Returns Set<string>

    • Parameters

      • user: string

      Returns Set<string>

    • Parameters

      • distance: number

      Returns Set<string>

    • Parameters

      • follower: string
      • followedUser: string

      Returns boolean

    • Parameters

      • address: string

      Returns number

    • Parameters

      • batchSize: number = 1_000
      • logEvery: number = 100_000
      • logger: (msg: string) => void = console.log

      Returns Promise<void>

    • Parameters

      • follower: string
      • followedUser: string

      Returns void

    • Remove users who are muted by someone AND have zero followers. O(E + M) where E = follows edges, M = mutes edges. Now async and non-blocking with batching.

      Parameters

      • batchSize: number = 10_000
      • logger: (phase: string, scanned: number, removed: number) => void = ...

      Returns Promise<number>

    • Parameters

      • root: string

      Returns Promise<void>

    • Returns {
          follows: number;
          mutes: number;
          sizeByDistance: { [distance: number]: number };
          users: any;
      }

    • Parameters

      • user: string

      Returns { [distance: number]: { followers: number; muters: number } }

    • Parameters

      • OptionalmaxNodes: number
      • OptionalmaxEdges: number
      • OptionalmaxDistance: number
      • OptionalmaxEdgesPerNode: number

      Returns Promise<Uint8Array<ArrayBufferLike>>

    • Parameters

      • OptionalmaxNodes: number
      • OptionalmaxEdges: number
      • OptionalmaxDistance: number
      • OptionalmaxEdgesPerNode: number

      Returns AsyncGenerator<Uint8Array<ArrayBufferLike>>

    • Parameters

      • OptionalupToDistance: number

      Returns Generator<string>

    • Parameters

      • root: string
      • stream: ReadableStream<Uint8Array<ArrayBufferLike>>

      Returns Promise<SocialGraph>