5. Rebrand to Jarela¶
Date: 2026-05-17
Status¶
Accepted.
Context¶
The project was previously named "LangGUI". We rebranded to Jarela along with a new logo (a stylized "J" with three pixel accents).
Decision¶
Hard rename across the entire repo. No dual-name shims at the code level.
The only backward-compatibility seam is a one-shot data-directory migration
performed on first launch: if the legacy default directory ~/.langgui exists
and the new default ~/.jarela does not, lib/db/data-dir.ts renames the
directory and rewrites langgui.db* → jarela.db* in place.
What changed¶
- Package name (
package.json):langgui→jarela. - PWA manifest (
public/manifest.json): name, short_name, description. - Document/page title (
app/layout.tsx), Sidebar wordmark, AppShell title. - Data dir:
~/.langgui→~/.jarela. Main DB:langgui.db→jarela.db. - Env vars: every
LANGGUI_*→JARELA_*(DB_DIR, TEST_DB_DIR, TEST_PORT, PROD_DB, SEED_FROM_PROD, URL, VERBOSE, RECURSION_LIMIT, FRONTEND_ORIGIN, PORT, FRONTEND_PORT, WS_PORT, IMAGE_TIMEOUT_MS). - Chat-model class:
LangGuiChatModel→JarelaChatModel(file renamed too). globalThiskeys:__langgui_bridges,__langgui_notif_bus,__langgui_scheduler,__langguiWsState→__jarela_*/__jarelaWsState.- Tailscale WS sidecar path:
/__langgui_ws__→/__jarela_ws__. - CSS classes / keyframes:
.langgui-rich,.langgui-progress,langgui-progress-slide,langgui-toast-shrink→.jarela-*. - localStorage keys:
langgui:ws-url:v2,langgui:notif-banner-dismissed,langgui.notif.lastTs→jarela:*/jarela.*. No fallback read of the old keys — existing browser profiles will quietly re-prompt for the WS URL and the notification banner once. - DOM event:
langgui:focus-agent→jarela:focus-agent. - User-Agent header:
LangGUI/1.0→Jarela/1.0. - Windows install paths:
%LOCALAPPDATA%\Programs\LangGUI→%LOCALAPPDATA%\Programs\Jarela. Logs:%LOCALAPPDATA%\Jarela\logs. Scheduled-task nameLangGUI→Jarela. - Script rename:
scripts/start-langgui.ps1→scripts/start-jarela.ps1. - New asset set generated from the supplied "J" PNG:
public/logo.svg,icon-192.png,icon-512.png,icon-192-maskable.png,icon-512-maskable.png,apple-touch-icon.png,favicon.ico.
Out of scope¶
- DB table names (
threads,messages,memory_store, ...) — unbranded, unchanged. - Removing an existing installed Windows scheduled task named
LangGUI. Users are expected to re-runscripts/install-to-system.ps1after pulling. - The legacy Vite SPA under
frontend/and the deadstart.shshell launcher (both referenced an obsolete Python backend) were deleted in the same commit; they are not part of the Next.js runtime.
Consequences¶
- Existing users with data under
~/.langguiget a single rename on next launch and never see the legacy paths again. - Users who set
LANGGUI_*env vars must rename them. The app will not read the old names. - Existing Windows installations (scheduled task + install dir) are orphaned until the user runs the new install script.