Reference
Changelog
What changed in each Row-Template release, with the notes that matter when you upgrade.
The full changelog, including internal and development changes, is CHANGELOG.md in the repository.
1.4.0
Latest Released 28 September 2026. Every country’s flag on every platform; on PasarGuard, the applications and the announcement link you already set in the panel; live figures on PasarGuard and Rebecca; and the name and support link your panel holds, offered at install. Row stays the default design, and nothing changes for an existing install except what is listed below.
Added
- Every country’s flag, on every platform. The page carries its own flag font (Twemoji’s flags), used for the flag badge only, so all 258 flags look the same everywhere — including Chromium-based browsers on Windows, which have no flags and showed two letters such as
DE. It covers flag emoji and country codes alike (🇹🇷 Istanbul,TR | Ankara,GB-LON-1);UKshows the British flag, andXK(Kosovo) is recognised. Details → - PasarGuard: your own applications. When you list applications in Settings → Subscription → Applications, the Connect card shows those instead of its built-in apps: a tab per platform you cover, your recommended app first, your descriptions in the subscriber’s language, and a download link. Import uses the link PasarGuard built for the subscriber; icons are not loaded. Details →
- PasarGuard: the announcement’s own link. An announcement with an address set in the panel gains an Open link under its text.
- Live figures on PasarGuard and Rebecca. Usage, expiry and online status refresh while the page is open, on every panel. Details →
- Your panel’s name and support link, offered at install. On PasarGuard and Rebecca a fresh install shows the subscription title and support link already set in the panel and asks Use them for this page?;
RT_PANEL_BRANDING=1takes them in a script, and the manager offers them on an existing install. The panels’ defaults are never offered. Details →
Fixed
- A panel’s default support link no longer replaces yours. Rebecca’s support URL defaults to the bare
https://t.me/, and a support link from the panel outranks the one set in Row-Template, so on a default Rebecca the page’s Contact support went to Telegram’s front page. The bare default now counts as no link, on Rebecca and PasarGuard alike. - Rolling back after the update keeps your design. A rollback to the backup an older updater took restored Row instead of the design you had; it now restores the design that backup’s saved settings selected.
Changed
- The page is larger, and paints as early as before. Each design grows by 81 KB, most of it the flag font; the page’s size limit is 280 KiB. The font is placed after the page’s content, so the first paint does not wait for it — measured on a slow phone and a 3G link, the page appears as early as 1.3.1’s, and finishes loading about 0.4 s later on that link. Script time is unchanged.
- Tabs wrap. With more than four platforms in a PasarGuard list, the tab strip wraps onto a second line in every design.
- The refusal of Rebecca’s Docker edition now points to Rebecca’s binary installer (
rebecca-binary.sh).
Known limitations
PasarGuard application icons are not shown; the name and support link are offered from a SQLite database only; PasarGuard’s page title and Clash templates are not produced; Rebecca on MySQL/MariaDB needs its page selected by hand. All limitations →
Upgrading
- From 1.3.x, 1.2.0 or 1.1.0, on any panel: run
row-template updateonce. Details → - A rollback restores the page and the recorded version, not the manager itself, and only the two newest backups are kept. Details →
1.3.1
Released 27 September 2026. A hotfix release: everything fixed after 1.3.0, packaged as one small update. Nothing changes for an existing 3X-UI install.
Fixed
- PasarGuard and Rebecca pages are named after the subscriber. They used to title themselves “Subscription”. On PasarGuard the admin’s own profile title names the page when there is one — one that still holds a per-subscriber placeholder such as
{USERNAME}is skipped — and the subscriber’s username otherwise; on Rebecca, the username. - Flags from country codes. A node name carrying a two-letter country code (
TR | Istanbul,RU-01,GB-LON-1) draws that country’s flag, as a flag emoji does. A code counts only in capitals and standing on its own, and only when it names a real country; country and city names are not read.
Upgrading
row-template update, on any panel.
1.3.0
Released 26 September 2026. Row-Template installs on PasarGuard and Rebecca as well as 3X-UI, and ships two more designs. Nothing changes for an existing 3X-UI install except what is listed below, and Row stays the default design. It also includes every fix prepared for 1.2.1, which was not released on its own.
Added
- PasarGuard support (5.x, the official Docker install or a source install): detect, install, activate, verify, back up, restore and uninstall. The page is placed in PasarGuard’s templates directory and selected by one marked block appended to
/opt/pasarguard/.env; a running panel is restarted once, none of your own lines is edited, and uninstall returns.envto its exact previous bytes. Activation → - Rebecca support (1.x, the Go edition from Rebecca’s binary install), with the same operations. The page is placed in Rebecca’s templates directory and selected in its subscription settings, which Rebecca reads on every request — nothing is restarted. Automatic with the default SQLite database and
sqlite3; with MySQL/MariaDB you enter two values in the dashboard. Activation → - Panel detection and choice. The installer finds the panel on the server; a panel counts only when two independent signs agree. On a server with more than one it asks, or reads
RT_PANELin a script. - Transactional activation on PasarGuard and Rebecca: the panel’s settings are snapshotted, changed and verified, and restored exactly if any step fails.
- Two new designs, Meter and Notebook — seventeen in all, on every panel. See them →
- Every design for every panel: each release carries a PasarGuard and a Rebecca version of every design, checksum-verified like the 3X-UI pages.
Fixed
- Rolling back to a backup taken under 1.1.0 works. A backup that names its design is restored as that design; one whose page is none of this release’s designs is restored as Row, and
verify, switching and updates keep working afterwards. - One
row-template updateis enough to move from 1.1.0: the manager,configorverifycompletes the installation from the same release. Misplaced designs are moved back, andverifynames missing and damaged designs. - A rollback made in the same second as the change before it now undoes that change; the live check after
config,updateandrollbackruns on 3X-UI; a page change that cannot reach PasarGuard or Rebecca changes nothing; and a valid page is never refused on a busy server.
Security
- Every PasarGuard and Rebecca page wraps its body in an explicit autoescape block, so every value is escaped on every panel, and branding can never open a template tag.
- PasarGuard’s
.envand Rebecca’s database settings are read only for the keys the installer needs, never printed, and never copied into a backup. - Backups record their panel and are never restored onto another one.
Changed
row-template versionshows the panel it serves.row-template uninstallreturns each panel to the page it had before Row-Template, and leaves a page you chose afterwards alone.- A scripted fresh install on a server with more than one supported panel needs
RT_PANEL. It stops before changing anything rather than guess.
Known limitations
Live refresh is 3X-UI only; Rebecca’s Docker image (0.0.x) is refused; Rebecca on MySQL/MariaDB needs its page selected by hand; PasarGuard’s page title and Clash templates are not produced. All limitations →
Upgrading
- From 1.2.0 or 1.1.0 on 3X-UI: run
row-template updateonce. Details → - On PasarGuard or Rebecca: run the installer — earlier releases did not install on these panels.
- A rollback restores the page and the recorded version, not the manager itself, and only the two newest backups are kept. Details →
1.2.0
Released 24 September 2026. Row-Template becomes a collection of designs. Row stays the default, and 3X-UI 3.6.0 or newer stays the only supported panel.
Added
- Fifteen designs — Row, Editorial, Canvas, Prism, Terminal, Pulse, Brutal, Arcade, Sketch, Signature, Saffron, Pulse Nova, Prism Nova, Terminal Nova and Arcade Nova — all built from the same runtime and translations. See them →
- Choosing a design: a chooser on fresh interactive installs,
RT_TEMPLATEfor unattended ones, and Reconfigure branding → Template in the manager. Updates keep the choice. - Checksummed designs: each design ships with its own SHA-256, and
verifychecks all of them and confirms the live page is the selected design. - Painted flags for Germany, France, the Netherlands, Japan, Sweden and the United States, so they show on Windows too.
- Page shells for PasarGuard and Rebecca packaged under
shells/, not yet installed by 1.2.0 — support for both panels arrived in 1.3.0.
Changed
- Panel database detection fails closed: the first database file found is used only if it is a real SQLite database; otherwise it is refused instead of silently trying another.
- Live refresh accepts only its own data: an unexpected response stops refreshing and keeps the server-rendered figures.
- The release now includes the installer’s companion files (
lib/transaction.sh,panels/), and install and update refuse a release in which they are missing.
Upgrading
In 1.2.0, the first row-template update from 1.1.0 — performed by 1.1.0’s own updater — installed only Row, and a second update installed every design and the remaining files. Updating from 1.1.0 straight to 1.3.0 takes one update. Details →
In 1.2.0, rolling back to a backup made by 1.1.0 was refused; 1.3.0 restores it. Details →
1.1.0
Released 30 August 2026. The page becomes a connection and configuration hub.
- Configuration Explorer: every server on its own row, with a flag or monogram, the name, a protocol label, and View (local QR and copy) and Copy. Search for long lists; duplicates collapsed; malformed links isolated.
- Protocol labels for VLESS, VMess, Trojan, Shadowsocks, Hysteria/Hysteria2, WireGuard, AmneziaWG and Telegram MTProto.
- Country badges only from a valid country code in the configuration’s own label — never guessed from a host or IP.
- Links stay masked until View, are never logged, and QR codes are rendered locally.
- Updating from 1.0.0 keeps branding and a backup for rollback.
1.0.0
Released 30 August 2026. First stable release.
- A self-contained subscription page for 3X-UI — one HTML file with everything inlined, no external requests.
- White-label branding: service name, support link and logo, stored as data and injected safely.
- Five languages with right-to-left support.
- One-command installer with mandatory SHA-256 verification, safe extraction and atomic activation.
- The
row-templatemanager:config,update,rollback,verify,version,uninstallandhelp. - Backups and rollback that keep your branding.