Skip to content
shadcn.io

shadcn.io is not affiliated with official shadcn/ui

Minimal Task List Block for Vue

A quiet task list with no row borders or counters: ticked tasks fold into a closed Done section, rows can be renamed in place, and one field at the foot adds a task.

Framework
UI library

Preview

Preview width

Installation

Part of Pro
Pro unlocks the code and one-line install of every Pro button and text effect, plus the MCP for your AI editor.
Have Pro already? Sign in to open it.Opens here as soon as you're Pro.

Overview

Keep a list out of the way, with this minimal to-do list block for Vue with Ark UI. The frame is drawn with Guides corner marks and nothing else: no row rules, no badges, no header count, just whitespace between the tasks. Each open task is a Checkbox and a title, with Edit and Delete buttons that show on hover where the device has one, on keyboard focus, and always on touch screens. Edit swaps the title for an Input with Save and Cancel (Enter saves, Escape cancels). Tick a task and it folds away into a closed "Done (2)" section underneath, with a short height transition that is instant under reduced motion; open it, and unticking a task brings it back. A field at the foot adds a task with a round Shine Button, and an Empty state replaces the list when nothing is open. For notes apps, side panels and any place the list should stay calm.

FAQ

Where does a ticked task go?

Into the Done section, closed by default, which counts its tasks in its label. Open it with its button, then untick a task to move it back to the open list. The open list keeps a held minimum height, so ticking never pulls the field up the page.

Why aren't Edit and Delete always visible?

They fade in on hover, and they are always reachable by keyboard because the row shows them whenever focus is inside it. On touch screens, which can't hover, they stay visible. The buttons have names that include the task title.

How does editing work?

Edit replaces the title with a field holding it. Enter or Save keeps the new title, Escape or Cancel keeps the old one, and focus returns to that row's Edit button. An empty title is refused with a status message.

What stays local, and how do I save for real?

All of it: adding, editing, ticking and deleting change the page's state only, and a reload brings the starting list back. Write each change to your own store from add, toggle, save and remove.

What moves, and what about reduced motion?

The Done section opens with a height transition and a task that arrives in a list grows in. With reduced motion on, both are instant. Nothing else animates.