@@ -3,7 +3,7 @@ import Link from "next/link";
33import { createClient as createServerClient } from "../../lib/supabase/server" ;
44import { Cinzel } from "next/font/google" ;
55import checkUserCompletedQuizzes from "@/lib/checkUserCompletedQuizzes" ;
6- import { ArrowLeft , ArrowDown , ArrowRight } from "lucide-react" ;
6+ import { ArrowBigLeft , ArrowBigDown , ArrowBigRight } from "lucide-react" ;
77
88const cinzel = Cinzel ( {
99 subsets : [ "latin" ] ,
@@ -51,8 +51,9 @@ export default async function DashboardPage() {
5151 const greenButtonClass =
5252 "btn border-2 border-emerald-400 text-emerald-400 bg-emerald-900/60 backdrop-blur-sm hover:bg-emerald-900/50 hover:border-emerald-200 hover:text-emerald-200 shadow-lg shadow-emerald-400/70 transition duration-300 ease-in-out" ;
5353
54- // helper
54+ // helpers
5555 const getButtonClass = ( complete : boolean ) => ( complete ? greenButtonClass : greyButtonClass ) ;
56+ const getArrowColor = ( complete : boolean ) => ( complete ? "text-emerald-400" : "text-gray-400" ) ;
5657
5758 return (
5859 < main
@@ -88,58 +89,63 @@ export default async function DashboardPage() {
8889 { /* Tutorials */ }
8990 < div className = "absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 bg-black/70 backdrop-blur-md rounded-2xl p-8 border border-white/10" >
9091 < div className = "grid grid-cols-[1fr_auto_1fr] gap-4 items-center w-[500px]" >
92+ { /* Row 1: Hello World → Variables */ }
9193 < Link href = "tutorial-hello-world" className = { getButtonClass ( isHelloWorldComplete ) } >
9294 Hello World
9395 </ Link >
94- < ArrowRight className = "text-gray-400" size = { 24 } />
96+ < ArrowBigRight className = { getArrowColor ( isVariablesComplete ) } size = { 28 } />
9597 < Link href = "tutorial-variables" className = { getButtonClass ( isVariablesComplete ) } >
9698 Variables
9799 </ Link >
98100
99101 < div className = "col-span-3 flex justify-end pr-12" >
100- < ArrowDown className = "text-gray-400" size = { 24 } />
102+ < ArrowBigDown className = { getArrowColor ( isUserInputComplete ) } size = { 28 } />
101103 </ div >
102104
105+ { /* Row 2: Conditionals ← User Input */ }
103106 < Link href = "tutorial-conditionals" className = { getButtonClass ( isConditionalsComplete ) } >
104107 Conditionals
105108 </ Link >
106- < ArrowLeft className = "text-gray-400" size = { 24 } />
109+ < ArrowBigLeft className = { getArrowColor ( isConditionalsComplete ) } size = { 28 } />
107110 < Link href = "tutorial-user-input" className = { getButtonClass ( isUserInputComplete ) } >
108111 User Input
109112 </ Link >
110113
111114 < div className = "col-span-3 flex justify-start pl-12" >
112- < ArrowDown className = "text-gray-400" size = { 24 } />
115+ < ArrowBigDown className = { getArrowColor ( isLoopsComplete ) } size = { 28 } />
113116 </ div >
114117
118+ { /* Row 3: Loops → Math */ }
115119 < Link href = "tutorial-loops" className = { getButtonClass ( isLoopsComplete ) } >
116120 Loops
117121 </ Link >
118- < ArrowRight className = "text-gray-400" size = { 24 } />
122+ < ArrowBigRight className = { getArrowColor ( isMathComplete ) } size = { 28 } />
119123 < Link href = "tutorial-math" className = { getButtonClass ( isMathComplete ) } >
120124 Math
121125 </ Link >
122126
123127 < div className = "col-span-3 flex justify-end pr-12" >
124- < ArrowDown className = "text-gray-400" size = { 24 } />
128+ < ArrowBigDown className = { getArrowColor ( isFunctionsComplete ) } size = { 28 } />
125129 </ div >
126130
131+ { /* Row 4: Lists & Arrays ← Functions */ }
127132 < Link href = "tutorial-lists-arrays" className = { getButtonClass ( isListsArraysComplete ) } >
128133 Lists & Arrays
129134 </ Link >
130- < ArrowLeft className = "text-gray-400" size = { 24 } />
135+ < ArrowBigLeft className = { getArrowColor ( isListsArraysComplete ) } size = { 28 } />
131136 < Link href = "tutorial-functions" className = { getButtonClass ( isFunctionsComplete ) } >
132137 Functions
133138 </ Link >
134139
135140 < div className = "col-span-3 flex justify-start pl-12" >
136- < ArrowDown className = "text-gray-400" size = { 24 } />
141+ < ArrowBigDown className = { getArrowColor ( isDictionaryComplete ) } size = { 28 } />
137142 </ div >
138143
144+ { /* Row 5: Dictionary → Recursion */ }
139145 < Link href = "tutorial-dictionary" className = { getButtonClass ( isDictionaryComplete ) } >
140146 Dictionary
141147 </ Link >
142- < ArrowRight className = "text-gray-400" size = { 24 } />
148+ < ArrowBigRight className = { getArrowColor ( isRecursionComplete ) } size = { 28 } />
143149 < Link href = "tutorial-recursion" className = { getButtonClass ( isRecursionComplete ) } >
144150 Recursion
145151 </ Link >
0 commit comments