anentrypoint-design 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,77 @@
1
+ # 247420
2
+
3
+ The 247420 / AnEntrypoint design system, packaged as a single-file ESM SDK.
4
+
5
+ Bundles **WebJSX** (vendored), a modified **Ripple UI**, **Tailwind v2** utility classes, the design tokens (`colors_and_type.css`), the app shell (`app-shell.css`), the brand fonts, the `<deck-stage>` web component, and an opinionated component library — into one optimized, scope-prefixed file.
6
+
7
+ ## Install
8
+
9
+ ```bash
10
+ npm install anentrypoint-design
11
+ ```
12
+
13
+ ## Use the SDK
14
+
15
+ ```js
16
+ import { h, mount, installStyles, components as C } from 'anentrypoint-design';
17
+
18
+ installStyles();
19
+ const root = document.getElementById('app');
20
+ mount(root, () => C.AppShell({
21
+ topbar: C.Topbar({ brand: '247420', leaf: 'gm', items: [['works','#/works']] }),
22
+ main: C.HomeView({ /* … */ }),
23
+ status: C.Status({ left: ['main'], right: ['live'] })
24
+ }));
25
+ ```
26
+
27
+ `mount` automatically adds the `.ds-247420` scope class to your root.
28
+
29
+ ## Use the unified app
30
+
31
+ The package also ships a complete WebJSX single-page app at `247420/app` that consolidates the homepage, project page, writing index, and manifesto under one hash-routed shell:
32
+
33
+ ```html
34
+ <div id="root" class="ds-247420"></div>
35
+ <script type="module" src="https://unpkg.com/anentrypoint-design/dist/247420.app.js"></script>
36
+ ```
37
+
38
+ `app.html` in this repo is the local consumer.
39
+
40
+ ## Components
41
+
42
+ Primitives: `Brand`, `Chip`, `Btn`, `Glyph`, `Heading`, `Lede`.
43
+ Chrome: `Topbar`, `Crumb`, `Side`, `Status`, `AppShell`.
44
+ Surfaces: `Panel`, `Row`, `RowLink`, `Section`, `Install`, `Receipt`, `Changelog`.
45
+ Pages: `Hero`, `WorksList`, `WritingList`, `Manifesto`, `HomeView`, `ProjectView`.
46
+
47
+ All factories are pure: they take props, return a WebJSX tree.
48
+
49
+ ## DeckStage
50
+
51
+ ```js
52
+ import { registerDeckStage } from 'anentrypoint-design';
53
+ await registerDeckStage();
54
+ // <deck-stage width="1920" height="1080">…<section>…</section></deck-stage>
55
+ ```
56
+
57
+ ## Why scope-prefixed
58
+
59
+ Every selector in the bundle is namespaced under `.ds-247420` via PostCSS. The bundle ships Tailwind, RippleUI, and the design tokens **without** colliding with whatever optimized bundle the host app already runs. Add the class to a root element to opt in.
60
+
61
+ ## CSS only
62
+
63
+ ```html
64
+ <link rel="stylesheet" href="https://unpkg.com/anentrypoint-design/dist/247420.css">
65
+ <div class="ds-247420">…</div>
66
+ ```
67
+
68
+ ## Publishing
69
+
70
+ Every push to `main` runs `.github/workflows/publish.yml`:
71
+
72
+ 1. Resolves max(local, remote) version, bumps **patch**.
73
+ 2. Builds with `scripts/build.mjs` (esbuild + postcss-prefix-selector).
74
+ 3. Publishes to npm with `NPM_TOKEN`.
75
+ 4. Commits the bump back to `main` and pushes a `vX.Y.Z` tag.
76
+
77
+ Skip publish for any commit by including `[skip publish]` in the message; release commits use that automatically to prevent loops.