Fake Mirrors
    Preparing search index...

    Module @famir/database

    @famir/database

    npm version License

    Database connector, manager, repositories and models for the Famir ecosystem.

    • TypeScript-first with strict type guards and assertions
    • Configuration via @famir/config package
    • High performance Redis backend
    • Redis-Functions for atomic and isolated operations
    • Clear error handling with DatabaseError
    • Integration with @famir/common DI container
    • Campaign – root entity that groups and locks all other resources
    • Proxy – upstream proxy server for outgoing traffic
    • Target – maps a public mirror hostname to an internal donor server
    • Redirector – page template with a set of required field names
    • Lure – links a URL path to a redirector, O(1) path lookup
    • Session – tracks client session with proxy failover and two‑stage TTL
    • Message – logs HTTP request/response transactions
    DatabaseError
    RedisDatabaseConnector
    RedisDatabaseManager
    DatabaseConnector
    DatabaseManager
    RedisDatabaseConfig
    DatabaseErrorCode
    DatabaseErrorOptions
    DatabaseStatusCode
    RedisDatabaseConnection
    DATABASE_CONNECTOR
    DATABASE_MANAGER
    CampaignModel
    FullCampaignModel
    RedisCampaignRepository
    CampaignRepository
    CAMPAIGN_REPOSITORY
    campaignDescriptionSchema
    campaignMessageExpireSchema
    campaignMirrorDomainSchema
    campaignNewSessionExpireSchema
    campaignSessionCookieNameSchema
    campaignSessionCookieNamesSchema
    campaignSessionExpireSchema
    campaignUpgradeSessionPathSchema
    ProxyModel
    RedisProxyRepository
    EnabledProxyModel
    ProxyRepository
    PROXY_REPOSITORY
    proxyUrlSchema
    FullTargetModel
    RedisTargetRepository
    TargetModel
    EnabledFullTargetModel
    EnabledTargetModel
    TargetRepository
    TargetAccessLevel
    TargetHosts
    TARGET_REPOSITORY
    targetAccessLevelSchema
    targetBodySizeLimitSchema
    targetConnectTimeoutSchema
    targetContentSchema
    targetDomainSchema
    targetHeadersSizeLimitSchema
    targetLabelSchema
    targetLabelsSchema
    targetPortSchema
    targetSimpleTimeoutSchema
    targetStreamTimeoutSchema
    targetSubSchema
    FullRedirectorModel
    RedirectorModel
    RedisRedirectorRepository
    RedirectorRepository
    RedirectorParams
    REDIRECTOR_REPOSITORY
    redirectorFieldSchema
    redirectorFieldsSchema
    redirectorPageSchema
    redirectorParamsSchema
    LureModel
    RedisLureRepository
    EnabledLureModel
    LureRepository
    LURE_REPOSITORY
    lurePathSchema
    RedisSessionRepository
    SessionModel
    SessionRepository
    UpgradeSessionParams
    SESSION_REPOSITORY
    upgradeSessionParamsSchema
    FullMessageModel
    MessageModel
    RedisMessageRepository
    MessageRepository
    MESSAGE_REPOSITORY