UI Kit

Design system & components — Spreent Academy

Typography

title-h1

Skills, practice, knowledge

title-h2

Where Our Graduates Work

title-h3

Basic Plan

title-digit

1000+

title-factoid

89%

text-lead

Aggregator that helps you find the right educational course.

text-body

Body copy — the default paragraph text used across the page.

text-ui

Get Started

text-small

Small caption text, e.g. form disclaimers.

text-tag

Design

Colors

$color-blue

Primary / CTA

#1859ff

$color-indigo

Deep blue

#0039cc

$color-dark

Base dark / text

#0d1627

$color-secondary

Accent lime

#d9f243

$color-light

Light background

#eef4f6

$color-stroke

Borders / dividers

#dee9ed

$color-light-blue

Decorative

#d1deff

$color-error

Validation error

#ff4949

$color-white

White

#ffffff

Buttons

btn--primary
btn--secondary

:hover,:active and:focus-visible are interactive — hover, click, or Tab to a button to see them.

Press scales the button and darkens its background; hover fades in a soft shadow via a ::before opacity —GPU, not an animated box-shadow. The three button flavours — magnetic (hero), shimmer (submit), and this base press — are in the Motion catalogue below.

Form Elements

Cards

AboutCard
  • Card tag

    Card title

    Supporting copy — a line or two describing the card.

    visual → <slot />

The three about cards share this reusable<AboutCard> scaffold —tag,title,text via props; each card's bespoke visual (a photo, CSS-drawn decor, a rotating logo) is projected through a<slot>. The full cards are catalogued in Motion below and seen live on the landing — one of them, the CSS-drawn "skills" card, is exhibited next.

AboutCard · "skills" decor — pure CSS
  • What will I gain?

    Hands-On Skills

    Hands-on, profession-specific knowledge. Train on real projects and build your own product

The decorative scene is drawn entirely in code — no images. The circle (border-radius), the frosted-glass panel (backdrop-filter) and the Figma-style selection frame with four corner handles — a single::before layering twelvebackground-image gradients, noborder oroutline — are all pure CSS. Only the two cursors are inline SVG icons (<Icon>). It scales with the card and adds zero network requests.

price__card

Basic Plan

  • Lifetime access to materials
  • With feedback and assignments
  • Portfolio and resume review
  • Start immediately or with a group
  • 24% discount when paying in full
  • Certificate upon completion

Price

1 490 CHF1 960 CHF

or

1 390 €1 830 €

Buy Now
certificate
Profession: Systems Analyst

Certificate

Top performance on the course

Awarded to
Ilya Petrov
Completion date
July 15, 2024
Course author
Innokentiy Bodrov
spreent academyupgrade your career through practice··S

Icons

Interface

burger
check-mark
close
cursor-arrow
cursor-hand
plus

Logos

logo
booking
chulakov
epam
google
ibm
mish
netflix
rustore
vc

Motion

Every animation is physics-based (strong easing / springs), GPU-composited ontransform &opacity wherever it can, and respectsprefers-reduced-motion. Best experienced live on the landing page.

EffectWhereWhat it doesPrinciple & a11y
Logo paint-fillHeader + FooterBrand colour paints across the wordmark, neon glow on hover + taptwo-layer masked reveal on transform (GPU, no repaint); blue (header) / lime (footer); mobile tap → instant colour + glow
Sticky header + blurHeaderHeader sticks, gains a frosted blur once scrolledbackdrop-filter; the colour fade is kept under reduced-motion
Scroll progressHeaderBar fills across the header on scrolltransform scaleX (not width) → runs on the GPU
Burger ↔ XHeaderIcon morphs, timed to land with the drawertransitions (interruptible) + spring pop; reduced-motion → plain crossfade
Mobile drawerHeaderMenu grows open, fades-then-snaps closedgrid 0fr→1fr; ease-out (never ease-in); fade-then-snap avoids flicker
Frosted glass menuHeaderBlurred translucent backdrop behind the open menubackdrop-filter: blur + a solid fallback colour
Nav underlineHeaderUnderline sweeps left→right on hoverscaleX from left, interruptible; GPU, hover-gated
Magnetic buttonHeroHero CTA drifts toward the cursorlerp + rAF (spring-like); GPU translate, hover-only, reduced-motion
ParallaxHero + AboutHero photos & about cards shift on scroll + mouseadditive layers, lerp smoothing; GPU translate, passive, reduced-motion
Logo rotationAboutAbout circle logo spins with scroll directionJS writes --rotation, CSS applies it; GPU, reduced-motion
Count-upCommunityCommunity stats animate 0 → 78% / 89%ease-out cubic, once on view; reduced-motion → jumps to final value
Gradient-spinCommunityConic-gradient border rotates on the community + icon@property + linear (continuous motion); reduced-motion → static
Ambient glowWorkSoft glow sweeps across the work logosopacity of a pseudo-element (not box-shadow) → GPU; reduced-motion
Shimmer CTAFooterOne-time glint on Submit once the user settles on itIO + 2s dwell + cancel on scroll-away / form engage; GPU, reduced-motion
Certificate cascadeFooterThe completion-certificate block reveals in sequence — heading, text, then the cardgrouped scroll-reveal, 120ms stagger; clip-path wipe (heading) + scale (card) + fade; reduced-motion → static
Scroll-revealGlobalSection headings fade & slide up as they enter viewIntersectionObserver, 70ms stagger; opacity/transform, reduced-motion
Button pressGlobalScale on :active + shadow-lift on hoverscale(0.95) ease-apple; shadow-lift via ::before opacity (composite, not box-shadow); bg darkens on press; reduced-motion
Smooth scrollGlobalEased scroll to anchor linksrAF easeInOutQuart, interruptible; reduced-motion → instant jump