@theappglobal/webflow
v1.1.0
Published
Custom code for theapp.global (Webflow) — Tour Event template scripts, served from jsDelivr
Downloads
655
Readme
@theappglobal/webflow
Custom code for the theapp.global Webflow site — the Tour Event template scripts — written in TypeScript, bundled with esbuild, published to npm and served from jsDelivr.
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@theappglobal/webflow@1/dist/theapp.css">
<script defer src="https://cdn.jsdelivr.net/npm/@theappglobal/webflow@1/dist/theapp.js"></script>- Designers: docs/designer-guide.md — the attribute contract, with examples.
- Developers: docs/development.md — dev loop, local/CDN toggle, tests, releasing.
- Agents: CLAUDE.md — architecture, constraints, decisions log.
Scripts
| Command | What it does |
|---|---|
| pnpm dev | esbuild watch + http://localhost:3005 + live reload; prints/writes the Webflow dev snippet |
| pnpm check | Biome (lint + format) and tsc --noEmit |
| pnpm test | Vitest + happy-dom unit tests |
| pnpm build | Minified IIFE → dist/theapp.js + dist/theapp.css (+ sourcemaps), then the gzip size budget |
| pnpm version <patch\|minor\|major> | Runs check/test/build, bumps, commits and tags vX.Y.Z |
Releasing
pnpm version patch # or minor / major — refuses if check/test/build fail
git push --follow-tags # the tag triggers .github/workflows/publish.ymlThe workflow publishes to npm via OIDC trusted publishing (no token; provenance is off — npm rejects it for private repos), purges the jsDelivr
cache for @latest and the current major, and creates a GitHub release with the dist files attached.
Layout
src/index.ts boot: feature registry, isolation, Webflow queue
src/lib/ dom, time (parser), zone, event-context, log, webflow, memo
src/features/ one module per feature (render-lists, pricing, countdowns, calendar, fill-text, …)
src/styles/ marquee.css + activations.css + register-tabs.css → dist/theapp.css
tests/ vitest (happy-dom); docs.test.ts keeps the guide and the code in lockstep
fixtures/dev.html local page exercising every hook against the dev server
bin/ build.mjs (esbuild), size.mjs (gzip budget), live-reload.js (dev only)
docs/ designer guide, development guide, generated Webflow snippet