@nebutra/landing-builder 0.1.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/.nebutra/debug/content-store.jsonl +5 -0
- package/.nebutra/debug/event-log.jsonl +1 -0
- package/.nebutra/debug/landing-builder.jsonl +1 -0
- package/.turbo/turbo-build.log +22 -0
- package/.turbo/turbo-test.log +16 -0
- package/.turbo/turbo-typecheck.log +4 -0
- package/CHANGELOG.md +9 -0
- package/LICENSE +676 -0
- package/README.md +14 -0
- package/dist/chunk-E4I5POU4.js +209 -0
- package/dist/chunk-E4I5POU4.js.map +1 -0
- package/dist/cli.d.ts +2 -0
- package/dist/cli.js +62 -0
- package/dist/cli.js.map +1 -0
- package/dist/index.d.ts +75 -0
- package/dist/index.js +13 -0
- package/dist/index.js.map +1 -0
- package/examples/doctor.ts +11 -0
- package/examples/quickstart.ts +30 -0
- package/examples/theme.ts +20 -0
- package/package.json +63 -0
- package/plays/one_pager/SKILL.md +41 -0
- package/src/cli.ts +55 -0
- package/src/index.test.ts +112 -0
- package/src/index.ts +293 -0
- package/tsconfig.json +9 -0
- package/tsup.config.ts +11 -0
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
{"at":"2026-05-18T16:46:11.319Z","type":"reindex","tenantId":"tenant_a","files":0}
|
|
2
|
+
{"at":"2026-05-18T16:46:11.356Z","type":"write","tenantId":"tenant_a","path":"company/landing/index.html"}
|
|
3
|
+
{"at":"2026-05-18T16:46:11.370Z","type":"write","tenantId":"tenant_a","path":"company/landing/theme.css"}
|
|
4
|
+
{"at":"2026-05-18T16:46:11.378Z","type":"write","tenantId":"tenant_a","path":"company/landing/deploy.json"}
|
|
5
|
+
{"at":"2026-05-18T16:46:11.438Z","type":"reindex","tenantId":"","files":0}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"traceId":"landing_builder_loop_mpbfrg6q","kind":"content_write","affected":["company/landing/index.html","company/landing/theme.css","company/landing/deploy.json"],"parent":null,"snapshot":{"company/landing/index.html":"<!doctype html>\n<html lang=\"en\">\n<head>\n <meta charset=\"utf-8\" />\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" />\n <title>Loop</title>\n <link rel=\"stylesheet\" href=\"./theme.css\" />\n</head>\n<body data-brand-id=\"loop\">\n <main class=\"page\">\n <section class=\"hero\">\n <p class=\"eyebrow\">electric / terminal-native</p>\n <h1>Loop</h1>\n <p class=\"lead\">AI debugging for indie devs</p>\n <a class=\"cta\" href=\"#waitlist\">Join the waitlist</a>\n </section>\n <section class=\"proof\">\n <h2>Why it matters</h2>\n <p>technical, direct, warm execution, grounded in one shared brand context.</p>\n </section>\n <section id=\"waitlist\" class=\"waitlist\">\n <h2>Join the waitlist</h2>\n <form>\n <input aria-label=\"Email\" placeholder=\"you@example.com\" />\n <button type=\"button\">Join</button>\n </form>\n </section>\n </main>\n</body>\n</html>\n<!-- #00D4FF #F3C14B -->\n","company/landing/theme.css":":root {\n --brand-primary: #00D4FF;\n --brand-background: #111318;\n --brand-accent: #F3C14B;\n --brand-heading: Geist Mono;\n --brand-body: Geist Sans;\n}\n\n* { box-sizing: border-box; }\nbody { margin: 0; background: var(--brand-background); color: color-mix(in oklab, var(--brand-primary) 80%, black); font-family: var(--brand-body), system-ui, sans-serif; }\n.page { min-height: 100vh; }\n.hero { min-height: 82vh; display: grid; align-content: center; gap: 24px; padding: clamp(32px, 8vw, 96px); }\n.eyebrow { color: var(--brand-accent); font-family: var(--brand-heading), monospace; text-transform: uppercase; letter-spacing: 0; }\nh1 { max-width: 11ch; margin: 0; font-family: var(--brand-heading), system-ui; font-size: clamp(56px, 12vw, 132px); line-height: .92; letter-spacing: 0; }\n.lead { max-width: 760px; font-size: clamp(20px, 3vw, 34px); line-height: 1.2; }\n.cta, button { width: fit-content; border: 0; border-radius: 8px; background: var(--brand-primary); color: var(--brand-background); padding: 14px 20px; font: inherit; text-decoration: none; }\n.proof, .waitlist { padding: 48px clamp(32px, 8vw, 96px); border-top: 1px solid color-mix(in oklab, var(--brand-primary) 20%, transparent); }\ninput { min-width: min(360px, 100%); border: 1px solid color-mix(in oklab, var(--brand-primary) 35%, transparent); border-radius: 8px; padding: 14px 16px; font: inherit; }\nform { display: flex; flex-wrap: wrap; gap: 12px; }\n","company/landing/deploy.json":"{\n \"mode\": \"one_pager\",\n \"brandId\": \"loop\",\n \"entrypoint\": \"company/landing/index.html\",\n \"targets\": [\n \"managed-hosting\",\n \"edge-pages\",\n \"static-hosting\",\n \"git-pages\"\n ],\n \"requiresExplicitDeployConsent\": true\n}\n"},"id":"9be5ddcf65b5c7b65abbf3a7f8f60aa47b88f423dfd2d862a2a30ada41e00073","tenantId":"tenant_a","at":"2026-05-18T16:46:11.391Z","summary":"content_write touched 3 path(s)","objectHashes":["282b113584ef5dca1d7d5a8ab0acda009a083ae1d338148e3b5f72d7e2326f0d","efd0c917e24ab7adf2d36be8e9800535dcc7e1c3a8c433826a1a13bb996fe967","2515ff8fb770aeb2584f10e096f9e430af9d9e69022d76f2c96c7feccbfe19eb"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"at":"2026-05-18T16:46:11.397Z","type":"run","tenantId":"tenant_a","brandId":"loop","eventId":"9be5ddcf65b5c7b65abbf3a7f8f60aa47b88f423dfd2d862a2a30ada41e00073"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
|
|
2
|
+
> @nebutra/landing-builder@0.1.1 build /home/runner/work/Nebutra-Sailor/Nebutra-Sailor/packages/ai/landing-builder
|
|
3
|
+
> tsup
|
|
4
|
+
|
|
5
|
+
[34mCLI[39m Building entry: src/cli.ts, src/index.ts
|
|
6
|
+
[34mCLI[39m Using tsconfig: tsconfig.json
|
|
7
|
+
[34mCLI[39m tsup v8.5.1
|
|
8
|
+
[34mCLI[39m Using tsup config: /home/runner/work/Nebutra-Sailor/Nebutra-Sailor/packages/ai/landing-builder/tsup.config.ts
|
|
9
|
+
[34mCLI[39m Target: es2022
|
|
10
|
+
[34mCLI[39m Cleaning output folder
|
|
11
|
+
[34mESM[39m Build start
|
|
12
|
+
[32mESM[39m [1mdist/cli.js [22m[32m1.78 KB[39m
|
|
13
|
+
[32mESM[39m [1mdist/index.js [22m[32m262.00 B[39m
|
|
14
|
+
[32mESM[39m [1mdist/chunk-E4I5POU4.js [22m[32m8.25 KB[39m
|
|
15
|
+
[32mESM[39m [1mdist/cli.js.map [22m[32m3.24 KB[39m
|
|
16
|
+
[32mESM[39m [1mdist/index.js.map [22m[32m71.00 B[39m
|
|
17
|
+
[32mESM[39m [1mdist/chunk-E4I5POU4.js.map [22m[32m15.38 KB[39m
|
|
18
|
+
[32mESM[39m ⚡️ Build success in 36ms
|
|
19
|
+
[34mDTS[39m Build start
|
|
20
|
+
[32mDTS[39m ⚡️ Build success in 7646ms
|
|
21
|
+
[32mDTS[39m [1mdist/cli.d.ts [22m[32m13.00 B[39m
|
|
22
|
+
[32mDTS[39m [1mdist/index.d.ts [22m[32m2.64 KB[39m
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
|
|
2
|
+
> @nebutra/landing-builder@0.1.1 test /home/runner/work/Nebutra-Sailor/Nebutra-Sailor/packages/ai/landing-builder
|
|
3
|
+
> vitest run
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
[1m[30m[46m RUN [49m[39m[22m [36mv4.1.4 [39m[90m/home/runner/work/Nebutra-Sailor/Nebutra-Sailor/packages/ai/landing-builder[39m
|
|
7
|
+
|
|
8
|
+
(node:11922) ExperimentalWarning: SQLite is an experimental feature and might change at any time
|
|
9
|
+
(Use `node --trace-warnings ...` to show where the warning was created)
|
|
10
|
+
[32m✓[39m src/index.test.ts [2m([22m[2m4 tests[22m[2m)[22m[32m 287[2mms[22m[39m
|
|
11
|
+
|
|
12
|
+
[2m Test Files [22m [1m[32m1 passed[39m[22m[90m (1)[39m
|
|
13
|
+
[2m Tests [22m [1m[32m4 passed[39m[22m[90m (4)[39m
|
|
14
|
+
[2m Start at [22m 16:46:09
|
|
15
|
+
[2m Duration [22m 2.43s[2m (transform 978ms, setup 0ms, import 1.26s, tests 287ms, environment 0ms)[22m
|
|
16
|
+
|
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# @nebutra/landing-builder
|
|
2
|
+
|
|
3
|
+
## 0.1.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`6ee7635`](https://github.com/Nebutra/Nebutra-Sailor/commit/6ee7635a8aa59bf9696a23e12f3d6f0d9b62f861) Thanks [@TsekaLuk](https://github.com/TsekaLuk)! - Add Layer 6 play-product packages for landing pages, outreach campaigns, and
|
|
8
|
+
support deflection with SKILL.md declarations, deterministic local APIs, CLIs,
|
|
9
|
+
examples, docs, tests, and governance boundaries.
|