git404hub

what is pebble-web fr?

qingj01/pebble-web — explained in plain English

Analysis updated 2026-05-18

13RustAudience · developerComplexity · 3/5LicenseSetup · moderate

tl;dr

Self-hosted web email client written in Rust and React 19, with IMAP/SMTP sync, Tantivy full-text search, and Docker-based deployment for personal mail servers.

vibe map

mindmap
  root((Pebble Web))
    Inputs
      IMAP and SMTP accounts
      .env config
      Docker host
    Outputs
      Web mail UI
      SQLite store
      Tantivy search index
    Use Cases
      Self-host a multi-account mail client
      Translate messages via DeepL or an LLM
      Run a snooze and follow-up workflow
    Tech Stack
      Rust
      Axum
      React
      SQLite
      Tantivy

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

what do people make with this?

VIBE 1

Self-host a multi-account web email client on a Linux box via Docker Compose

VIBE 2

Run full-text search across years of mail using a local Tantivy index

VIBE 3

Translate incoming messages inline through DeepL, DeepLX, or a configured LLM

VIBE 4

Back up settings to WebDAV and sync IMAP folders on a custom interval

what's the stack?

RustAxumTokioReactTypeScriptSQLiteTantivyDocker

how it stacks up fr

qingj01/pebble-webanthropics/cargo-nix-pluginbrassworks-smp/brassworkslauncher
Stars131313
LanguageRustRustRust
Setup difficultymoderatehard
Complexity3/54/53/5
Audiencedeveloperdevelopergeneral

Figures from each repo's GitHub metadata at analysis time.

how do i run it?

Difficulty · moderate time til it works · 30min

Needs Docker plus a JWT secret of at least 32 characters, and the auto-generated encryption key file must be backed up or stored credentials become unreadable.

AGPL-3.0 license: anyone can use and modify the code, but any network service built on it must publish its source under the same terms.

in plain english

Pebble Web is a self-hosted web email client adapted from a desktop application called Pebble. The README is written mainly in Chinese and the interface offers both Chinese and English. It is meant to be installed on a Linux server through Docker and then opened in a browser, so a user runs their own mail client on hardware they control instead of relying on a hosted service. The feature list covers multi-account management with inboxes, folders, threads, starring, archive, and a trash bin. Mail is composed with rich text, Markdown, HTML, attachments, plus reply, forward, and draft support. Accounts sync over IMAP and SMTP at a configurable interval. Full-text search uses Tantivy. Other features include batch operations, custom labels, a task board view of messages, snooze and follow-up lists, translation through DeepLX, DeepL, generic translation services, or a configured large language model, blocking of remote images by default with a trusted-sender list, attachment upload and download, WebDAV backup of settings, and a bilingual interface. For quick deployment, the README shows a one-line install script that pulls the project, writes a .env file, builds the Docker image, and starts the service on port 8080. There is also a Docker Compose flow that clones the repo, copies an example env file, and brings up the stack after setting a login password and a JWT signing secret of at least 32 characters. A manual build path uses Rust 1.80 or newer and Node.js 20 or newer, building the frontend with npm and the backend with cargo. A configuration table lists environment variables for password, JWT secret, port, data directory, static asset directory, sync interval in seconds, and a 32-byte hex encryption key that is auto-generated if not set. The data directory contains a SQLite database, a search index folder, an attachments folder, and an encryption key file that, if lost, makes already-stored credentials unreadable. The technology stack section names React 19, TypeScript, Vite, Tailwind CSS, Zustand, and TanStack Query on the front end, with TipTap for editing, and Rust with Axum and Tokio on the back end. Storage is SQLite through rusqlite, search is Tantivy, and security uses AES-256-GCM, Argon2, and JWT. The license is AGPL-3.0-only.

prompts (copy fr)

prompt 1
Generate a docker-compose.yml that runs Pebble Web behind a Caddy reverse proxy with HTTPS
prompt 2
Write the IMAP/SMTP env block for adding a Fastmail account to Pebble Web
prompt 3
Explain how Pebble Web stores credentials with AES-256-GCM and what happens if the encryption key file is lost
prompt 4
Add a custom label and a snooze rule for newsletters using Pebble Web's task board view

Frequently asked questions

what is pebble-web fr?

Self-hosted web email client written in Rust and React 19, with IMAP/SMTP sync, Tantivy full-text search, and Docker-based deployment for personal mail servers.

What language is pebble-web written in?

Mainly Rust. The stack also includes Rust, Axum, Tokio.

What license does pebble-web use?

AGPL-3.0 license: anyone can use and modify the code, but any network service built on it must publish its source under the same terms.

How hard is pebble-web to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is pebble-web for?

Mainly developer.

peek the repo → explain another one

This repo across BitVibe Labs

double-check against the repo, no cap.