This is the assessment for codingal front-end.
Deployed Link: https://codingall-test-site.netlify.app/ (Ctrl + Click)
Part 1 Requirements;
- Responsive navbar ✅
Navbar component has both normal and mobile views Includes proper CSS to handle the layout changes
- Countdown timer starting at 10 minutes ✅
In Navbar.jsx: const [timeRemaining, setTimeRemaining] = useState(10 * 60); Timer implemented with useEffect and setInterval
- End Class button with modal ✅
Modal appears when End Class is clicked Implemented in EndClassModal component
- End Class functionality ✅
Timer stops when End Class is confirmed: setIsTimerActive(false); Modal closes after confirmation
- Cancel button functionality ✅
Modal closes but timer continues running when Cancel is clicked
- Mobile responsive layout ✅
CSS classes and media queries handle responsiveness
- Hamburger menu in mobile view ✅
Implemented with isMobileMenuOpen state and toggle function
Part 2 Requirements:
- Posts page in navigation bar ✅
Created at /posts/ route Link added to the navbar
- Posts from API ✅
Fetches from jsonplaceholder.typicode.com/posts Handles pagination
- Infinite scrolling ✅
Implemented with Intersection Observer API Loads more content as user scrolls
- Loading indicator ✅
Uses a Loader component during data fetching
- Loading 10 posts at once ✅
API call includes limit=10 parameter
- Error handling ✅
Try/catch blocks for API calls Error state display with retry option