---
id: overview
title: Overview
sidebar_label: Overview
---

This tutorial convers how Team Chat’s key features are put together, and how you can add them in your own applications.
Each section focuses on one feature of the application.
Although the sections build on each other, feel free to skip around and explore the features that interest you.

- [Theming](/typescript-ref-app-team-chat/docs/tutorial/theming) to quickly customize the look and branding of your application
- [Messaging](/typescript-ref-app-team-chat/docs/tutorial/messages) powered by PubNub
- [Join Conversations](/typescript-ref-app-team-chat/docs/tutorial/join-conversation)
- [Leave Conversations](/typescript-ref-app-team-chat/docs/tutorial/leave-conversation)
- [Conversation Members](/typescript-ref-app-team-chat/docs/tutorial-conversation-members) including online/offline status using Presence
- [Typing Indicators](/typescript-ref-app-team-chat/docs/tutorial/typing-indicators) let users know when another user is typing
- [Profanity Filtering](/typescript-ref-app-team-chat/docs/profanity-filtering) to moderate messages with serverless PubNub functions