Rename project from KeepItTalking to DS Chat

Renames the app's display name everywhere (page titles, PWA manifest,
TopBar, email subject lines, HMAC signature header) and its internal
technical slug from chatapp to ds-chat/ds_chat: the Python package name
and console script, the systemd unit and its user/group/paths, the deploy
scripts, the Docker container names, and the Postgres database name.

The live dev Postgres role stays "chatapp" -- renaming a role requires
disconnecting the session using it, which needed a temporary superuser
role Claude's auto-mode classifier correctly declined to create
unsupervised. Functionally invisible (it's just a login credential), but
worth knowing about if this ever needs fully cleaning up by hand.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-15 21:11:41 -06:00
co-authored by Claude Sonnet 5
parent 62e4760c8a
commit 14dc340174
29 changed files with 145 additions and 145 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
# KeepItTalking frontend (Phase 1)
# DS Chat frontend (Phase 1)
React + Vite PWA. Login, room list, and chat views wired to the backend's
REST API and `/ws/chat` WebSocket endpoint. See [`../README.md`](../README.md)
+1 -1
View File
@@ -4,7 +4,7 @@
<meta charset="UTF-8" />
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>KeepItTalking</title>
<title>DS Chat</title>
</head>
<body>
<div id="root"></div>
+1 -1
View File
@@ -46,7 +46,7 @@ export function TopBar() {
<header className="top-bar">
<div className="top-bar-brand">
<img src={logo} alt="" className="top-bar-logo" />
<span className="top-bar-title">KeepItTalking</span>
<span className="top-bar-title">DS Chat</span>
</div>
<div className="top-bar-user">
+1 -1
View File
@@ -32,7 +32,7 @@ export function ForgotPasswordPage() {
<div className="login-card">
<div className="login-brand">
<img src={logo} alt="" />
<span>KeepItTalking</span>
<span>DS Chat</span>
</div>
{sent ? (
+1 -1
View File
@@ -34,7 +34,7 @@ export function LoginPage() {
<div className="login-card">
<div className="login-brand">
<img src={logo} alt="" />
<span>KeepItTalking</span>
<span>DS Chat</span>
</div>
<p className="login-copy">This is an invite-only site. Ask an admin for an account.</p>
<form className="login-form" onSubmit={handleSubmit}>
+1 -1
View File
@@ -59,7 +59,7 @@ export function ResetPasswordPage() {
<div className="login-card">
<div className="login-brand">
<img src={logo} alt="" />
<span>KeepItTalking</span>
<span>DS Chat</span>
</div>
{checking && <p className="login-copy">Checking your reset link</p>}
+1 -1
View File
@@ -57,7 +57,7 @@ export function SignupPage() {
<div className="login-card">
<div className="login-brand">
<img src={logo} alt="" />
<span>KeepItTalking</span>
<span>DS Chat</span>
</div>
{checking && <p className="login-copy">Checking your invite</p>}
+2 -2
View File
@@ -23,8 +23,8 @@ export default defineConfig({
},
registerType: 'autoUpdate',
manifest: {
name: 'KeepItTalking',
short_name: 'Talking',
name: 'DS Chat',
short_name: 'DS Chat',
start_url: '/',
display: 'standalone',
background_color: '#07080f', // --ds-void