From 95fc6f069346660112a9c56d1e5d74eec17e841d Mon Sep 17 00:00:00 2001
From: Jannis Braun <151788261+TheZwiss@users.noreply.github.com>
Date: Mon, 2 Mar 2026 01:05:42 +0100
Subject: [PATCH] =?UTF-8?q?feat:=20Phase=207=20Aether=20Drift=20=E2=80=94?=
=?UTF-8?q?=20typography,=20spacing=20&=20detail=20alignment?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Align all component typography to the design prototype's exact measurements:
- Message author: 16px bold → 15px semibold
- Message text: 16px → 15px, line-height 1.5
- Timestamps: 12px → 11px
- Category headers: 12px bold → 11px medium, #484854 color
- Member/activity names: 15px → 13.5px with tighter line-height
- Member activity text: 12px → 11px
- Section headers: 12px → 10.5px
- Channel header names: 15px with -0.02em tracking
- Channel topic: 12px → 13px
- Header padding: 16px → 20px
- User area avatar: 32px → 34px
---
packages/web/src/components/chat/Message.tsx | 8 +++----
.../src/components/layout/ActivityPanel.tsx | 10 ++++----
.../src/components/layout/ChannelSidebar.tsx | 12 +++++-----
.../web/src/components/layout/MainContent.tsx | 24 +++++++++----------
.../src/components/layout/MemberSidebar.tsx | 10 ++++----
packages/web/src/styles/globals.css | 1 +
6 files changed, 33 insertions(+), 32 deletions(-)
diff --git a/packages/web/src/components/chat/Message.tsx b/packages/web/src/components/chat/Message.tsx
index 660cf3f5..9167c3c5 100644
--- a/packages/web/src/components/chat/Message.tsx
+++ b/packages/web/src/components/chat/Message.tsx
@@ -199,12 +199,12 @@ export function Message({ message, isCompact, isFirstInGroup }: MessageProps) {
{displayName}
-
+
{formatTime(message.createdAt)}
@@ -216,7 +216,7 @@ export function Message({ message, isCompact, isFirstInGroup }: MessageProps) {
value={editContent}
onChange={(e) => setEditContent(e.target.value)}
onKeyDown={handleEditSubmit}
- className="w-full p-3 bg-surface-input rounded-lg text-txt-primary outline-none resize-none text-[16px] leading-[1.375rem] shadow-inner"
+ className="w-full p-3 bg-surface-input rounded-lg text-txt-primary outline-none resize-none text-[15px] leading-[1.5] shadow-inner"
rows={2}
autoFocus
/>
@@ -233,7 +233,7 @@ export function Message({ message, isCompact, isFirstInGroup }: MessageProps) {
) : (
{message.content && (
-
+
{message.editedAt && (
(edited)
diff --git a/packages/web/src/components/layout/ActivityPanel.tsx b/packages/web/src/components/layout/ActivityPanel.tsx
index 0349745f..c8a1a4e5 100644
--- a/packages/web/src/components/layout/ActivityPanel.tsx
+++ b/packages/web/src/components/layout/ActivityPanel.tsx
@@ -46,7 +46,7 @@ export function ActivityPanel() {
handleFriendClick(e, friend)}
- className="flex items-center gap-3 px-2 py-1.5 rounded-[4px] hover:bg-interactive-hover cursor-pointer group transition-colors"
+ className="flex items-center gap-2.5 px-2 py-1.5 rounded-[4px] hover:bg-interactive-hover cursor-pointer group transition-colors"
>
-
+
{friend.displayName ?? friend.username}
{!isOffline && friend.customStatus && (
-
{friend.customStatus}
+
{friend.customStatus}
)}
@@ -82,7 +82,7 @@ export function ActivityPanel() {
<>
{onlineFriends.length > 0 && (
-
+
ONLINE — {onlineFriends.length}
{onlineFriends.map(f => renderFriend(f))}
@@ -90,7 +90,7 @@ export function ActivityPanel() {
)}
{offlineFriends.length > 0 && (
-
+
OFFLINE — {offlineFriends.length}
{offlineFriends.map(f => renderFriend(f, true))}
diff --git a/packages/web/src/components/layout/ChannelSidebar.tsx b/packages/web/src/components/layout/ChannelSidebar.tsx
index 56aa8eba..47cb5827 100644
--- a/packages/web/src/components/layout/ChannelSidebar.tsx
+++ b/packages/web/src/components/layout/ChannelSidebar.tsx
@@ -281,7 +281,7 @@ export function ChannelSidebar() {
onClick={() => openModal('serverSettings')}
className="flex-1 h-full px-4 flex items-center justify-between hover:bg-interactive-hover transition-colors min-w-0"
>
- {server.name}
+ {server.name}
@@ -306,7 +306,7 @@ export function ChannelSidebar() {
- Text Channels
+ Text Channels
{canManageChannels && (
{canManageChannels && (