---slug: /guides/chat-overviewsidebar_position: 0---import style from ./chat-overview.module.scss;# Chat Overview## API OptionsThe SignalWire Chat API is a flexible IP Message Bus that you can use to send and receive messages.### PubSubThe most basic chat functionality is provided in a **PubSub** environment, which has two main components: **Channels** and **Messages**. Messages are published to a channel and the new message event is available to any subscribers. This means the publishers and subscribers are isolated and do not need to know where the messages are coming from or being read. If this sounds like the messaging model that meets your needs, check out our PubSub service. Integrate PubSub into your web app.
Manage subscriptions and event listeners.
### Chat**Chat** service extends PubSub with a third main component: **Members**.You can create channels, members can subscribe to those channels, and they can send attributed messages that every other subscriber will be able to see. Members can even carry state. If this model better suits your needs, Chat is for you! Integrate Chat features into any web app.
Manage members, subscriptions and event listeners, and send messages to a particular channel.
## What Kind of Guide are you Looking for?Guides in **Getting Started** focus on installation, authentication, and the most basic example of a chat message.**Examples** include full walkthroughs of more specific use cases with either a dedicated GitHub repo or extensive embedded code examples.## Popular Guides Learn how to use our powerful SDKs to build a simple browser chat application.
Use our Browser SDK to create a chat application with the popular React framework.