React libraries by Jakub Antalik, and the sites that demo them.
| Package | npm | Demo |
|---|---|---|
border-beam — animated border beam |
npm install border-beam |
beam.jakubantalik.com |
liquid-gooey — liquid Morph & Move effects |
npm install liquid-gooey |
gooey.jakubantalik.com |
packages/ published libraries — one folder per npm package
sites/ the demo site for each library
Each package owns its own README and LICENSE, because npm renders the readme from the package directory rather than the repo root.
npm workspaces, so one install at the root covers everything:
npm install
npm run dev -w @sites/beam # beam demo
npm run dev -w @sites/gooey # gooey demoBoth sites alias the library to its source, so editing a library hot-reloads its site with no rebuild.
npm run build:beam # build one library
npm run build:gooey
npm run build:site-beam # library + its site, as CI does
npm run build:site-gooey
npm run typecheck # every workspacePublishing is per package, triggered by a GitHub release (publish.yml),
which runs npm publish -w <package>.
The two sites are hosted separately, because GitHub Pages serves one custom domain per repo:
- beam.jakubantalik.com — GitHub Pages via
.github/workflows/deploy.yml; the domain binding lives insites/beam/public/CNAME. - gooey.jakubantalik.com — Cloudflare Pages, built from this repo with
npm run build:site-gooey, outputsites/gooey/dist.