Skip to content

trufae/parla

Repository files navigation

Parla logo

Parla

A Delta Chat client for GNOME — chat over email, decentralized and encrypted.

CI Flatpak License GTK4 + libadwaita Vala


Lightweight Vala + GTK4 + libadwaita desktop client that talks to deltachat-rpc-server over JSON-RPC. Follows GNOME HIG, works on desktop and mobile form factors.

Features

Messaging

  • Rich compose bar — multi-line text, file attachments via picker or drag-and-drop, paste images or files straight from the clipboard.
  • Reply, edit, delete, forward — full message actions via right-click; delete-for-self or delete-for-everyone on your own messages.
  • Emoji reactions — quick-pick 👍 ❤️ 😂 😮 😢 👎 shown as badges on the message.
  • Pinned messages — pin any message in a chat; a pinned-messages bar at the top of the conversation lets you jump back to them.
  • Reply previews — quoted sender and text preview (capped at 3 lines) above the compose entry and inside bubbles.
  • Inline image previews with a full-screen viewer (click to open, right-click to save, Escape to close).
  • Optional Markdown renderingbold, italic, strikethrough, inline code, fenced code blocks, headings, and auto-linkified URLs.
  • In-chat search (Ctrl+F) with real-time filtering and highlight.
  • Save attachments to disk from the message context menu.

Chats

  • Adaptive split-view sidebar + conversation, collapsing to a single pane on narrow windows with a back button.
  • Chat list with avatars, unread dots and badges, last-message preview, smart timestamps (time / weekday / date), pinned indicator and muted styling.
  • Pin, mute, delete chats from the sidebar context menu; view chat info (members, avatar, type) in a dedicated dialog.
  • Contact requests surfaced with their own badge.
  • Sidebar search to filter chats by name.
  • Quick switcher fuzzy chat search, Enter to open the top match.
  • New 1:1 chat via contact picker, and new group with name, avatar and member selection.

Accounts & profile

  • Auto-discovery of existing Delta Chat accounts from Delta Chat Desktop, Flatpak and Snap installations — no re-login needed.
  • Auto-discovery of deltachat-rpc-server from $PATH, ~/.local/bin, pip user installs, virtualenvs, and Flatpak runtimes.
  • Multi-account switching from the settings dialog.
  • My Profile dialog to edit display name, status and avatar.
  • End-to-end encryption via Autocrypt, handled by the Delta Chat core.

Settings

  • Double-click action on a message: Reply / React ❤️ / React 👍 / Open profile / None.
  • Toggle Markdown rendering.
  • Toggle Shift+Enter vs Enter to send.
  • Toggle desktop notifications for incoming messages when the window is unfocused.

Keyboard shortcuts

Action Shortcut
New chat Ctrl+N
New group Ctrl+G
Quick chat switcher Ctrl+K
Search in conversation Ctrl+F
Focus compose entry Ctrl+L
Refresh Ctrl+R
Settings Ctrl+,
Close window Ctrl+W
Quit Ctrl+Q
Close dialog / viewer / search Esc

Build

# Install dependencies (Ubuntu)
sudo apt install valac meson libgtk-4-dev libadwaita-1-dev libjson-glib-dev

# Install the RPC backend
pip install deltachat-rpc-server

# Build & run
make ; make run
Other distros

Fedora: sudo dnf install vala meson gtk4-devel libadwaita-devel json-glib-devel

Arch: sudo pacman -S vala meson gtk4 libadwaita json-glib

FlatPak: flatpak install io.github.trufae.Parla.flatpak

Contributing

Early-stage project — contributions welcome! Open areas: Flatpak packaging, theming, richer notifications, accessibility polish, and more message types.

License

GPLv3 — see LICENSE.

Built on Delta Chat, GNOME and libadwaita.

About

Native Gnome DeltaChat client

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages