mrkeyoor.com_
Tue 10 Nov 08:23 UTC
Webevaluationupdated 10 Nov 2026

Serein review

Serein is an unofficial Discord desktop client written in Rust, with a native interface for messages, calls and screen sharing. It connects an existing Discord account directly to Discord's services, and its README warns that this unofficial account use carries a risk of account termination.

Verdict

Serein's build failed after 134 seconds in our sandbox because GTK 4.8.3 did not meet the required GTK 4.10 minimum, leaving the client itself unevaluated. Consider it as an unofficial-client experiment only if you accept the README's account warning and can meet the platform requirements. Keep the official Discord client when account certainty or verified everyday behavior is the deciding requirement.

We ran it

Lab card: what happened when we ran SereinScreenshot of Serein (discord.gg/UqTDGCENaN)
Install✓ · 47s836 packages
Build✗ · 134s
Tests✗ · 13sran, no count parsed
Repo1328 files~372,991 lines of source · 121.3 MB · 6 CI workflows · tests dir

Answers from our run

Does Serein build from source?

Dependencies installed in 47 seconds (836 packages), and the build failed. We cloned commit a7d57c6 into a clean Debian container with 3 CPUs and no project-specific setup.

Do Serein's tests pass?

No. The project's own test command exited unsuccessfully after 13 seconds, and its output did not expose an individual test count.

Who should not use Serein?

Anyone unwilling to accept account risk: the README explicitly warns about termination when normal accounts are automated outside the official API.

What are the alternatives to Serein?

Discord, Vesktop. Serein's build failed after 134 seconds in our sandbox because GTK 4.

SetupN/AOur source run stopped at an unsupported GTK version before the application could be evaluated; supported source and packaged installations were not reproduced.
Docs4/5The README and platform guide explain distribution choices, native prerequisites, credential storage and explicit verification gaps. Several packaged and native interaction claims remain unverified by our run.
CommunityN/ANightly releases and public reports show activity, but support responsiveness and contributor capacity were not assessed.
MaturityN/ACompilation stopped before runtime checks, so we did not assess login, message delivery, calls, Linux capture or daily-use reliability.

Who it’s for

Rust developers interested in studying or contributing to a native Discord client.
Desktop enthusiasts willing to evaluate an unofficial client after reading its account-risk warning.
Linux source builders prepared to match the documented GTK, WebKitGTK, graphics and keyring requirements.

Who it’s NOT for

Anyone unwilling to accept account risk: the README explicitly warns about termination when normal accounts are automated outside the official API.
Linux source users limited to GTK 4.8.3: our build required GTK 4.10 or newer and could not proceed.
Users requiring verified Linux screen sharing or complete input-method support: the README marks Linux capture and full IME and bidirectional editing as unverified.
People requiring an application-encrypted local chat cache: the README says its SQLite store is not encrypted by the application.

Setup reality

Our November 9, 2026 run at a7d57c6 completed installation in 47 seconds and recorded 836 dependencies. The build failed with exit 101 after 134 seconds, and tests failed with exit 101 after 13 seconds. Both log tails show pkg-config finding GTK 4.8.3 when gdk4-sys required GTK 4.10 or newer. No application test outcome follows from that compilation blocker.

Real use needs an existing Discord account and network access to Discord. The README describes sign-in through a temporary native webview and token storage in the operating-system credential store, with an explicit plaintext fallback. The local SQLite cache is not encrypted by the application.

The configured sandbox had 3 CPUs, 12 GB RAM and image label lab-rust:1, which does not establish actual runtime or operating-system versions. Linux source setup also needs native libraries beyond Cargo packages. The README recommends Flatpak, but our run did not evaluate Flatpak, downloaded binaries or a supported graphical session.

The source build stopped before Discord login

Serein's build failed after 134 seconds in our sandbox because the available GTK version was too old. We never reached a running client. For someone attracted by a Rust alternative to Discord's desktop interface, that result establishes a prerequisite to fix before assessing the product, without proving that messaging or calls are broken.

The project describes a native interface built with egui and wgpu, connecting directly to Discord's gateway and REST services. Its README lists messages, voice calls, screen sharing and local history. Those capabilities make it a candidate for an enthusiast trial, but they remain upstream descriptions in this review.

There is also a decision you can make before compiling anything. Serein's README warns that unofficial automation of normal Discord accounts outside the official API carries a risk of account termination. If that is unacceptable for your account, use the official client. A smaller interface or a preferred implementation language does not resolve that warning.

What happened when we ran it

Our installation completed in 47 seconds with 836 dependencies recorded at commit a7d57c6 on November 9, 2026. The build failed with exit 101 after 134 seconds. Tests also failed with exit 101 after 13 seconds, encountering the same native dependency requirement before producing an application test result.

Both log tails show pkg-config checking for gtk4 >= 4.10. It found GTK 4.8.3 and reported that the requirement could not be satisfied. The gdk4-sys crate therefore lacked a usable system library for this compilation. GTK was present, but its version did not meet the requirement. The diagnostic also prints an empty PKG_CONFIG_PATH, which does not by itself establish a separate configuration defect.

The configured sandbox had 3 CPUs, 12 GB RAM and image label lab-rust:1. The label does not identify the actual Rust or operating-system version. Our checkout contained 1,328 files, approximately 372,991 source lines and occupied 121.3 MB. The scan found six CI workflow files, a tests directory and no Dockerfile.

We have no passing-test count, completed application session or resource-use benchmark to report. The README's performance comparisons are upstream claims that this run did not reproduce. Even after correcting the GTK prerequisite, login and desktop behavior would need their own evaluation.

Linux packages and source builds have different requirements

The current platform guide explicitly requires GTK 4.10 or newer on Linux, alongside WebKitGTK, fontconfig, graphics support and a Secret Service keyring session. That agrees with the version requirement in our log. Installing Rust packages cannot supply every native desktop dependency.

The README recommends Flatpak on Linux and says it bundles GNOME and WebKit runtimes. It also offers native packages and an AppImage. The AppImage uses host GTK4 and WebKitGTK libraries, so the portable format should not be read as a promise that host prerequisites disappear. None of those distribution routes was evaluated in our sandbox.

Native Linux capture remains unverified in the README, and the platform guide describes additional portal, PipeWire and codec requirements for screen sharing. If sharing a screen is your reason to switch, verify it on your compositor and with a real receiving client before relying on it. Our failure occurred earlier and says nothing about that workflow's outcome.

The local cache is not encrypted by the application

Serein documents a temporary native webview for Discord login and operating-system credential storage for session tokens. An explicit setting allows plaintext fallback storage if the keyring does not work. A user who enables that fallback changes the credential-storage boundary and should understand where those files live.

Chat history and drafts use a bounded local SQLite cache. The README explicitly says that this store is not encrypted by the application and that explicit logout clears the account's local data. Credential-vault storage and cache encryption are separate properties. We inspected the documented behavior, without verifying deletion, keyring integration or the login handoff.

Input support also needs qualification. The feature matrix marks internationalization as partial, with full input-method and bidirectional editing unverified. A worldwide user who depends on those input paths should test ordinary writing, editing and message composition before considering Serein an everyday client.

Recent nightlies show work, without settling daily reliability

The public releases page lists a November 8, 2026 nightly with changes to graphics selection, composer shortcuts and Linux screen sharing. Public issues include reports about flickering and text input. These establish concrete areas of current activity, without showing how commonly users encounter a defect or how quickly maintainers resolve it.

Nightly labels do not establish maintainer response times, so community support remains unassessed. Our documentation rating is 4 on a five-point editorial scale: 1 means essential guidance is absent, 3 means a usable path has material gaps, and 5 requires independent verification of the covered instructions. Detailed prerequisites and explicit limits support 4, while our blocked run prevents that last step.

Discord's own download page provides the official application. Choose it when the official-client path is the requirement. Vesktop is another custom desktop client, with Vencord preinstalled and Linux screensharing listed in its README. We did not compare either client's speed or reliability. For Serein, resolve the account warning first, then evaluate a supported package or environment before making it your daily chat client.

Alternatives

ProjectWhat it isPick it when
DiscordThe official Discord application, distributed by Discord for desktop and mobile platforms.Pick this instead when using the official client matters more than adopting Serein's Rust interface and unofficial account connection.
VesktopA custom Discord desktop application with Vencord preinstalled.Pick this instead when you want to evaluate Vencord integration or its documented Linux screensharing support. It remains a custom client, and we did not test it or establish that it removes account risk.

What people are saying

  1. [github-trending] ViceVerse-cz/Serein

Sources

  1. Serein README
  2. Serein platform requirements
  3. Serein releases
  4. Serein public issues
  5. Discord downloads
  6. Vesktop README

More web reviews

lexical · vue · astryx · ungoogled-chromium · docsify · ScanRuler · the whole board →