Skip to content

haquanq-frontendmentor/todo-app

Repository files navigation

Frontend Mentor - Todo App Solution

This is a solution to the Todo app challenge on Frontend Mentor. Frontend Mentor challenges help you improve your coding skills by building realistic projects.

Solution post Live demo

Table of Contents

🌅 Project Overview

Challenge Requirements

  • View the optimal layout for the app depending on their device's screen size
  • See hover states for all interactive elements on the page
  • Add new todos to the list
  • Mark todos as complete
  • Delete todos from the list
  • Filter by all/active/complete todos
  • Clear all completed todos
  • Toggle light and dark mode
  • Bonus: Drag and drop to reorder items on the list

Status

Features

  • Todo component with drag-n-drop/sorting
  • Dark/light mode

Accessibility

  • Responsive accross different screen sizes
  • Interactive elements have clear focus indicator

🌠 Tech Stack and Approach

Built With

  • HTML5 – Semantic structure
  • Vue – Fine-grained reactivity state management
  • TailwindCSS – Utility-first CSS for fast development
  • TypeScript - Interactivity and application logic
  • Vite - Fast development server, production build and easy configuration

Approach

🍃 Local Development

Prerequisites

Install the following:

  • Git (latest version)
  • Node.js (latest LTS recommended)
  • pnpm (latest version)

Setup

git clone https://github.com/haquanq-frontendmentor/todo-app.git
cd todo-app
pnpm install

Start Development Server

pnpm dev

🍁 Deployment

Deployed to Github Pages via Github Action.