AppleSauce
    Preparing search index...

    Module applesauce-core

    applesauce-core

    AppleSauce is a collection of utilities for building reactive nostr applications. The core package provides an in-memory event database and reactive models to help you build nostr UIs with less code.

    • Helpers: Core utility methods for parsing and extracting data from nostr events
    • EventStore: In-memory database for storing and subscribing to nostr events
    • Models: Complex subscriptions for common nostr data patterns

    For detailed documentation and guides, visit:

    import { EventStore } from "applesauce-core";
    import { ProfileModel, TimelineModel } from "applesauce-core/models";
    import { Relay } from "nostr-tools/relay";

    // Create a single EventStore instance for your app
    const eventStore = new EventStore();

    // Use any nostr library for relay connections (nostr-tools, ndk, nostrify, etc...)
    const relay = await Relay.connect("wss://relay.example.com");

    // Subscribe to events and add them to the store
    const sub = relay.subscribe([{ authors: ["3bf0c63fcb93463407af97a5e5ee64fa883d107ef9e558472c4eb9aaaefa459d"] }], {
    onevent(event) {
    eventStore.add(event);
    },
    });

    // Subscribe to profile changes using ProfileModel
    const profile = eventStore.model(ProfileModel, "3bf0c63fcb93463407af97a5e5ee64fa883d107ef9e558472c4eb9aaaefa459d");

    profile.subscribe((parsed) => {
    if (parsed) console.log(parsed);
    });

    // Subscribe to a timeline of events
    const timeline = eventStore.model(TimelineModel, { kinds: [1] });

    timeline.subscribe((events) => {
    console.log(events);
    });

    Namespaces

    Helpers
    Models

    Classes

    AsyncEventStore
    BehaviorSubject
    EventMemory
    EventStore
    Observable
    ReplaySubject
    Subject
    TimeoutError

    Interfaces

    IAsyncEventDatabase
    IAsyncEventStore
    IAsyncEventStoreActions
    IAsyncEventStoreRead
    IEventClaims
    IEventDatabase
    IEventFallbackLoaders
    IEventHelpfulSubscriptions
    IEventMemory
    IEventModelMixin
    IEventStore
    IEventStoreActions
    IEventStoreModels
    IEventStoreRead
    IEventStoreStreams
    IEventStoreSubscriptions
    IEventSubscriptions

    Type Aliases

    Model
    ModelConstructor
    ModelEventStore

    Functions

    combineLatest
    defined
    filterDuplicateEvents
    firstValueFrom
    getObservableValue
    ignoreBlacklistedRelays
    includeMailboxes
    lastValueFrom
    mapEventsToStore
    mapEventsToTimeline
    merge
    simpleTimeout
    watchEventsUpdates
    watchEventUpdates
    withImmediateValueOrDefault