Skip to content
shadcn.io

shadcn.io is not affiliated with official shadcn/ui

Sticky Note Wall Features Block for React

A wall of note cards on a field of dots with a kind filter, an add field that really adds a note, and an upvote toggle on each card.

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

A note-wall feature section for React with Base UI. A centred header says "A wall your whole team writes on" and holds the controls: a toggle group (All, Ideas, To do) and an "Add a note" field with a button, and a chip at the top of the wall says how many of its eight places are used. Six notes sit on a field of dots that fades toward the foot, each turned a degree or two: a kind badge, a title, a line, the author's initials and an upvote toggle with its count. Choosing a kind tints the notes of the other kind; adding a note puts a real one first on the wall, up to eight. On a phone the notes stack in one column and stand straight. It's built from Toggle Group, Toggle, Input Group, Avatar, Badge and Dot Pattern, with your theme's tokens for every colour. For team notes, feedback boards and idea walls.

FAQ

Does adding a note really work?

Yes. Type a title and press Enter or Add and a note goes first on the wall, under your name, as an Idea, or as a To do when the To do filter is chosen. Empty titles are ignored. At eight notes the wall is full: the status line says so and the button ignores presses. The notes live in the block's state, so connect add to your own store.

How does the filter work?

It is a toggle group in multiple-selection mode, so each button is a real toggle button that reports whether it is pressed. A small handler keeps exactly one pressed. The notes of the other kind take a solid tint but stay in place, so the wall never reflows, and every note keeps its kind badge, so the tint is never the only signal.

How is the vote count worked out?

Each note stores the votes from everyone else, and the toggle adds yours: pressed shows one more, released shows the stored number. The toggle's name is "Upvote" and the note's title, so a screen reader hears which note you are voting on, and its pressed state.

Why are the notes turned?

Each note has a turn of up to a degree and a half, picked by its place on the wall. Below sm the turns are off. The turn is a CSS property, not an animation, so reduced motion only removes the short transition.

Do the dots move?

No. The dot field is the Dot Pattern component with its wave and pointer light turned off, masked to fade toward the foot of the wall. It sits behind the notes, which are opaque, so no text is read over the dots.

  • Pro

    Badge Counter Wall Features

    Metrics and charts

    A wall of eight channel counters for a unified inbox, with a two-button toggle that switches between every channel and only those with unread messages.

  • Pro

    A wall of eight milestone badges for a language-learning app: unlocked ones solid, locked ones muted with a lock and a progress bar, a header count, and a tooltip with each unlock rule.

  • Pro

    A features section with a working forum thread: a post with an upvote toggle whose count follows your vote, and replies nested under an indent rail, each branch collapsing with its own button.

  • Pro

    A masonry wall of six cards of different heights for a team workspace: a checklist whose boxes really tick, a quick-add bar, a stat, a three-lane board, a set of tags and a thread with a mention.

  • Pro

    Glossary Term Grid Features

    Documents and objects

    A glossary: an A to Z rail of anchor links where only letters with a term are active, and eight terms in two columns of shared hairlines, each with its part of speech, a definition and a See also link.

  • Pro

    Six ring-inset preference cells for a team-settings app, each holding one working control: a switch, a slider, a toggle group, a select, a checkbox and a segmented control.