![Streams and private messages overview](/static/images/help/streams-private-overview.png)
Zulip supports both **private messaging** and group chats via conversation **streams**.
**Streams** are either:
* **Public** - Public streams are for open discussions. All users can subscribe to public streams and discuss there. Any Zulip user can join any public stream in the realm, and can view the complete message history of any public stream without joining the stream.
* **Private** - Private streams are for confidential discussions and are only visible to users who've been invited to subscribe to them. Users who are not members of a private stream cannot subscribe to the stream or read or send messages to the stream.
**Private messaging** can either be **one-on-one** or **group** conversations. They can only be seen by users participating in the message.
While sending either a stream or private message, several features located below the messaging box in the bottom-left corner can aid you in composing your message.
Clicking the **smiley face** (![smiley face](/static/images/help/smiley-button.png)) icon allows a box to appear featuring Zulip's vast collection of emojis. You can select an emoji to include in your message.
Clicking the **paper clip** (![paper clip](/static/images/help/paper-clip.png)) icon allows you to select a file from your computer and attach it to your message, uploading it to Zulip to share with your peers.
While the file is uploading, a blue box labeled **Uploading...** will appear, and a link to your file will be included in your message once the file has been uploaded.
Clicking the **A** (![A](/static/images/help/formatting.png)) icon will reveal a modal window with a summary of message formatting in Zulip. For more information on message formatting, see our [message formatting guide](/help/format-your-message-using-markdown).