Online course
Graduate results as a horizontal lane
Graduate results as a horizontal lane: large cards with a 16:10 project screenshot, scroll-snap, draggable with the mouse and the wheel, arrows at the edges. Counters above the lane count up on appearance. Each card has a cursor sheen and a “before → after” arrow that draws itself when the card is in view.
What you can change
- cases: names, portraits, screenshots, before/after, gain, quote, link
- stats: values, suffixes, labels; eyebrow, title, lede, beforeLabel, afterLabel, linkLabel
- accent and background, tone
A link for your AI agent: preview, code and instructions.
Preview
Use it with AI
- 1. Copy the link.
- 2. Write to your agent in your own words and drop the link into the sentence.
- 3. The agent opens the link and installs the component from the registry.
put this on the home page as the hero:
https://vibeui.ru/c/course-003?lang=en&theme=dark
Not sure where to paste it? Step-by-step guide
Show the full instructions
What the link says, spelled out. Use it when your agent cannot open links — paste this text instead.
Loading…
For developers
The install command lives in the “Component source” block below — a signed link that stays valid for 24 hours.
Technical notes
One file, zero dependencies, “use client” for drag, counters and the sheen. The lane is a <ul> with overflow-x:auto, scroll-snap-type:x mandatory, a hidden scrollbar and negative margins to the shell edge. Drag uses pointer capture for the mouse: movement over 4px switches data-drag (snap off, user-select:none), a click after a drag is cancelled in onClickCapture. Arrows scrollBy one card width. Counters use an IntersectionObserver on the section and a 1.4 s requestAnimationFrame with easeOut. The sheen is an ::after radial-gradient at --mx/--my from pointermove. The arrow is an SVG path with stroke-dasharray, dashoffset→0 on data-seen (IO with root=lane, threshold .6). From 64rem (container query) a card is 56 % wide. Palette --vibeui-course-003-* is neutral: ink and paper via light-dark(), the site colours come through the accent, ink and background props; Unbounded and Inter via <link precedence> from Google Fonts with system fallbacks. tone pins the scheme, accent, ink and background override colours.
Tags
- course
- education
- edtech
- landing
- results
- carousel
- scroll-snap
- counter
- before-after
Component source
The same file your agent installs. Here in case you would rather copy it by hand.
Loading…