October 2024
Lepasni nak TODO apa?
TODO app with Next.js, Tailwind CSS, TypeScript + Pagination, Search, Filter with Dummy Data

Building a Feature-Rich TODO App with Next.js, Tailwind CSS, and TypeScript
Overview
This project demonstrates how to build a functional and stylish TODO app using Next.js, Tailwind CSS, and TypeScript. The app incorporates key features like pagination, search, and filtering, all working seamlessly with dummy data.
Features
- Add and Remove Tasks
- Users can easily create new tasks or delete existing ones.
- Pagination
- Tasks are displayed in paginated views for better organization and usability.
- Search
- A search bar allows users to find specific tasks by keyword.
- Filter
- Users can filter tasks based on status (e.g., Completed, Pending) or priority.
- Responsive Design
- Styled with Tailwind CSS, the app is fully responsive and mobile-friendly.
- Dummy Data Integration
- The app uses mock data to simulate a backend API, making it easy to prototype and test functionality. Tech Stack
- Next.js
- Used for its server-side rendering and routing capabilities, ensuring a fast and efficient app.
- TypeScript
- Ensures strong typing for a more robust and maintainable codebase.
- Tailwind CSS
-
Speeds up styling with utility-first CSS classes, enabling a clean and consistent UI. Implementation Highlights
-
State Management: Implemented with React’s
useStatefor managing tasks and filters. -
Search Functionality: A case-insensitive search feature to improve usability.
-
Pagination Logic: Custom functions to handle data slicing and navigation between pages.
-
Reusable Components: Modular components for tasks, filters, and the pagination control to maintain clean and reusable code. How It Works
- Task Display: Tasks are fetched from a mock data source and displayed in a list.
- Search & Filter: Input fields and dropdowns allow users to refine task visibility.
- Pagination: Navigate through tasks seamlessly with next/previous buttons or page numbers. Benefits of This Approach
-
Performance: Leveraging Next.js’s optimized rendering techniques.
-
Scalability: Well-structured code that can easily integrate with a real backend.
-
User-Friendly Design: Intuitive UI/UX designed with Tailwind CSS ensures a smooth user experience. Future Enhancements
-
Integration with a real API for persistent task management.
-
User authentication to enable personalized task lists.
-
Drag-and-drop reordering of tasks for better task prioritization.
More projects
view all →
My Website v4 — Heritage Edition
My personal portfolio reimagined around a Malaysian heritage theme — a dark malam palette with amber & cream accents, wayang-inspired motifs, hand-drawn sketch filters, and custom keris/hand cursors. Includes a sound toggle, easter eggs, an AI helper, a branded contact flow (Resend), and an MDX blog. Built with Next.js App Router, TypeScript, Tailwind CSS, and Framer Motion; deployed on Cloudflare Workers. Archived here as the previous design ahead of the next redesign.

Anime-based Gaming Pitch Website
This application serves as a professional platform for Okarun Gaming to showcase their team, attract sponsors, and engage with their community while maintaining their unique anime-inspired identity and professional esports presence.

Japanese Animation Landing Page
Pixel perfect the duplicate a Japanese landing page with animation - assessment given from one of the recruiter.