Color Project Archive

A tactile, typography-driven project index with dynamic RGB background blending, mechanical ruler tape, draggable picture preview, and responsive Web Audio ticks.

Axel Curve
White Stair
Fence Line
Brutalist Ascent
Quiet Courtyard
Monochrome Hour
Blue Plaster
Figure & Wall
Blank Canvas
Leather Lounge
Glass Grid
Repeat Pattern
Axel Curve
Monochrome HourBlue PlasterFigure & WallBlank Canvas
View project↗

Installation

$ npx shadcn@latest add https://akshitr.com/r/color-project-archive.json

Props

ColorProjectArchiveProps

PropTypeDefaultDescription
projectsColorProjectArchiveProject[]Default sample listArray of project records to display.
infiniteScrollbooleantrueAllows infinite circular continuous loop scrolling.
showPreviewbooleantrueEnables the floating, draggable picture preview card.
previewSize"sm" | "md" | "lg""md"Dimension size preset for the floating preview card.
showRulerbooleantrueDisplays the millimeter-style gauge ruler tape on the left.
activeAnchornumber0.68Vertical position ratio (0.0 to 1.0) where the active row aligns.
rowLeadingnumber1.9Spacing height multiplier between adjacent rows.
enableSoundbooleantruePlays low-latency tick sound when passing each row.
tickSrcstring"/sounds/tick.wav"Audio file URL for tick sound (with synthesized fallback).
onActiveChange(index: number, project: ColorProjectArchiveProject) => voidundefinedCallback fired when a new project reaches focus.
onOpen(project: ColorProjectArchiveProject, index: number) => voidundefinedCallback fired when the active project card is clicked.
linkLabelstring"View project"Label text shown on the preview card's link badge.
titleClassNamestringundefinedCustom CSS class to control main label font size, typography, etc.
classNamestringundefinedAdditional CSS class names.

ColorProjectArchiveProject

PropertyTypeDescription
idstring | numberUnique identifier.
namestringProject name displayed in large typography.
badgestringOptional pill tag (e.g., "Architecture", "Editorial").
datestringOptional date bracket text (e.g., "[28 jul]").
bgColorstringBackground color hex code interpolated dynamically.
imagestringCover image URL rendered on the preview card.
hrefstringOptional destination URL opened on click.
target"_blank" | "_self"Window target for project link (_blank by default).

Use Cases

  • Design Studio & Agency Indexes: Present a signature client portfolio index with bold typography, continuous wheel scrolling, and dynamic ambient color shifts.
  • Photography & Editorial Lookbooks: Let visitors scrub through curated issues or shoots with tactile sound feedback, responsive ruler calibration, and instant visual previews.
  • Creative Portfolio Work Archives: Transform standard flat project lists into an interactive, mechanical exploration experience that highlights dates, categories, and full case study links.
  • Component & Experiment Showcases: Showcase UI libraries, generative design labs, or product releases with a tactile index view that invites playful scrubbing and direct link navigation.

References