@oleksiimazurenko/patterns-core
v0.2.0
Published
Framework-agnostic core for react-patterns — pure CSS building blocks (fit-text, parallax, accordion, slider, …) with zero runtime JS. Each recipe is a subpath export.
Maintainers
Readme
@oleksiimazurenko/patterns-core
Framework-agnostic pure-CSS core for react-patterns — a growing collection of front-end recipes done with as little client JavaScript as possible. Each recipe ships as its own subpath so you import only what you use.
Using React? Prefer
@oleksiimazurenko/react-patterns, which wraps these stylesheets in ready-made components.
Recipes
| Import | What it does |
| ------ | ------------ |
| @oleksiimazurenko/patterns-core/fit-text/style.css | Text that scales to its container — container-query cqi + clamp(), zero JS. |
| @oleksiimazurenko/patterns-core/parallax/style.css | Scroll parallax via animation-timeline: view() — no scroll listener, zero JS. |
| @oleksiimazurenko/patterns-core/reveal/style.css | Fade-and-rise reveal on scroll via view() timeline — no IntersectionObserver, zero JS. |
| @oleksiimazurenko/patterns-core/accordion/style.css | Native <details> accordion with smooth interpolate-size open/close — zero JS. |
| @oleksiimazurenko/patterns-core/scroll-progress/style.css | Page progress bar via scroll() — one fixed element, zero JS. |
| @oleksiimazurenko/patterns-core/sticky-shrink/style.css | Sticky header that shrinks on scroll via scroll() + a progress var — zero JS. |
| @oleksiimazurenko/patterns-core/slider/style.css | Carousel — scroll-snap track + CSS Carousel dots & prev/next buttons — zero JS. |
| @oleksiimazurenko/patterns-core/dialog/style.css | Native <dialog> modal styling + CSS open/close animation — zero JS. |
| @oleksiimazurenko/patterns-core/popover/style.css | Native popover (menu/dropdown) styling + anchor positioning — zero JS. |
fit-text
<link rel="stylesheet" href="@oleksiimazurenko/patterns-core/fit-text/style.css" />
<h2 class="fit-text" style="--fit-text-min: 2rem; --fit-text-max: 72px; --fit-text-slope: 10">
<span class="fit-text__inner">Learn anything, beautifully</span>
</h2>| Property | Default | Description |
| ------------------ | -------- | ------------------------------------------------------------ |
| --fit-text-min | 2rem | Mobile floor — the font never goes below this. |
| --fit-text-max | 4.5rem | Desktop ceiling — the font never goes above this. |
| --fit-text-slope | 10 | Fluid slope — the font grows this % of the container width. |
License
MIT © Oleksii Mazurenko
