Skip to content

Commit 91c80b0

Browse files
authored
fix(header): header and application spacing (#88)
* fix(header): header and application spacing * feat: scroll catalog page content * fix: scrollbar positioning * fix: horizontal alignement for table, app and scrolling * leftover
1 parent f6747d0 commit 91c80b0

File tree

8 files changed

+31
-33
lines changed

8 files changed

+31
-33
lines changed

biome.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"$schema": "https://biomejs.dev/schemas/2.3.6/schema.json",
2+
"$schema": "https://biomejs.dev/schemas/2.3.7/schema.json",
33
"vcs": {
44
"enabled": true,
55
"clientKind": "git",

src/app/catalog/components/servers-table.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,9 @@ export function ServersTable({ servers, onServerClick }: ServersTableProps) {
2525
<Table>
2626
<TableHeader className="bg-muted/50">
2727
<TableRow>
28-
<TableHead className="w-[187px]">Server</TableHead>
29-
<TableHead>About</TableHead>
30-
<TableHead className="w-[120px]" />
28+
<TableHead className="w-2/12 pl-4">Server</TableHead>
29+
<TableHead className="w-9/12">About</TableHead>
30+
<TableHead className="w-1/12" />
3131
</TableRow>
3232
</TableHeader>
3333
<TableBody>
@@ -43,7 +43,7 @@ export function ServersTable({ servers, onServerClick }: ServersTableProps) {
4343
onClick={() => onServerClick?.(server)}
4444
className={onServerClick ? "cursor-pointer" : undefined}
4545
>
46-
<TableCell className="font-medium">{serverName}</TableCell>
46+
<TableCell className="font-medium pl-4">{serverName}</TableCell>
4747
<TableCell className="overflow-hidden text-ellipsis whitespace-nowrap">
4848
{description}
4949
</TableCell>

src/app/catalog/components/servers-wrapper.tsx

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ export function ServersWrapper({ servers }: ServersWrapperProps) {
1818
const [searchQuery, setSearchQuery] = useState("");
1919

2020
return (
21-
<>
21+
<div className="flex flex-col h-full">
2222
<PageHeader title="MCP Server Catalog">
2323
<ServerFilters
2424
viewMode={viewMode}
@@ -28,11 +28,13 @@ export function ServersWrapper({ servers }: ServersWrapperProps) {
2828
/>
2929
</PageHeader>
3030

31-
<Servers
32-
servers={servers}
33-
viewMode={viewMode}
34-
searchQuery={searchQuery}
35-
/>
36-
</>
31+
<div className="flex-1 overflow-auto">
32+
<Servers
33+
servers={servers}
34+
viewMode={viewMode}
35+
searchQuery={searchQuery}
36+
/>
37+
</div>
38+
</div>
3739
);
3840
}

src/app/catalog/components/servers.tsx

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -50,15 +50,17 @@ export function Servers({ servers, viewMode, searchQuery }: ServersProps) {
5050

5151
if (viewMode === "list") {
5252
return (
53-
<ServersTable
54-
servers={filteredServers}
55-
onServerClick={handleServerClick}
56-
/>
53+
<div className="pb-6">
54+
<ServersTable
55+
servers={filteredServers}
56+
onServerClick={handleServerClick}
57+
/>
58+
</div>
5759
);
5860
}
5961

6062
return (
61-
<div className="grid grid-cols-1 gap-6 md:grid-cols-2 lg:grid-cols-3">
63+
<div className="grid grid-cols-1 gap-6 pb-6 md:grid-cols-2 lg:grid-cols-3 px-4">
6264
{filteredServers.map((server) => (
6365
<ServerCard
6466
key={server.name}

src/app/catalog/layout.tsx

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,11 @@ export default async function CatalogLayout({
66
children: React.ReactNode;
77
}>) {
88
return (
9-
<>
9+
<div className="flex flex-col h-screen">
1010
<Navbar />
11-
{children}
12-
</>
11+
<main className="flex flex-col flex-1 overflow-hidden px-4 py-5">
12+
{children}
13+
</main>
14+
</div>
1315
);
1416
}

src/app/catalog/page.tsx

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,5 @@ export default async function CatalogPage() {
1515

1616
const servers = await getServers();
1717

18-
return (
19-
<div className="flex min-h-screen flex-col">
20-
<div className="container mx-auto space-y-6 py-2">
21-
<ServersWrapper servers={servers} />
22-
</div>
23-
</div>
24-
);
18+
return <ServersWrapper servers={servers} />;
2519
}

src/components/header-page.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ export function PageHeader({
99
}) {
1010
return (
1111
<header className="w-full bg-background">
12-
<div className="container mx-auto flex items-center justify-between py-2">
12+
<div className="mx-auto flex items-center justify-between pb-5 px-4">
1313
<h1 className="text-2xl font-bold">{title}</h1>
1414
{children && <div className="flex items-center gap-2">{children}</div>}
1515
</div>

src/components/navbar.tsx

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,9 @@ export async function Navbar() {
99
});
1010

1111
return (
12-
<header className="w-full border-b bg-muted/50">
13-
<div className="container mx-auto flex items-center justify-between px-4 py-4">
14-
<NavbarLogo />
15-
{session?.user?.name && <UserMenu userName={session.user.name} />}
16-
</div>
12+
<header className="w-full border-b bg-muted/50 flex items-center justify-between pl-8 pr-4 h-16">
13+
<NavbarLogo />
14+
{session?.user?.name && <UserMenu userName={session.user.name} />}
1715
</header>
1816
);
1917
}

0 commit comments

Comments
 (0)