@pagesmith/core 0.1.0
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 +481 -0
- package/assets/fonts/OFL.txt +7 -0
- package/assets/fonts/jetbrains-mono-variable.woff2 +0 -0
- package/assets/fonts/open-sans-variable.woff2 +0 -0
- package/assets/fonts.css +17 -0
- package/dist/ai/index.d.mts +41 -0
- package/dist/ai/index.d.mts.map +1 -0
- package/dist/ai/index.mjs +414 -0
- package/dist/ai/index.mjs.map +1 -0
- package/dist/assets/index.d.mts +31 -0
- package/dist/assets/index.d.mts.map +1 -0
- package/dist/assets/index.mjs +2 -0
- package/dist/assets-bX08zEJm.mjs +155 -0
- package/dist/assets-bX08zEJm.mjs.map +1 -0
- package/dist/content-config-fHPaFZ7i.d.mts +1128 -0
- package/dist/content-config-fHPaFZ7i.d.mts.map +1 -0
- package/dist/content-layer-B7fQ3im4.mjs +590 -0
- package/dist/content-layer-B7fQ3im4.mjs.map +1 -0
- package/dist/convert-DnuB6SVV.mjs +52 -0
- package/dist/convert-DnuB6SVV.mjs.map +1 -0
- package/dist/create/index.d.mts +20 -0
- package/dist/create/index.d.mts.map +1 -0
- package/dist/create/index.mjs +215 -0
- package/dist/create/index.mjs.map +1 -0
- package/dist/css/index.d.mts +2 -0
- package/dist/css/index.mjs +2 -0
- package/dist/css-ekIt2Fdb.mjs +19 -0
- package/dist/css-ekIt2Fdb.mjs.map +1 -0
- package/dist/heading-Dhvzlay-.d.mts +27 -0
- package/dist/heading-Dhvzlay-.d.mts.map +1 -0
- package/dist/index-BQ6B1-qG.d.mts +41 -0
- package/dist/index-BQ6B1-qG.d.mts.map +1 -0
- package/dist/index-CeNDTM-y.d.mts +7 -0
- package/dist/index-CeNDTM-y.d.mts.map +1 -0
- package/dist/index-DpRBzO8Q.d.mts +15 -0
- package/dist/index-DpRBzO8Q.d.mts.map +1 -0
- package/dist/index-sFCx17CD.d.mts +59 -0
- package/dist/index-sFCx17CD.d.mts.map +1 -0
- package/dist/index.d.mts +131 -0
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +56 -0
- package/dist/index.mjs.map +1 -0
- package/dist/jsx-runtime/index.d.mts +24 -0
- package/dist/jsx-runtime/index.d.mts.map +1 -0
- package/dist/jsx-runtime/index.mjs +88 -0
- package/dist/jsx-runtime/index.mjs.map +1 -0
- package/dist/loaders/index.d.mts +3 -0
- package/dist/loaders/index.mjs +2 -0
- package/dist/loaders-DyABmDrE.mjs +179 -0
- package/dist/loaders-DyABmDrE.mjs.map +1 -0
- package/dist/markdown/index.d.mts +3 -0
- package/dist/markdown/index.mjs +2 -0
- package/dist/markdown-Cj5X26FL.mjs +95 -0
- package/dist/markdown-Cj5X26FL.mjs.map +1 -0
- package/dist/runtime/index.d.mts +28 -0
- package/dist/runtime/index.d.mts.map +1 -0
- package/dist/runtime/index.mjs +90 -0
- package/dist/runtime/index.mjs.map +1 -0
- package/dist/schemas/index.d.mts +4 -0
- package/dist/schemas/index.mjs +2 -0
- package/dist/schemas-DJS7wOzd.mjs +47 -0
- package/dist/schemas-DJS7wOzd.mjs.map +1 -0
- package/dist/types-DUsjRE7Y.d.mts +28 -0
- package/dist/types-DUsjRE7Y.d.mts.map +1 -0
- package/dist/vite/index.d.mts +9878 -0
- package/dist/vite/index.d.mts.map +1 -0
- package/dist/vite/index.mjs +549 -0
- package/dist/vite/index.mjs.map +1 -0
- package/package.json +136 -0
- package/src/styles/code/inline.css +26 -0
- package/src/styles/content/alerts.css +87 -0
- package/src/styles/content/prose.css +225 -0
- package/src/styles/content/toc.css +87 -0
- package/src/styles/content.css +22 -0
- package/src/styles/foundations/reset.css +49 -0
- package/src/styles/foundations/tokens.css +66 -0
- package/src/styles/layout/grid.css +179 -0
- package/src/styles/layout/sidebar.css +18 -0
- package/src/styles/standalone.css +18 -0
- package/src/styles/viewport.css +20 -0
- package/templates/docs/content/README.md +18 -0
- package/templates/docs/content/guide/README.md +11 -0
- package/templates/docs/content/guide/getting-started/README.md +9 -0
- package/templates/docs/content/reference/README.md +11 -0
- package/templates/docs/pagesmith.config.json5 +15 -0
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
/* ═══════════════════════════════════════════════════════════════
|
|
2
|
+
Responsive layout system
|
|
3
|
+
|
|
4
|
+
Breakpoints (ch-based):
|
|
5
|
+
< 110ch — single column, sidebar hidden, mobile TOC shown
|
|
6
|
+
≥ 110ch — content + right sidebar (30ch)
|
|
7
|
+
≥ 160ch — centered: content (100ch max) + right sidebar (30ch)
|
|
8
|
+
|
|
9
|
+
layout-two-col: content + right sidebar (blog-style)
|
|
10
|
+
layout-doc: left sidebar + content + right sidebar (doc-style)
|
|
11
|
+
═══════════════════════════════════════════════════════════════ */
|
|
12
|
+
|
|
13
|
+
/* ─── Layout variables ─── */
|
|
14
|
+
:root {
|
|
15
|
+
--content-min: 80ch;
|
|
16
|
+
--content-max: 100ch;
|
|
17
|
+
--sidebar-width: 30ch;
|
|
18
|
+
--header-height: 60px;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/* ─── Main content ─── */
|
|
22
|
+
.main-content {
|
|
23
|
+
max-width: var(--content-max);
|
|
24
|
+
padding: 2.5rem 1.5rem;
|
|
25
|
+
width: 100%;
|
|
26
|
+
min-width: 0;
|
|
27
|
+
}
|
|
28
|
+
.main-home {
|
|
29
|
+
margin: 0 auto;
|
|
30
|
+
padding-top: 4rem;
|
|
31
|
+
padding-bottom: 4rem;
|
|
32
|
+
}
|
|
33
|
+
.main-narrow {
|
|
34
|
+
margin: 0 auto;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
/* ═══════════════════════════════════════════════════════════════
|
|
38
|
+
Two-column: [empty 1fr] [content] [sidebar 1fr]
|
|
39
|
+
═══════════════════════════════════════════════════════════════ */
|
|
40
|
+
.layout-two-col {
|
|
41
|
+
display: grid;
|
|
42
|
+
grid-template-columns:
|
|
43
|
+
minmax(0, 1fr) minmax(0, var(--content-max)) minmax(var(--sidebar-width), 1fr);
|
|
44
|
+
min-height: calc(100vh - var(--header-height));
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.layout-two-col > :first-child {
|
|
48
|
+
grid-column: 2;
|
|
49
|
+
}
|
|
50
|
+
.layout-two-col > :nth-child(2) {
|
|
51
|
+
grid-column: 3;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
/* ═══════════════════════════════════════════════════════════════
|
|
55
|
+
Doc-style 3-column: [left sidebar] [content] [right sidebar]
|
|
56
|
+
|
|
57
|
+
< 110ch: single column, both sidebars hidden
|
|
58
|
+
≥ 110ch: content + right sidebar (30ch), left via overlay
|
|
59
|
+
≥ 140ch: left (30ch) + content + right (30ch)
|
|
60
|
+
≥ 160ch: centered: left (30ch) + content (100ch) + right (30ch)
|
|
61
|
+
═══════════════════════════════════════════════════════════════ */
|
|
62
|
+
.layout-doc {
|
|
63
|
+
display: grid;
|
|
64
|
+
grid-template-columns: minmax(0, 1fr);
|
|
65
|
+
min-height: calc(100vh - var(--header-height));
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.layout-doc > .doc-sidebar {
|
|
69
|
+
display: none;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.layout-doc > .doc-aside {
|
|
73
|
+
display: none;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
.layout-doc > .doc-main {
|
|
77
|
+
max-width: var(--content-max);
|
|
78
|
+
width: 100%;
|
|
79
|
+
margin: 0 auto;
|
|
80
|
+
padding: 2rem 1.25rem;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
/* ─── Mobile accordion (hidden when sidebar visible) ─── */
|
|
84
|
+
.toc-mobile {
|
|
85
|
+
display: none;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
.layout-doc .toc-mobile {
|
|
89
|
+
display: block;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
/* ═══════════════════════════════════════════════════════════════
|
|
93
|
+
≥ 110ch — show right sidebar
|
|
94
|
+
═══════════════════════════════════════════════════════════════ */
|
|
95
|
+
@media (min-width: 110ch) {
|
|
96
|
+
/* Two-column: no change needed, already shows sidebar */
|
|
97
|
+
|
|
98
|
+
/* Doc layout: show right aside */
|
|
99
|
+
.layout-doc {
|
|
100
|
+
grid-template-columns: minmax(0, 1fr) var(--sidebar-width);
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
.layout-doc > .doc-aside {
|
|
104
|
+
display: block;
|
|
105
|
+
position: sticky;
|
|
106
|
+
top: var(--header-height);
|
|
107
|
+
height: fit-content;
|
|
108
|
+
max-height: calc(100vh - var(--header-height));
|
|
109
|
+
overflow-y: auto;
|
|
110
|
+
padding: 2rem 1.5rem 2rem 0;
|
|
111
|
+
scrollbar-width: thin;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
.layout-doc > .doc-main {
|
|
115
|
+
padding: 2rem 2.5rem;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
.layout-doc .toc-mobile {
|
|
119
|
+
display: none;
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
/* ═══════════════════════════════════════════════════════════════
|
|
124
|
+
≥ 140ch — show left sidebar in doc layout
|
|
125
|
+
═══════════════════════════════════════════════════════════════ */
|
|
126
|
+
@media (min-width: 140ch) {
|
|
127
|
+
.layout-doc {
|
|
128
|
+
grid-template-columns: var(--sidebar-width) minmax(0, 1fr) var(--sidebar-width);
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
.layout-doc > .doc-sidebar {
|
|
132
|
+
display: block;
|
|
133
|
+
position: sticky;
|
|
134
|
+
top: var(--header-height);
|
|
135
|
+
height: calc(100vh - var(--header-height));
|
|
136
|
+
overflow-y: auto;
|
|
137
|
+
padding: 1.5rem 1rem 2rem 1.5rem;
|
|
138
|
+
border-right: 1px solid var(--color-border-subtle);
|
|
139
|
+
scrollbar-width: thin;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
/* ═══════════════════════════════════════════════════════════════
|
|
144
|
+
≥ 160ch — centered layouts
|
|
145
|
+
═══════════════════════════════════════════════════════════════ */
|
|
146
|
+
@media (min-width: 160ch) {
|
|
147
|
+
.layout-doc {
|
|
148
|
+
grid-template-columns: var(--sidebar-width) minmax(0, var(--content-max)) var(--sidebar-width);
|
|
149
|
+
justify-content: center;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
/* ═══════════════════════════════════════════════════════════════
|
|
154
|
+
< 110ch — single column for all layouts
|
|
155
|
+
═══════════════════════════════════════════════════════════════ */
|
|
156
|
+
@media (max-width: 110ch) {
|
|
157
|
+
.layout-two-col {
|
|
158
|
+
display: block;
|
|
159
|
+
}
|
|
160
|
+
.sidebar-right {
|
|
161
|
+
display: none;
|
|
162
|
+
}
|
|
163
|
+
.toc-mobile {
|
|
164
|
+
display: block;
|
|
165
|
+
}
|
|
166
|
+
.main-content {
|
|
167
|
+
padding: 1.5rem 1rem;
|
|
168
|
+
}
|
|
169
|
+
.main-home {
|
|
170
|
+
padding-top: 2rem;
|
|
171
|
+
padding-bottom: 2rem;
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
@media (max-width: 640px) {
|
|
176
|
+
h1 {
|
|
177
|
+
font-size: var(--font-size-2xl);
|
|
178
|
+
}
|
|
179
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/* ─── Right sidebar (On This Page) ─── */
|
|
2
|
+
/* Sticky within its grid column. The column itself stretches to
|
|
3
|
+
the viewport edge (1fr) so the sidebar scrollbar sits flush
|
|
4
|
+
against the page scrollbar — no floating gap on wide screens. */
|
|
5
|
+
.sidebar {
|
|
6
|
+
padding-top: 2.5rem;
|
|
7
|
+
padding-bottom: 2rem;
|
|
8
|
+
position: sticky;
|
|
9
|
+
top: var(--header-height);
|
|
10
|
+
align-self: start;
|
|
11
|
+
max-height: calc(100vh - var(--header-height));
|
|
12
|
+
overflow-y: auto;
|
|
13
|
+
overscroll-behavior: contain;
|
|
14
|
+
}
|
|
15
|
+
.sidebar-right {
|
|
16
|
+
padding-left: 1rem;
|
|
17
|
+
padding-right: 1.5rem;
|
|
18
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/* Foundations */
|
|
2
|
+
@import "./foundations/reset.css";
|
|
3
|
+
@import "./foundations/tokens.css";
|
|
4
|
+
|
|
5
|
+
/* Content */
|
|
6
|
+
@import "./content/prose.css";
|
|
7
|
+
@import "./content/toc.css";
|
|
8
|
+
@import "./content/alerts.css";
|
|
9
|
+
|
|
10
|
+
/* Inline code */
|
|
11
|
+
@import "./code/inline.css";
|
|
12
|
+
|
|
13
|
+
/* Viewport */
|
|
14
|
+
@import "./viewport.css";
|
|
15
|
+
|
|
16
|
+
/* Layout */
|
|
17
|
+
@import "./layout/grid.css";
|
|
18
|
+
@import "./layout/sidebar.css";
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/* ═══════════════════════════════════════════════════════════════
|
|
2
|
+
Viewport overflow prevention.
|
|
3
|
+
|
|
4
|
+
Targets common overflow culprits in prose content:
|
|
5
|
+
tables, code blocks, images, figures, and embeds.
|
|
6
|
+
Ensures nothing exceeds the viewport width on small screens.
|
|
7
|
+
═══════════════════════════════════════════════════════════════ */
|
|
8
|
+
|
|
9
|
+
.prose pre,
|
|
10
|
+
.prose table,
|
|
11
|
+
.prose img,
|
|
12
|
+
.prose figure,
|
|
13
|
+
.prose iframe {
|
|
14
|
+
max-width: 100%;
|
|
15
|
+
overflow-x: auto;
|
|
16
|
+
}
|
|
17
|
+
.prose pre code {
|
|
18
|
+
display: block;
|
|
19
|
+
overflow-x: auto;
|
|
20
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: My Docs
|
|
3
|
+
description: A documentation site powered by Pagesmith.
|
|
4
|
+
tagline: Convention-based docs with built-in search.
|
|
5
|
+
actions:
|
|
6
|
+
- text: Get Started
|
|
7
|
+
link: /guide/getting-started
|
|
8
|
+
theme: brand
|
|
9
|
+
features:
|
|
10
|
+
- title: Filesystem First
|
|
11
|
+
details: Organize your docs with top-level folders like guide, reference, and packages.
|
|
12
|
+
- title: Built-In Search
|
|
13
|
+
details: Pagefind indexing is included in @pagesmith/docs by default.
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
# Welcome
|
|
17
|
+
|
|
18
|
+
Edit `content/README.md` to shape the home page and add your own hero copy, feature cards, or getting-started guidance.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Guide
|
|
3
|
+
description: Learn the project structure and authoring workflow.
|
|
4
|
+
navLabel: Guide
|
|
5
|
+
sidebarLabel: Overview
|
|
6
|
+
order: 1
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Guide
|
|
10
|
+
|
|
11
|
+
This section becomes part of the top navigation automatically because it lives in a top-level folder under `content/`.
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
name: 'My Docs',
|
|
3
|
+
title: 'My Docs',
|
|
4
|
+
description: 'Documentation built with @pagesmith/docs',
|
|
5
|
+
origin: 'https://example.com',
|
|
6
|
+
contentDir: './content',
|
|
7
|
+
outDir: './dist',
|
|
8
|
+
footerLinks: [
|
|
9
|
+
{ label: 'Guide', path: '/guide' },
|
|
10
|
+
{ label: 'Reference', path: '/reference' },
|
|
11
|
+
],
|
|
12
|
+
search: {
|
|
13
|
+
enabled: true,
|
|
14
|
+
},
|
|
15
|
+
}
|