diff --git a/src/pages/CodingOwl.jsx b/src/pages/CodingOwl.jsx index 753e9b7..02beaba 100644 --- a/src/pages/CodingOwl.jsx +++ b/src/pages/CodingOwl.jsx @@ -10,7 +10,7 @@ export const CodingOwl = () => { const userName = userData?.name || "Developer"; const userStreak = userData?.streak || 0; const [habits, setHabits] = useState(habitCards); - const [timeLeft, setTimeLeft] = useState(1500); // 25:00 in seconds + const [timeLeft, setTimeLeft] = useState(1500); const [timerActive, setTimerActive] = useState(false); const [isResetting, setIsResetting] = useState(false); const timerRef = useRef(null); @@ -40,20 +40,15 @@ export const CodingOwl = () => { }; const resetTimer = () => { - // Add reset animation setIsResetting(true); - // Clear the active interval if it exists if (timerRef.current) { clearInterval(timerRef.current); timerRef.current = null; } - // Set timer to inactive state setTimerActive(false); - // Reset time to 25:00 (1500 seconds) setTimeLeft(1500); - // Remove animation class after animation completes setTimeout(() => { setIsResetting(false); }, 500); @@ -77,7 +72,7 @@ export const CodingOwl = () => { return { ...habit, progress: newProgress, streak: newStreak }; } return habit; - }), + }) ); }; @@ -93,25 +88,25 @@ export const CodingOwl = () => { {/* Mascot & Streak Highlight */}
- {/* Mascot bubble */} - - {/* Mascot Mascot representation */} -
+ {/* Mascot bubble - Enhanced visibility */} +
+ {/* Mascot representation */} +
🦉
-

+

Mascot: Oliver the Owl

-
+
"Whoo-whoo! You've logged code for {userStreak} consecutive days,{" "} {userName}. Oliver is proud! Maintain your streak today to earn a 1.5x points multiplier."
-
+
Mood: Ecstatic! 🔥 @@ -119,26 +114,26 @@ export const CodingOwl = () => { Next Check-in: 8 hours remaining
- +
- {/* Focus Timer Session Card */} - + {/* Focus Timer Session Card - Enhanced visibility */} +
- + Focus Arena -

+

Focus Mode Session

-

+

Lock out distractions and log heads-down coding time.

- {/* Timer visualization with reset animation effect */} + {/* Timer visualization */}
{ > {formatTime(timeLeft)} - + Pomodoro Interval
@@ -154,10 +149,10 @@ export const CodingOwl = () => {
- +
{/* Habits Checklist Grid */}
-

+

Your Habit Dashboard

{habits.map((habit) => ( -
- + {habit.frequency} @@ -204,24 +199,24 @@ export const CodingOwl = () => {
-

+

{habit.title}

-

+

{habit.description}

- {/* Progress Slider */} -
-
+ {/* Progress Section */} +
+
Today's status {habit.progress === 100 ? "Completed" : "In Progress"} @@ -230,10 +225,10 @@ export const CodingOwl = () => {
- +
))}
- {/* 4 Weeks Consistency heatmap representation */} - -
+ {/* Weekly Consistency heatmap - Enhanced visibility */} +
+
-

+

Weekly Consistency Grid

-

+

A historical log of your daily check-in marks.

- + Last 4 Weeks
@@ -272,20 +267,20 @@ export const CodingOwl = () => {
{weeklyHeatmap.map((week, idx) => (
- + Week {week.week} -
+
{week.days.map((day, dayIdx) => (
@@ -295,23 +290,23 @@ export const CodingOwl = () => { ))}
-
+
-
+
Missed
-
+
Logged
-
+
Bonus Multiplier Achieved
- +
); }; -export default CodingOwl; +export default CodingOwl; \ No newline at end of file