@bitbaum/sitekit 0.3.0 → 0.3.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 CHANGED
@@ -127,3 +127,9 @@ pnpm run verify # lint + typecheck + build + test — same command CI runs
127
127
 
128
128
  Tests import the package by **name** (`@bitbaum/sitekit`, `@bitbaum/sitekit/react`), so a broken
129
129
  `exports` map fails in CI, not at the first consumer.
130
+
131
+ ---
132
+
133
+ Part of **[bitbaum](https://bitbaum.orangecat.ch)** — AI-native products on open
134
+ infrastructure, built in Zürich. Every package here lists the apps that use it:
135
+ **[which apps use sitekit](https://bitbaum.orangecat.ch/packages/#sitekit)**.
@@ -14,7 +14,7 @@ import { href } from '../model.js';
14
14
  import { DefaultLink } from './link.js';
15
15
  import { SiteNav } from './SiteNav.js';
16
16
  export function SiteMasthead({ chrome, navItems, currentPath, Link = DefaultLink }) {
17
- return (_jsx("header", { className: "sticky top-0 z-30 border-b border-subtle bg-surface-page/85 backdrop-blur", children: _jsx("div", { className: "mx-auto max-w-shell px-4 sm:px-6 lg:px-8", children: _jsxs("div", { className: "flex items-center justify-between gap-6 py-2", children: [_jsx(Link, { href: href(), className: "inline-flex min-h-11 shrink-0 items-center rounded focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-accent", children: _jsx("span", { className: "font-heading text-lg font-semibold tracking-display text-fg-primary", children: chrome.name }) }), _jsx(SiteNav, { items: navItems, currentPath: currentPath, Link: Link })] }) }) }));
17
+ return (_jsx("header", { className: "sticky top-0 z-30 border-b border-subtle bg-surface-page/85 backdrop-blur", children: _jsx("div", { className: "mx-auto max-w-shell px-4 sm:px-6 lg:px-8", children: _jsxs("div", { className: "flex flex-wrap items-center justify-between gap-x-6 py-2", children: [_jsx(Link, { href: href(), className: "inline-flex min-h-11 shrink-0 items-center rounded focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-accent", children: _jsx("span", { className: "font-heading text-lg font-semibold tracking-display text-fg-primary", children: chrome.name }) }), _jsx(SiteNav, { items: navItems, currentPath: currentPath, Link: Link })] }) }) }));
18
18
  }
19
19
  export function SiteFooter({ chrome }) {
20
20
  return (_jsx("footer", { className: "mt-24 border-t border-subtle", children: _jsxs("div", { className: "mx-auto max-w-shell px-4 py-12 sm:px-6 lg:px-8", children: [_jsx("p", { className: "max-w-prose text-sm leading-relaxed text-fg-secondary", children: chrome.footerNote }), _jsxs("div", { className: "mt-8 flex flex-col gap-2 border-t border-subtle pt-6 font-mono text-xs uppercase tracking-caps text-fg-muted sm:flex-row sm:items-center sm:justify-between", children: [chrome.host && _jsx("span", { children: chrome.host }), _jsxs("span", { className: "normal-case tracking-normal", children: ["\u00A9 ", chrome.name] })] })] }) }));
@@ -11,7 +11,7 @@ import { href } from '../model.js';
11
11
  import { DefaultLink } from './link.js';
12
12
  import { NavAutoScroll } from './NavAutoScroll.js';
13
13
  export function SiteNav({ items, currentPath, Link = DefaultLink }) {
14
- return (_jsxs("nav", { "data-sitekit-nav": true, "aria-label": "Sections", className: "scrollbar-hide -mx-1 flex flex-nowrap items-center gap-x-1 overflow-x-auto", children: [items.map((item) => {
14
+ return (_jsxs("nav", { "data-sitekit-nav": true, "aria-label": "Sections", className: "scrollbar-hide -mx-1 flex max-w-full flex-nowrap items-center gap-x-1 overflow-x-auto", children: [items.map((item) => {
15
15
  const isCurrent = item.path === currentPath;
16
16
  return (_jsx(Link, { href: href(item.path), "aria-current": isCurrent ? 'page' : undefined, className: [
17
17
  // min-h-11 is the 44px touch floor. `px-2 py-1` on text-xs came out
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bitbaum/sitekit",
3
- "version": "0.3.0",
3
+ "version": "0.3.1",
4
4
  "description": "A website as data: a closed union of section shapes validated at runtime, one set of React renderers, and per-field provenance so a generated site can prove it fabricated nothing.",
5
5
  "license": "MIT",
6
6
  "author": "Mao Nakamoto",
@@ -22,6 +22,7 @@
22
22
  ],
23
23
  "type": "module",
24
24
  "sideEffects": false,
25
+ "packageManager": "pnpm@11.25.0",
25
26
  "engines": {
26
27
  "node": ">=20"
27
28
  },
@@ -42,6 +43,16 @@
42
43
  "default": "./dist/react/index.js"
43
44
  }
44
45
  },
46
+ "scripts": {
47
+ "build": "tsc -p tsconfig.json",
48
+ "lint": "eslint .",
49
+ "typecheck": "tsc -p tsconfig.json --noEmit",
50
+ "test": "node --test test/*.test.js",
51
+ "verify": "pnpm run format:check && pnpm run lint && pnpm run typecheck && pnpm run build && pnpm test",
52
+ "prepare": "pnpm run build",
53
+ "format": "prettier --write .",
54
+ "format:check": "prettier --check ."
55
+ },
45
56
  "dependencies": {
46
57
  "zod": "^4.5.4"
47
58
  },
@@ -59,14 +70,5 @@
59
70
  "react-dom": "^19.0.0",
60
71
  "typescript": "^6.0.3",
61
72
  "typescript-eslint": "^8.69.0"
62
- },
63
- "scripts": {
64
- "build": "tsc -p tsconfig.json",
65
- "lint": "eslint .",
66
- "typecheck": "tsc -p tsconfig.json --noEmit",
67
- "test": "node --test test/*.test.js",
68
- "verify": "pnpm run format:check && pnpm run lint && pnpm run typecheck && pnpm run build && pnpm test",
69
- "format": "prettier --write .",
70
- "format:check": "prettier --check ."
71
73
  }
72
- }
74
+ }