# Features & roadmap
* Matrix → WhatsApp
* [x] Message content
* [x] Plain text
* [x] Formatted messages
* [x] Media/files
* [x] Replies
* [x] Message redactions
* [ ] Presence[4]
* [ ] Typing notifications[4]
* [ ] Read receipts[4]
* [ ] Power level
* [ ] Membership actions
* [ ] Invite
* [ ] Join
* [ ] Leave
* [ ] Kick
* [ ] Room metadata changes
* [x] Name
* [ ] Avatar[1]
* [ ] Topic[1]
* [ ] Initial room metadata
* WhatsApp → Matrix
* [x] Message content
* [x] Plain text
* [x] Formatted messages
* [x] Media/files
* [ ] Location messages
* [x] Replies
* [ ] Chat types
* [x] Private chat
* [x] Group chat
* [ ] Broadcast list[2]
* [x] Message deletions
* [x] Avatars
* [x] Presence
* [x] Typing notifications
* [x] Read receipts
* [x] Admin/superadmin status
* [ ] Membership actions
* [ ] Invite
* [ ] Join
* [ ] Leave
* [ ] Kick
* [x] Group metadata changes
* [x] Title
* [x] Avatar
* [x] Description
* [x] Initial group metadata
* [ ] User metadata changes
* [ ] Display name[3]
* [x] Avatar
* [x] Initial user metadata
* [x] Display name
* [x] Avatar
* Misc
* [x] Automatic portal creation
* [x] At startup
* [ ] When receiving invite[2]
* [x] When receiving message
* [ ] Private chat creation by inviting Matrix puppet of WhatsApp user to new room
* [ ] Option to use own Matrix account for messages sent from WhatsApp mobile/other web clients
* [x] Shared group chat portals
[1] May involve reverse-engineering the WhatsApp Web API and/or editing go-whatsapp
[2] May already work
[3] May not be possible
[4] Requires [matrix-org/synapse#2954](https://github.com/matrix-org/synapse/issues/2954) or Matrix puppeting