Skip to content

Commit 81e0e66

Browse files
Zeff01claude
andcommitted
fix: improve techstack modal layout and positioning
- Set consistent modal height (600px) to prevent resizing between tabs - Fix tabs positioning above tech icons instead of below - Improve flex layout structure to prevent content overflow - Add proper scrolling within modal content area - Remove fixed tab height constraints for better responsive design 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
1 parent 1661305 commit 81e0e66

1 file changed

Lines changed: 13 additions & 13 deletions

File tree

‎apps/codebility/components/modals/TechStackModal.tsx‎

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ const TechStackModal = () => {
4040
<Dialog open={isModalOpen} onOpenChange={() => onClose()}>
4141
<DialogContent
4242
aria-describedby={undefined}
43-
className="bg-light-900 dark:bg-dark-100 h-auto w-[90%] max-w-md max-h-[85vh] py-4 sm:max-w-xl sm:px-6 sm:py-6"
43+
className="bg-light-900 dark:bg-dark-100 w-[90%] max-w-md h-[600px] max-h-[85vh] py-4 sm:max-w-xl sm:px-6 sm:py-6 flex flex-col"
4444
>
4545
<button onClick={onClose} className="absolute right-4 top-4">
4646
<IconClose />
@@ -51,9 +51,9 @@ const TechStackModal = () => {
5151
</DialogTitle>
5252
</DialogHeader>
5353
{/* Tabs for grouping tech stacks by category */}
54-
<div className="flex flex-col h-full min-h-0">
55-
<Tabs defaultValue="all" className="w-full flex flex-col flex-1 min-h-0 h-[400px]">
56-
<TabsList className="mb-3 flex flex-wrap justify-center flex-shrink-0 gap-1 h-8">
54+
<div className="flex flex-col flex-1 min-h-0">
55+
<Tabs defaultValue="all" className="w-full flex flex-col flex-1 min-h-0">
56+
<TabsList className="mb-3 flex flex-wrap justify-center flex-shrink-0 gap-1 h-auto">
5757
<TabsTrigger value="all">All</TabsTrigger>
5858
<TabsTrigger value="frontend">Frontend</TabsTrigger>
5959
<TabsTrigger value="backend">Backend</TabsTrigger>
@@ -65,7 +65,7 @@ const TechStackModal = () => {
6565
</TabsList>
6666

6767
{/* All */}
68-
<TabsContent value="all" className="flex-1 overflow-y-auto">
68+
<TabsContent value="all" className="flex-1 overflow-y-auto mt-0">
6969
<div className="grid w-full grid-cols-3 sm:grid-cols-4 gap-1 pb-2">
7070
{techstacks.map((stackItem, i) => (
7171
<div
@@ -97,7 +97,7 @@ const TechStackModal = () => {
9797
</TabsContent>
9898

9999
{/* Frontend */}
100-
<TabsContent value="frontend" className="flex-1 overflow-y-auto">
100+
<TabsContent value="frontend" className="flex-1 overflow-y-auto mt-0"
101101
<div className="grid w-full grid-cols-3 sm:grid-cols-4 gap-1 pb-2">
102102
{filterByCategory("Frontend").map((stackItem, i) => (
103103
<div
@@ -129,7 +129,7 @@ const TechStackModal = () => {
129129
</TabsContent>
130130

131131
{/* Backend */}
132-
<TabsContent value="backend" className="flex-1 overflow-y-auto">
132+
<TabsContent value="backend" className="flex-1 overflow-y-auto mt-0">
133133
<div className="grid w-full grid-cols-3 sm:grid-cols-4 gap-1 pb-2">
134134
{filterByCategory("Backend").map((stackItem, i) => (
135135
<div
@@ -161,7 +161,7 @@ const TechStackModal = () => {
161161
</TabsContent>
162162

163163
{/* Mobile */}
164-
<TabsContent value="mobile" className="flex-1 overflow-y-auto">
164+
<TabsContent value="mobile" className="flex-1 overflow-y-auto mt-0">
165165
<div className="grid w-full grid-cols-3 sm:grid-cols-4 gap-1 pb-2">
166166
{filterByCategory("Mobile").map((stackItem, i) => (
167167
<div
@@ -193,7 +193,7 @@ const TechStackModal = () => {
193193
</TabsContent>
194194

195195
{/* Blockchain */}
196-
<TabsContent value="blockchain" className="flex-1 overflow-y-auto">
196+
<TabsContent value="blockchain" className="flex-1 overflow-y-auto mt-0">
197197
<div className="grid w-full grid-cols-3 sm:grid-cols-4 gap-1 pb-2">
198198
{filterByCategory("Blockchain").map((stackItem, i) => (
199199
<div
@@ -225,7 +225,7 @@ const TechStackModal = () => {
225225
</TabsContent>
226226

227227
{/* Server */}
228-
<TabsContent value="server" className="flex-1 overflow-y-auto">
228+
<TabsContent value="server" className="flex-1 overflow-y-auto mt-0">
229229
<div className="grid w-full grid-cols-3 sm:grid-cols-4 gap-1 pb-2">
230230
{filterByCategory("Server").map((stackItem, i) => (
231231
<div
@@ -257,7 +257,7 @@ const TechStackModal = () => {
257257
</TabsContent>
258258

259259
{/* CMS */}
260-
<TabsContent value="cms" className="flex-1 overflow-y-auto">
260+
<TabsContent value="cms" className="flex-1 overflow-y-auto mt-0">
261261
<div className="grid w-full grid-cols-3 sm:grid-cols-4 gap-1 pb-2">
262262
{filterByCategory("CMS").map((stackItem, i) => (
263263
<div
@@ -289,7 +289,7 @@ const TechStackModal = () => {
289289
</TabsContent>
290290

291291
{/* Design */}
292-
<TabsContent value="design" className="flex-1 overflow-y-auto">
292+
<TabsContent value="design" className="flex-1 overflow-y-auto mt-0"
293293
<div className="grid w-full grid-cols-3 sm:grid-cols-4 gap-1 pb-2">
294294
{filterByCategory("Design").map((stackItem, i) => (
295295
<div
@@ -322,7 +322,7 @@ const TechStackModal = () => {
322322
</Tabs>
323323
</div>
324324

325-
<DialogFooter className="mt-2 flex w-full items-center justify-between gap-2 flex-shrink-0">
325+
<DialogFooter className="mt-4 flex w-full items-center justify-between gap-2 flex-shrink-0">
326326
<div className="flex flex-1 items-center gap-2">
327327
<ToggleSwitch enabled={!nonTech} onClick={() => setNonTech()} />
328328
<span>I&apos;m applying for a non-tech role. </span>

0 commit comments

Comments
 (0)