@jxsuite/starters 3.3.2 → 3.4.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/package.json +5 -5
- package/sites/blog/package.json +3 -3
- package/sites/blog/project.jxn +86 -0
- package/sites/course/package.json +3 -3
- package/sites/course/project.jxn +94 -0
- package/sites/event/package.json +3 -3
- package/sites/event/project.jxn +114 -0
- package/sites/fitness-studio/package.json +3 -3
- package/sites/fitness-studio/project.jxn +124 -0
- package/sites/home-services/package.json +3 -3
- package/sites/home-services/project.jxn +113 -0
- package/sites/museum/package.json +3 -3
- package/sites/museum/project.jxn +130 -0
- package/sites/nonprofit/package.json +3 -3
- package/sites/nonprofit/project.jxn +99 -0
- package/sites/portfolio/package.json +3 -3
- package/sites/portfolio/project.jxn +85 -0
- package/sites/professional-firm/package.json +3 -3
- package/sites/professional-firm/project.jxn +94 -0
- package/sites/real-estate/package.json +3 -3
- package/sites/real-estate/project.jxn +103 -0
- package/sites/restaurant/package.json +3 -3
- package/sites/restaurant/project.jxn +93 -0
- package/sites/saas/package.json +3 -3
- package/sites/saas/project.jxn +119 -0
- package/sites/shop/package.json +3 -3
- package/sites/shop/project.jxn +100 -0
- package/sites/blog/project.json +0 -140
- package/sites/course/project.json +0 -141
- package/sites/event/project.json +0 -163
- package/sites/fitness-studio/project.json +0 -175
- package/sites/home-services/project.json +0 -160
- package/sites/museum/project.json +0 -179
- package/sites/nonprofit/project.json +0 -147
- package/sites/portfolio/project.json +0 -137
- package/sites/professional-firm/project.json +0 -145
- package/sites/real-estate/project.json +0 -163
- package/sites/restaurant/project.json +0 -145
- package/sites/saas/project.json +0 -166
- package/sites/shop/project.json +0 -156
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jxsuite/starters",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.4.0",
|
|
4
4
|
"description": "Starter site templates for new Jx projects",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -26,12 +26,12 @@
|
|
|
26
26
|
"test:coverage": "bun test --isolate --coverage"
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@jxsuite/protocol": "^6.2.
|
|
29
|
+
"@jxsuite/protocol": "^6.2.5"
|
|
30
30
|
},
|
|
31
31
|
"devDependencies": {
|
|
32
|
-
"@jxsuite/parser": "^4.3.
|
|
33
|
-
"@jxsuite/runtime": "^6.2.
|
|
34
|
-
"@jxsuite/schema": "^5.
|
|
32
|
+
"@jxsuite/parser": "^4.3.3",
|
|
33
|
+
"@jxsuite/runtime": "^6.2.2",
|
|
34
|
+
"@jxsuite/schema": "^5.5.0",
|
|
35
35
|
"ajv": "^8.20.0",
|
|
36
36
|
"ajv-formats": "^3.0.1"
|
|
37
37
|
}
|
package/sites/blog/package.json
CHANGED
|
@@ -9,10 +9,10 @@
|
|
|
9
9
|
"dev": "jx dev"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@jxsuite/parser": "^4.3.
|
|
12
|
+
"@jxsuite/parser": "^4.3.3"
|
|
13
13
|
},
|
|
14
14
|
"devDependencies": {
|
|
15
|
-
"@jxsuite/compiler": "^8.
|
|
16
|
-
"@jxsuite/runtime": "^6.2.
|
|
15
|
+
"@jxsuite/compiler": "^8.5.0",
|
|
16
|
+
"@jxsuite/runtime": "^6.2.2"
|
|
17
17
|
}
|
|
18
18
|
}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/- kdl-version 2
|
|
2
|
+
$schema "./project.schema.json"
|
|
3
|
+
project "The Long Field"
|
|
4
|
+
|
|
5
|
+
url "https://example.com"
|
|
6
|
+
|
|
7
|
+
defaults layout="./layouts/base.json" lang=en
|
|
8
|
+
|
|
9
|
+
$head {
|
|
10
|
+
meta name=viewport content="width=device-width, initial-scale=1"
|
|
11
|
+
meta name=description content="The Long Field — essays and field notes on design, technology, and the craft of making things well."
|
|
12
|
+
link rel=icon href="/favicon.svg"
|
|
13
|
+
link rel=preconnect href="https://fonts.googleapis.com"
|
|
14
|
+
link rel=preconnect href="https://fonts.gstatic.com" crossorigin=""
|
|
15
|
+
link rel=stylesheet href="https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,600;0,9..144,700;0,9..144,900;1,9..144,400;1,9..144,600&family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,500;1,6..72,400;1,6..72,500&display=swap"
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
$media {
|
|
19
|
+
-- "1200px"
|
|
20
|
+
--lg "(max-width: 1024px)"
|
|
21
|
+
--md "(max-width: 768px)"
|
|
22
|
+
--sm "(max-width: 640px)"
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
style {
|
|
26
|
+
--color-primary "#9a2f1a"
|
|
27
|
+
--color-primary-hover "#7a2412"
|
|
28
|
+
--color-ink "#1c1a17"
|
|
29
|
+
--color-bg-dark "#1c1a17"
|
|
30
|
+
--color-bg-cream "#efe9db"
|
|
31
|
+
--color-bg-white "#f6f1e7"
|
|
32
|
+
--color-paper "#f6f1e7"
|
|
33
|
+
--color-text-primary "#1c1a17"
|
|
34
|
+
--color-text-white "#f6f1e7"
|
|
35
|
+
--color-text-muted "#6f685c"
|
|
36
|
+
--color-border "#d8cfbd"
|
|
37
|
+
--color-rule "#1c1a17"
|
|
38
|
+
--color-accent "#9a2f1a"
|
|
39
|
+
--font-heading "'Fraunces', Georgia, 'Times New Roman', serif"
|
|
40
|
+
--font-body "'Newsreader', Georgia, 'Times New Roman', serif"
|
|
41
|
+
--max-width "1160px"
|
|
42
|
+
--max-width-narrow "680px"
|
|
43
|
+
--radius "0"
|
|
44
|
+
margin "0"
|
|
45
|
+
padding "0"
|
|
46
|
+
fontFamily "var(--font-body)"
|
|
47
|
+
fontSize "19px"
|
|
48
|
+
lineHeight "1.7"
|
|
49
|
+
color "var(--color-text-primary)"
|
|
50
|
+
backgroundColor "var(--color-paper)"
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
images {
|
|
54
|
+
optimize #true
|
|
55
|
+
widths 320 640 960 1280 1920
|
|
56
|
+
formats webp avif
|
|
57
|
+
quality webp=80 avif=65 jpeg=80 png=80
|
|
58
|
+
sizes "(max-width: 768px) 100vw, 50vw"
|
|
59
|
+
lazyLoad #true
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
content {
|
|
63
|
+
posts {
|
|
64
|
+
source "./content/posts/"
|
|
65
|
+
format Markdown
|
|
66
|
+
schema {
|
|
67
|
+
type object
|
|
68
|
+
properties {
|
|
69
|
+
title type=string
|
|
70
|
+
excerpt type=string
|
|
71
|
+
date type=string
|
|
72
|
+
author type=string
|
|
73
|
+
tag type=string
|
|
74
|
+
cover type=string format=image
|
|
75
|
+
order type=number
|
|
76
|
+
}
|
|
77
|
+
required title excerpt date
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
build outDir="./dist" format=directory trailingSlash=always
|
|
83
|
+
|
|
84
|
+
extensions {
|
|
85
|
+
- "@jxsuite/parser"
|
|
86
|
+
}
|
|
@@ -9,10 +9,10 @@
|
|
|
9
9
|
"dev": "jx dev"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@jxsuite/parser": "^4.3.
|
|
12
|
+
"@jxsuite/parser": "^4.3.3"
|
|
13
13
|
},
|
|
14
14
|
"devDependencies": {
|
|
15
|
-
"@jxsuite/compiler": "^8.
|
|
16
|
-
"@jxsuite/runtime": "^6.2.
|
|
15
|
+
"@jxsuite/compiler": "^8.5.0",
|
|
16
|
+
"@jxsuite/runtime": "^6.2.2"
|
|
17
17
|
}
|
|
18
18
|
}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/- kdl-version 2
|
|
2
|
+
$schema "./project.schema.json"
|
|
3
|
+
project "Craft & Code Academy"
|
|
4
|
+
|
|
5
|
+
url "https://example.com"
|
|
6
|
+
|
|
7
|
+
defaults layout="./layouts/base.json" lang=en
|
|
8
|
+
|
|
9
|
+
$head {
|
|
10
|
+
meta name=viewport content="width=device-width, initial-scale=1"
|
|
11
|
+
meta name=description content="Craft & Code Academy is a project-based web development bootcamp — 14 weeks, six guided modules, live mentorship, and a deployed full-stack capstone."
|
|
12
|
+
link rel=icon href="/favicon.svg"
|
|
13
|
+
link rel=preconnect href="https://fonts.googleapis.com"
|
|
14
|
+
link rel=preconnect href="https://fonts.gstatic.com" crossorigin=""
|
|
15
|
+
link rel=stylesheet href="https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600;700&display=swap"
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
$media {
|
|
19
|
+
-- "1200px"
|
|
20
|
+
--lg "(max-width: 1024px)"
|
|
21
|
+
--md "(max-width: 768px)"
|
|
22
|
+
--sm "(max-width: 640px)"
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
style {
|
|
26
|
+
--color-primary "#4f46e5"
|
|
27
|
+
--color-primary-hover "#4338ca"
|
|
28
|
+
--color-primary-light "#6366f1"
|
|
29
|
+
--color-indigo-050 "#eef2ff"
|
|
30
|
+
--color-indigo-soft "rgba(79, 70, 229, 0.08)"
|
|
31
|
+
--color-indigo-line "rgba(79, 70, 229, 0.16)"
|
|
32
|
+
--color-accent "#a3e635"
|
|
33
|
+
--color-accent-cyan "#22d3ee"
|
|
34
|
+
--color-ink "#0b1020"
|
|
35
|
+
--color-terminal "#0b1020"
|
|
36
|
+
--color-terminal-2 "#141c39"
|
|
37
|
+
--color-terminal-line "#243056"
|
|
38
|
+
--color-bg-dark "#0b1020"
|
|
39
|
+
--color-bg-cream "#f4f5fb"
|
|
40
|
+
--color-bg-soft "#f9fafd"
|
|
41
|
+
--color-bg-white "#ffffff"
|
|
42
|
+
--color-text-primary "#0f1424"
|
|
43
|
+
--color-ink-2 "#20263f"
|
|
44
|
+
--color-text-white "#ffffff"
|
|
45
|
+
--color-text-muted "#5b6479"
|
|
46
|
+
--color-text-faint "#8a93a8"
|
|
47
|
+
--color-border "#e4e7f2"
|
|
48
|
+
--color-border-strong "#cdd3e6"
|
|
49
|
+
--font-heading "'Sora', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif"
|
|
50
|
+
--font-body "'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif"
|
|
51
|
+
--font-mono "'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, Consolas, monospace"
|
|
52
|
+
--max-width "1200px"
|
|
53
|
+
--max-width-narrow "820px"
|
|
54
|
+
--radius "0.85rem"
|
|
55
|
+
--radius-sm "0.55rem"
|
|
56
|
+
margin "0"
|
|
57
|
+
padding "0"
|
|
58
|
+
fontFamily "var(--font-body)"
|
|
59
|
+
lineHeight "1.6"
|
|
60
|
+
color "var(--color-text-primary)"
|
|
61
|
+
backgroundColor "var(--color-bg-white)"
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
images {
|
|
65
|
+
optimize #true
|
|
66
|
+
widths 320 640 960 1280 1920
|
|
67
|
+
formats webp avif
|
|
68
|
+
quality webp=80 avif=65 jpeg=80 png=80
|
|
69
|
+
sizes "(max-width: 768px) 100vw, 50vw"
|
|
70
|
+
lazyLoad #true
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
content {
|
|
74
|
+
modules {
|
|
75
|
+
source "./content/modules/"
|
|
76
|
+
format Markdown
|
|
77
|
+
schema {
|
|
78
|
+
type object
|
|
79
|
+
properties {
|
|
80
|
+
title type=string
|
|
81
|
+
summary type=string
|
|
82
|
+
duration type=string
|
|
83
|
+
order type=number
|
|
84
|
+
}
|
|
85
|
+
required title order
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
build outDir="./dist" format=directory trailingSlash=always
|
|
91
|
+
|
|
92
|
+
extensions {
|
|
93
|
+
- "@jxsuite/parser"
|
|
94
|
+
}
|
package/sites/event/package.json
CHANGED
|
@@ -9,10 +9,10 @@
|
|
|
9
9
|
"dev": "jx dev"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@jxsuite/parser": "^4.3.
|
|
12
|
+
"@jxsuite/parser": "^4.3.3"
|
|
13
13
|
},
|
|
14
14
|
"devDependencies": {
|
|
15
|
-
"@jxsuite/compiler": "^8.
|
|
16
|
-
"@jxsuite/runtime": "^6.2.
|
|
15
|
+
"@jxsuite/compiler": "^8.5.0",
|
|
16
|
+
"@jxsuite/runtime": "^6.2.2"
|
|
17
17
|
}
|
|
18
18
|
}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
/- kdl-version 2
|
|
2
|
+
$schema "./project.schema.json"
|
|
3
|
+
project "Horizon Conf 2026"
|
|
4
|
+
|
|
5
|
+
url "https://example.com"
|
|
6
|
+
|
|
7
|
+
defaults layout="./layouts/base.json" lang=en
|
|
8
|
+
|
|
9
|
+
$head {
|
|
10
|
+
meta name=viewport content="width=device-width, initial-scale=1"
|
|
11
|
+
meta name=description content="Horizon Conf 2026 — a one-day tech and design conference. Two stages, hands-on workshops, and the people building what's next. Save the date: June 12, 2026."
|
|
12
|
+
link rel=icon href="/favicon.svg"
|
|
13
|
+
link rel=preconnect href="https://fonts.googleapis.com"
|
|
14
|
+
link rel=preconnect href="https://fonts.gstatic.com" crossorigin=""
|
|
15
|
+
link rel=stylesheet href="https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700&display=swap"
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
$media {
|
|
19
|
+
-- "1200px"
|
|
20
|
+
--lg "(max-width: 1024px)"
|
|
21
|
+
--md "(max-width: 768px)"
|
|
22
|
+
--sm "(max-width: 640px)"
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
style {
|
|
26
|
+
--color-primary "#ff3d9a"
|
|
27
|
+
--color-primary-hover "#ff6bb4"
|
|
28
|
+
--color-ink "#050308"
|
|
29
|
+
--color-bg "#0a0711"
|
|
30
|
+
--color-bg-dark "#0a0711"
|
|
31
|
+
--color-bg-cream "#0f0b1c"
|
|
32
|
+
--color-bg-white "#150f28"
|
|
33
|
+
--color-bg-elev "#150f28"
|
|
34
|
+
--color-bg-elev2 "#1e1638"
|
|
35
|
+
--color-text-primary "#f3eefe"
|
|
36
|
+
--color-text-white "#ffffff"
|
|
37
|
+
--color-text-muted "#a99fc8"
|
|
38
|
+
--color-border "#2b2148"
|
|
39
|
+
--color-accent "#22e0ff"
|
|
40
|
+
--color-cyan "#22e0ff"
|
|
41
|
+
--color-violet "#a855f7"
|
|
42
|
+
--color-lime "#c6ff4d"
|
|
43
|
+
--grad "linear-gradient(115deg, #22e0ff 0%, #a855f7 50%, #ff3d9a 100%)"
|
|
44
|
+
--grad-btn "linear-gradient(120deg, #ff3d9a 0%, #a855f7 100%)"
|
|
45
|
+
--grad-cyan "linear-gradient(120deg, #22e0ff 0%, #7c74ff 100%)"
|
|
46
|
+
--glow "rgba(255, 61, 154, 0.5)"
|
|
47
|
+
--glow-cyan "rgba(34, 224, 255, 0.4)"
|
|
48
|
+
--font-heading "'Sora', 'Segoe UI', system-ui, -apple-system, sans-serif"
|
|
49
|
+
--font-body "'Manrope', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif"
|
|
50
|
+
--max-width "1200px"
|
|
51
|
+
--max-width-narrow "860px"
|
|
52
|
+
--radius "1rem"
|
|
53
|
+
margin "0"
|
|
54
|
+
padding "0"
|
|
55
|
+
fontFamily "var(--font-body)"
|
|
56
|
+
lineHeight "1.6"
|
|
57
|
+
color "var(--color-text-primary)"
|
|
58
|
+
backgroundColor "var(--color-bg)"
|
|
59
|
+
h1 {
|
|
60
|
+
fontFamily "var(--font-heading)"
|
|
61
|
+
color "var(--color-text-primary)"
|
|
62
|
+
}
|
|
63
|
+
h2 {
|
|
64
|
+
fontFamily "var(--font-heading)"
|
|
65
|
+
color "var(--color-text-primary)"
|
|
66
|
+
}
|
|
67
|
+
h3 {
|
|
68
|
+
fontFamily "var(--font-heading)"
|
|
69
|
+
color "var(--color-text-primary)"
|
|
70
|
+
}
|
|
71
|
+
h4 {
|
|
72
|
+
fontFamily "var(--font-heading)"
|
|
73
|
+
color "var(--color-text-primary)"
|
|
74
|
+
}
|
|
75
|
+
strong {
|
|
76
|
+
color "var(--color-text-primary)"
|
|
77
|
+
}
|
|
78
|
+
a {
|
|
79
|
+
color "var(--color-primary)"
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
images {
|
|
84
|
+
optimize #true
|
|
85
|
+
widths 320 640 960 1280 1920
|
|
86
|
+
formats webp avif
|
|
87
|
+
quality webp=80 avif=65 jpeg=80 png=80
|
|
88
|
+
sizes "(max-width: 768px) 100vw, 50vw"
|
|
89
|
+
lazyLoad #true
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
content {
|
|
93
|
+
sessions {
|
|
94
|
+
source "./content/sessions/"
|
|
95
|
+
format Markdown
|
|
96
|
+
schema {
|
|
97
|
+
type object
|
|
98
|
+
properties {
|
|
99
|
+
title type=string
|
|
100
|
+
time type=string
|
|
101
|
+
track type=string
|
|
102
|
+
speaker type=string
|
|
103
|
+
order type=number
|
|
104
|
+
}
|
|
105
|
+
required title track
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
build outDir="./dist" format=directory trailingSlash=always
|
|
111
|
+
|
|
112
|
+
extensions {
|
|
113
|
+
- "@jxsuite/parser"
|
|
114
|
+
}
|
|
@@ -9,10 +9,10 @@
|
|
|
9
9
|
"dev": "jx dev"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@jxsuite/parser": "^4.3.
|
|
12
|
+
"@jxsuite/parser": "^4.3.3"
|
|
13
13
|
},
|
|
14
14
|
"devDependencies": {
|
|
15
|
-
"@jxsuite/compiler": "^8.
|
|
16
|
-
"@jxsuite/runtime": "^6.2.
|
|
15
|
+
"@jxsuite/compiler": "^8.5.0",
|
|
16
|
+
"@jxsuite/runtime": "^6.2.2"
|
|
17
17
|
}
|
|
18
18
|
}
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
/- kdl-version 2
|
|
2
|
+
$schema "./project.schema.json"
|
|
3
|
+
project "Ember Yoga & Fitness"
|
|
4
|
+
|
|
5
|
+
url "https://example.com"
|
|
6
|
+
|
|
7
|
+
defaults layout="./layouts/base.json" lang=en
|
|
8
|
+
|
|
9
|
+
$head {
|
|
10
|
+
meta name=viewport content="width=device-width, initial-scale=1"
|
|
11
|
+
meta name=description content="Ember is a boutique yoga & fitness studio — vinyasa, pilates, HIIT and strength in small, all-levels classes. See the weekly schedule and book a class."
|
|
12
|
+
link rel=icon href="/favicon.svg"
|
|
13
|
+
link rel=preconnect href="https://fonts.googleapis.com"
|
|
14
|
+
link rel=preconnect href="https://fonts.gstatic.com" crossorigin=""
|
|
15
|
+
link rel=stylesheet href="https://fonts.googleapis.com/css2?family=Anton&family=Archivo:wght@500;600;700;800;900&family=DM+Sans:wght@400;500;600;700&display=swap"
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
$media {
|
|
19
|
+
-- "1200px"
|
|
20
|
+
--lg "(max-width: 1024px)"
|
|
21
|
+
--md "(max-width: 768px)"
|
|
22
|
+
--sm "(max-width: 640px)"
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
style {
|
|
26
|
+
--color-primary "#ff2e63"
|
|
27
|
+
--color-primary-hover "#e01152"
|
|
28
|
+
--color-ember "#ff8c42"
|
|
29
|
+
--color-magenta "#d6157a"
|
|
30
|
+
--color-ink "#1a0f18"
|
|
31
|
+
--color-ink-band "#20111c"
|
|
32
|
+
--color-bg-dark "#20111c"
|
|
33
|
+
--color-bg-white "#ffffff"
|
|
34
|
+
--color-bg-blush "#fff4ef"
|
|
35
|
+
--color-bg-peach "#ffe7dc"
|
|
36
|
+
--color-bg-cream "#fff4ef"
|
|
37
|
+
--color-text-primary "#1a0f18"
|
|
38
|
+
--color-text-white "#ffffff"
|
|
39
|
+
--color-text-muted "#7c6a74"
|
|
40
|
+
--color-border "#f3ded4"
|
|
41
|
+
--color-border-dark "rgba(255,255,255,0.14)"
|
|
42
|
+
--color-accent "#ff8c42"
|
|
43
|
+
--color-yoga "#ff2e63"
|
|
44
|
+
--color-strength "#7b2ff7"
|
|
45
|
+
--color-pilates "#ff8c42"
|
|
46
|
+
--color-hiit "#d6157a"
|
|
47
|
+
--grad "linear-gradient(103deg, #ff2e63 0%, #ff6a3d 52%, #ffb03a 100%)"
|
|
48
|
+
--grad-hot "linear-gradient(120deg, #d6157a 0%, #ff2e63 55%, #ff8c42 100%)"
|
|
49
|
+
--duo-shadow "#280a22"
|
|
50
|
+
--font-display "'Anton', 'Archivo', system-ui, -apple-system, sans-serif"
|
|
51
|
+
--font-heading "'Archivo', system-ui, -apple-system, 'Segoe UI', sans-serif"
|
|
52
|
+
--font-body "'DM Sans', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif"
|
|
53
|
+
--max-width "1200px"
|
|
54
|
+
--max-width-narrow "820px"
|
|
55
|
+
--radius "1.1rem"
|
|
56
|
+
--radius-sm "0.7rem"
|
|
57
|
+
margin "0"
|
|
58
|
+
padding "0"
|
|
59
|
+
fontFamily "var(--font-body)"
|
|
60
|
+
lineHeight "1.6"
|
|
61
|
+
color "var(--color-text-primary)"
|
|
62
|
+
backgroundColor "var(--color-bg-white)"
|
|
63
|
+
h1 {
|
|
64
|
+
fontFamily "var(--font-heading)"
|
|
65
|
+
color "var(--color-text-primary)"
|
|
66
|
+
}
|
|
67
|
+
h2 {
|
|
68
|
+
fontFamily "var(--font-heading)"
|
|
69
|
+
color "var(--color-text-primary)"
|
|
70
|
+
}
|
|
71
|
+
h3 {
|
|
72
|
+
fontFamily "var(--font-heading)"
|
|
73
|
+
color "var(--color-text-primary)"
|
|
74
|
+
}
|
|
75
|
+
h4 {
|
|
76
|
+
fontFamily "var(--font-heading)"
|
|
77
|
+
color "var(--color-text-primary)"
|
|
78
|
+
}
|
|
79
|
+
strong {
|
|
80
|
+
color "var(--color-text-primary)"
|
|
81
|
+
fontWeight "700"
|
|
82
|
+
}
|
|
83
|
+
a {
|
|
84
|
+
color "var(--color-primary)"
|
|
85
|
+
}
|
|
86
|
+
::selection {
|
|
87
|
+
backgroundColor "var(--color-primary)"
|
|
88
|
+
color "#ffffff"
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
images {
|
|
93
|
+
optimize #true
|
|
94
|
+
widths 320 640 960 1280 1920
|
|
95
|
+
formats webp avif
|
|
96
|
+
quality webp=80 avif=65 jpeg=80 png=80
|
|
97
|
+
sizes "(max-width: 768px) 100vw, 50vw"
|
|
98
|
+
lazyLoad #true
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
content {
|
|
102
|
+
classes {
|
|
103
|
+
source "./content/classes/"
|
|
104
|
+
format Markdown
|
|
105
|
+
schema {
|
|
106
|
+
type object
|
|
107
|
+
properties {
|
|
108
|
+
name type=string
|
|
109
|
+
level type=string
|
|
110
|
+
time type=string
|
|
111
|
+
instructor type=string
|
|
112
|
+
focus type=string
|
|
113
|
+
order type=number
|
|
114
|
+
}
|
|
115
|
+
required name level time instructor
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
build outDir="./dist" format=directory trailingSlash=always
|
|
121
|
+
|
|
122
|
+
extensions {
|
|
123
|
+
- "@jxsuite/parser"
|
|
124
|
+
}
|
|
@@ -9,10 +9,10 @@
|
|
|
9
9
|
"dev": "jx dev"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@jxsuite/parser": "^4.3.
|
|
12
|
+
"@jxsuite/parser": "^4.3.3"
|
|
13
13
|
},
|
|
14
14
|
"devDependencies": {
|
|
15
|
-
"@jxsuite/compiler": "^8.
|
|
16
|
-
"@jxsuite/runtime": "^6.2.
|
|
15
|
+
"@jxsuite/compiler": "^8.5.0",
|
|
16
|
+
"@jxsuite/runtime": "^6.2.2"
|
|
17
17
|
}
|
|
18
18
|
}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
/- kdl-version 2
|
|
2
|
+
$schema "./project.schema.json"
|
|
3
|
+
project "Summit Heating & Cooling"
|
|
4
|
+
|
|
5
|
+
url "https://example.com"
|
|
6
|
+
|
|
7
|
+
defaults layout="./layouts/base.json" lang=en
|
|
8
|
+
|
|
9
|
+
$head {
|
|
10
|
+
meta name=viewport content="width=device-width, initial-scale=1"
|
|
11
|
+
meta name=description content="Summit Heating & Cooling — licensed, insured HVAC contractor serving Northern Colorado with AC and furnace installation, repair, heat pumps, and 24/7 emergency service."
|
|
12
|
+
link rel=icon href="/favicon.svg"
|
|
13
|
+
link rel=preconnect href="https://fonts.googleapis.com"
|
|
14
|
+
link rel=preconnect href="https://fonts.gstatic.com" crossorigin=""
|
|
15
|
+
link rel=stylesheet href="https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600;700&family=Barlow:wght@400;500;600;700&display=swap"
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
$media {
|
|
19
|
+
-- "1200px"
|
|
20
|
+
--lg "(max-width: 1024px)"
|
|
21
|
+
--md "(max-width: 768px)"
|
|
22
|
+
--sm "(max-width: 640px)"
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
style {
|
|
26
|
+
--color-primary "#f4511e"
|
|
27
|
+
--color-primary-hover "#d84315"
|
|
28
|
+
--color-primary-soft "rgba(244, 81, 30, 0.12)"
|
|
29
|
+
--color-ink "#0e1a23"
|
|
30
|
+
--color-steel "#122430"
|
|
31
|
+
--color-steel-2 "#1a3341"
|
|
32
|
+
--color-steel-line "#28414f"
|
|
33
|
+
--color-bg-dark "#0e1a23"
|
|
34
|
+
--color-bg-steel "#122430"
|
|
35
|
+
--color-bg-cream "#eef1f4"
|
|
36
|
+
--color-bg-concrete "#e5eaee"
|
|
37
|
+
--color-bg-white "#ffffff"
|
|
38
|
+
--color-text-primary "#14212b"
|
|
39
|
+
--color-text-white "#ffffff"
|
|
40
|
+
--color-text-muted "#5c6b77"
|
|
41
|
+
--color-text-steel-muted "#9fb2be"
|
|
42
|
+
--color-border "#d9e0e6"
|
|
43
|
+
--color-border-strong "#c1cbd3"
|
|
44
|
+
--color-accent "#f4511e"
|
|
45
|
+
--hazard "repeating-linear-gradient(-45deg, #f4511e 0 16px, #0e1a23 16px 32px)"
|
|
46
|
+
--font-heading "'Oswald', 'Arial Narrow', 'Segoe UI', system-ui, sans-serif"
|
|
47
|
+
--font-body "'Barlow', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif"
|
|
48
|
+
--max-width "1200px"
|
|
49
|
+
--max-width-narrow "820px"
|
|
50
|
+
--radius "0.5rem"
|
|
51
|
+
--radius-sm "0.35rem"
|
|
52
|
+
--shadow-card "0 2px 4px rgba(14,26,35,0.05), 0 16px 40px -22px rgba(14,26,35,0.35)"
|
|
53
|
+
--shadow-float "0 34px 70px -30px rgba(14,26,35,0.5)"
|
|
54
|
+
margin "0"
|
|
55
|
+
padding "0"
|
|
56
|
+
fontFamily "var(--font-body)"
|
|
57
|
+
fontSize "17px"
|
|
58
|
+
lineHeight "1.6"
|
|
59
|
+
color "var(--color-text-primary)"
|
|
60
|
+
backgroundColor "var(--color-bg-white)"
|
|
61
|
+
WebkitFontSmoothing antialiased
|
|
62
|
+
h1 {
|
|
63
|
+
fontFamily "var(--font-heading)"
|
|
64
|
+
}
|
|
65
|
+
h2 {
|
|
66
|
+
fontFamily "var(--font-heading)"
|
|
67
|
+
}
|
|
68
|
+
h3 {
|
|
69
|
+
fontFamily "var(--font-heading)"
|
|
70
|
+
}
|
|
71
|
+
h4 {
|
|
72
|
+
fontFamily "var(--font-heading)"
|
|
73
|
+
}
|
|
74
|
+
strong {
|
|
75
|
+
color "var(--color-text-primary)"
|
|
76
|
+
}
|
|
77
|
+
a {
|
|
78
|
+
color "var(--color-primary)"
|
|
79
|
+
fontWeight "600"
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
images {
|
|
84
|
+
optimize #true
|
|
85
|
+
widths 320 640 960 1280 1920
|
|
86
|
+
formats webp avif
|
|
87
|
+
quality webp=80 avif=65 jpeg=80 png=80
|
|
88
|
+
sizes "(max-width: 768px) 100vw, 50vw"
|
|
89
|
+
lazyLoad #true
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
content {
|
|
93
|
+
services {
|
|
94
|
+
source "./content/services/"
|
|
95
|
+
format Markdown
|
|
96
|
+
schema {
|
|
97
|
+
type object
|
|
98
|
+
properties {
|
|
99
|
+
name type=string
|
|
100
|
+
summary type=string
|
|
101
|
+
icon type=string
|
|
102
|
+
order type=number
|
|
103
|
+
}
|
|
104
|
+
required name summary
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
build outDir="./dist" format=directory trailingSlash=always
|
|
110
|
+
|
|
111
|
+
extensions {
|
|
112
|
+
- "@jxsuite/parser"
|
|
113
|
+
}
|
|
@@ -9,10 +9,10 @@
|
|
|
9
9
|
"dev": "jx dev"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@jxsuite/parser": "^4.3.
|
|
12
|
+
"@jxsuite/parser": "^4.3.3"
|
|
13
13
|
},
|
|
14
14
|
"devDependencies": {
|
|
15
|
-
"@jxsuite/compiler": "^8.
|
|
16
|
-
"@jxsuite/runtime": "^6.2.
|
|
15
|
+
"@jxsuite/compiler": "^8.5.0",
|
|
16
|
+
"@jxsuite/runtime": "^6.2.2"
|
|
17
17
|
}
|
|
18
18
|
}
|