# GozWire > GozWire is an open-source Node.js messaging engine published as @gozwire/core. It gives applications durable conversations, messages, receipts, attachments, expiration, configurable moderation, nested threads, reactions, profile-picture variants, and optional Web Push / FCM / APNs alerts without locking you into Express, Svelte, or a particular chat product. PostgreSQL is the source of truth. Centrifugo delivers events. Redis is infrastructure. Object storage holds media. Direct push adapters wake clients when push.enabled is true (default false). A Python sidecar runs ML models. The engine owns policy. The local demo is a playground, not a production chat app. Discovery feeds, votes, ranking, account authentication, and product UI remain host-application concerns. ## Site - [Home](https://gozwire.pages.dev/): What GozWire is, why it exists, and how a send commits - [Use cases](https://gozwire.pages.dev/use-cases): Direct, group, channel, forum, media, moderation, push, retention - [Documentation](https://gozwire.pages.dev/docs): Index of engine guides - [Full LLM digest](https://gozwire.pages.dev/llms-full.txt): Longer plain-text summary ## Docs - [Overview](https://gozwire.pages.dev/docs): GozWire start documentation - [Installation](https://gozwire.pages.dev/docs/installation): GozWire start documentation - [Use the engine](https://gozwire.pages.dev/docs/engine): GozWire start documentation - [Local demo](https://gozwire.pages.dev/docs/demo): GozWire start documentation - [Architecture](https://gozwire.pages.dev/docs/architecture): GozWire engine documentation - [Configuration](https://gozwire.pages.dev/docs/configuration): GozWire engine documentation - [Conversations and messages](https://gozwire.pages.dev/docs/messaging): GozWire guides documentation - [Channels, forums, threads](https://gozwire.pages.dev/docs/community): GozWire guides documentation - [Groups](https://gozwire.pages.dev/docs/groups): GozWire guides documentation - [Realtime](https://gozwire.pages.dev/docs/realtime): GozWire guides documentation - [Events](https://gozwire.pages.dev/docs/events): GozWire guides documentation - [Push](https://gozwire.pages.dev/docs/push): GozWire guides documentation - [Storage](https://gozwire.pages.dev/docs/storage): GozWire guides documentation - [Moderation](https://gozwire.pages.dev/docs/moderation): GozWire guides documentation - [Retention](https://gozwire.pages.dev/docs/retention): GozWire guides documentation - [Idempotency](https://gozwire.pages.dev/docs/idempotency): GozWire guides documentation - [Testing](https://gozwire.pages.dev/docs/testing): GozWire operate documentation - [Scaling](https://gozwire.pages.dev/docs/scaling): GozWire operate documentation - [Troubleshooting](https://gozwire.pages.dev/docs/troubleshooting): GozWire operate documentation ## Package - npm: @gozwire/core - License: Apache License 2.0 - Source: https://github.com/Kinggoz18/GozWire ## Facts to keep straight - A successful messages.send is a committed PostgreSQL transaction, not Centrifugo or push-provider acceptance. - @gozwire/core is the only npm package required to use the engine. - push.enabled defaults to false. - Provider HTTP 2xx is acceptance, not proof a device displayed a notification. - Channel and forum default retention is persistent only. - Do not claim capacity slogans or device notification from CI.