Unofficial GTK client for WhatsApp, built with Rust. https://git.amanoteam.com/AmanoTeam/Papo
  • Rust 93%
  • Meson 2.9%
  • SCSS 1.9%
  • Nix 1.3%
  • Shell 0.9%
Find a file
2026-07-07 00:10:28 -03:00
.github/workflows ci: remove dependabot 2026-02-21 01:59:52 -03:00
build-aux chore: add network permission to flatpak manifests 2026-07-06 22:17:26 -03:00
data chore(meson): include forgotten style files 2026-03-25 21:00:41 -03:00
hooks Init with GTK Rust Template 2026-02-12 13:37:20 -03:00
po chore: change linked devices wording to use official names 2026-07-06 22:27:07 -03:00
src feat: remove unused RuntimeCache 2026-07-07 00:10:28 -03:00
.editorconfig refactor: rebrand to Papo, a GTK WhatsApp client 2026-02-12 17:23:01 -03:00
.envrc refactor: rebrand to Papo, a GTK WhatsApp client 2026-02-12 17:23:01 -03:00
.gitignore refactor: remove ChatMessageListItem wrapper and implement RelmListItem on ChatMessage directly 2026-02-28 20:51:14 -03:00
AGENTS.md docs: add comprehensive AI agent guidelines for project development 2026-07-04 19:52:57 -03:00
build.rs refactor: redesign login view with stacked page navigation 2026-03-24 23:55:18 -03:00
Cargo.lock chore(deps): bump libadwaita to 0.9, relm4 to 0.11, switch whatsapp-rust to registry 2026-07-04 19:52:57 -03:00
Cargo.toml chore: disable package tombi auto-sorting 2026-07-06 23:19:33 -03:00
default.nix fix(nix): add bubblewrap as dependecy which provides bwrap 2026-07-06 19:34:55 -03:00
flake.lock chore(nix): update rust nightly version 2026-07-06 23:46:06 -03:00
flake.nix chore(nix): update rust nightly version 2026-07-06 23:46:06 -03:00
LICENSE refactor: rebrand to Papo, a GTK WhatsApp client 2026-02-12 17:23:01 -03:00
meson.build feat: implement auth 2026-02-19 00:03:54 -03:00
meson_options.txt Init with GTK Rust Template 2026-02-12 13:37:20 -03:00
README.md docs: revamp README with logo, badges, updated roadmap, and disclaimer 2026-07-06 23:31:55 -03:00
rust-toolchain.toml chore(nix): update rust nightly version 2026-07-06 23:46:06 -03:00
shell.nix chore(nix): update rust nightly version 2026-07-06 23:46:06 -03:00

Papo logo

Papo

Unofficial GTK client for WhatsApp, built with Rust.

Translation status Telegram

Warning

This project is in an early stage and under active development.

What does "Papo" mean?

"Papo" is Brazilian Portuguese slang for "chat" or "conversation." It is commonly used in the expression "bater um papo," which means to have a chat.

Install

Nix

nix build github:AmanoTeam/Papo
nix run github:AmanoTeam/Papo

Flatpak

flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
flatpak-builder --install --user --install-deps-from=flathub build build-aux/com.amanoteam.Papo.json

Build from source

Requires Rust nightly, GTK4 (>= 4.20), libadwaita (>= 1.8), and Meson.

meson setup build
meson compile -C build
meson install -C build

Roadmap

  • QR code login
  • Phone number pairing (pair code)
  • Chat list
  • Message history
  • Bidirectional infinite scroll pagination
  • Go-to-bottom button
  • Read receipts
  • Send text messages
  • History sync (after pairing)
  • Local message storage (libSQL)
  • Chat filters (all, unread, groups)
  • Profile pictures (chat list)
  • Online status indicators (chat view subtitle)
  • Profile pictures
  • Media messages (images, videos, documents)
  • Voice messages
  • Stickers and animated stickers
  • Contact/chat info panel
  • Notifications
  • Chat search
  • Chat filters (favorites, non-contact)
  • Chat functions (pin, mute, delete, archive)
  • Chat admin functions (ban, change info/settings)
  • Message search
  • Message reactions
  • Reply/quote messages
  • Database encryption
  • Typing indicators

Translations

The project uses gettext for internationalization. Brazilian Portuguese (pt_BR) is currently supported. Translation files are located in the po/ directory, and contributions for new languages are welcome.

Disclaimer

Using custom WhatsApp clients may violate Meta's Terms of Service and could result in account suspension.

Acknowledgements

  • relm4 — Idiomatic GUI framework for GTK4 in Rust
  • whatsapp-rust — Rust implementation of the WhatsApp Web API

Contributing

We accept pull requests from our Forjego instance and GitHub. Fork either repository, create a feature branch, and submit a pull request. Bug reports and feature requests are also welcome via the issue tracker.

License

Licensed under the Apache License 2.0. See the LICENSE file for details.

Author: Andriel Ferreira