@cirthcss/cirth 0.2.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.
Files changed (163) hide show
  1. package/LICENSE.md +21 -0
  2. package/README.md +207 -0
  3. package/dist/cirth.amber.css +3747 -0
  4. package/dist/cirth.amber.min.css +1 -0
  5. package/dist/cirth.blue.css +3747 -0
  6. package/dist/cirth.blue.min.css +1 -0
  7. package/dist/cirth.classless.amber.css +3245 -0
  8. package/dist/cirth.classless.amber.min.css +1 -0
  9. package/dist/cirth.classless.blue.css +3245 -0
  10. package/dist/cirth.classless.blue.min.css +1 -0
  11. package/dist/cirth.classless.css +3245 -0
  12. package/dist/cirth.classless.cyan.css +3245 -0
  13. package/dist/cirth.classless.cyan.min.css +1 -0
  14. package/dist/cirth.classless.fuchsia.css +3245 -0
  15. package/dist/cirth.classless.fuchsia.min.css +1 -0
  16. package/dist/cirth.classless.green.css +3245 -0
  17. package/dist/cirth.classless.green.min.css +1 -0
  18. package/dist/cirth.classless.grey.css +3245 -0
  19. package/dist/cirth.classless.grey.min.css +1 -0
  20. package/dist/cirth.classless.indigo.css +3245 -0
  21. package/dist/cirth.classless.indigo.min.css +1 -0
  22. package/dist/cirth.classless.jade.css +3245 -0
  23. package/dist/cirth.classless.jade.min.css +1 -0
  24. package/dist/cirth.classless.lime.css +3245 -0
  25. package/dist/cirth.classless.lime.min.css +1 -0
  26. package/dist/cirth.classless.min.css +1 -0
  27. package/dist/cirth.classless.orange.css +3245 -0
  28. package/dist/cirth.classless.orange.min.css +1 -0
  29. package/dist/cirth.classless.pink.css +3245 -0
  30. package/dist/cirth.classless.pink.min.css +1 -0
  31. package/dist/cirth.classless.pumpkin.css +3245 -0
  32. package/dist/cirth.classless.pumpkin.min.css +1 -0
  33. package/dist/cirth.classless.purple.css +3245 -0
  34. package/dist/cirth.classless.purple.min.css +1 -0
  35. package/dist/cirth.classless.red.css +3245 -0
  36. package/dist/cirth.classless.red.min.css +1 -0
  37. package/dist/cirth.classless.sand.css +3245 -0
  38. package/dist/cirth.classless.sand.min.css +1 -0
  39. package/dist/cirth.classless.scoped.amber.css +2959 -0
  40. package/dist/cirth.classless.scoped.amber.min.css +1 -0
  41. package/dist/cirth.classless.scoped.blue.css +2959 -0
  42. package/dist/cirth.classless.scoped.blue.min.css +1 -0
  43. package/dist/cirth.classless.scoped.css +2959 -0
  44. package/dist/cirth.classless.scoped.cyan.css +2959 -0
  45. package/dist/cirth.classless.scoped.cyan.min.css +1 -0
  46. package/dist/cirth.classless.scoped.fuchsia.css +2959 -0
  47. package/dist/cirth.classless.scoped.fuchsia.min.css +1 -0
  48. package/dist/cirth.classless.scoped.green.css +2959 -0
  49. package/dist/cirth.classless.scoped.green.min.css +1 -0
  50. package/dist/cirth.classless.scoped.grey.css +2959 -0
  51. package/dist/cirth.classless.scoped.grey.min.css +1 -0
  52. package/dist/cirth.classless.scoped.indigo.css +2959 -0
  53. package/dist/cirth.classless.scoped.indigo.min.css +1 -0
  54. package/dist/cirth.classless.scoped.jade.css +2959 -0
  55. package/dist/cirth.classless.scoped.jade.min.css +1 -0
  56. package/dist/cirth.classless.scoped.lime.css +2959 -0
  57. package/dist/cirth.classless.scoped.lime.min.css +1 -0
  58. package/dist/cirth.classless.scoped.min.css +1 -0
  59. package/dist/cirth.classless.scoped.orange.css +2959 -0
  60. package/dist/cirth.classless.scoped.orange.min.css +1 -0
  61. package/dist/cirth.classless.scoped.pink.css +2959 -0
  62. package/dist/cirth.classless.scoped.pink.min.css +1 -0
  63. package/dist/cirth.classless.scoped.pumpkin.css +2959 -0
  64. package/dist/cirth.classless.scoped.pumpkin.min.css +1 -0
  65. package/dist/cirth.classless.scoped.purple.css +2959 -0
  66. package/dist/cirth.classless.scoped.purple.min.css +1 -0
  67. package/dist/cirth.classless.scoped.red.css +2959 -0
  68. package/dist/cirth.classless.scoped.red.min.css +1 -0
  69. package/dist/cirth.classless.scoped.sand.css +2959 -0
  70. package/dist/cirth.classless.scoped.sand.min.css +1 -0
  71. package/dist/cirth.classless.scoped.slate.css +2959 -0
  72. package/dist/cirth.classless.scoped.slate.min.css +1 -0
  73. package/dist/cirth.classless.scoped.violet.css +2959 -0
  74. package/dist/cirth.classless.scoped.violet.min.css +1 -0
  75. package/dist/cirth.classless.scoped.yellow.css +2959 -0
  76. package/dist/cirth.classless.scoped.yellow.min.css +1 -0
  77. package/dist/cirth.classless.scoped.zinc.css +2959 -0
  78. package/dist/cirth.classless.scoped.zinc.min.css +1 -0
  79. package/dist/cirth.classless.slate.css +3245 -0
  80. package/dist/cirth.classless.slate.min.css +1 -0
  81. package/dist/cirth.classless.violet.css +3245 -0
  82. package/dist/cirth.classless.violet.min.css +1 -0
  83. package/dist/cirth.classless.yellow.css +3245 -0
  84. package/dist/cirth.classless.yellow.min.css +1 -0
  85. package/dist/cirth.classless.zinc.css +3245 -0
  86. package/dist/cirth.classless.zinc.min.css +1 -0
  87. package/dist/cirth.css +3747 -0
  88. package/dist/cirth.cyan.css +3747 -0
  89. package/dist/cirth.cyan.min.css +1 -0
  90. package/dist/cirth.fuchsia.css +3747 -0
  91. package/dist/cirth.fuchsia.min.css +1 -0
  92. package/dist/cirth.green.css +3747 -0
  93. package/dist/cirth.green.min.css +1 -0
  94. package/dist/cirth.grey.css +3747 -0
  95. package/dist/cirth.grey.min.css +1 -0
  96. package/dist/cirth.indigo.css +3747 -0
  97. package/dist/cirth.indigo.min.css +1 -0
  98. package/dist/cirth.jade.css +3747 -0
  99. package/dist/cirth.jade.min.css +1 -0
  100. package/dist/cirth.lime.css +3747 -0
  101. package/dist/cirth.lime.min.css +1 -0
  102. package/dist/cirth.min.css +1 -0
  103. package/dist/cirth.orange.css +3747 -0
  104. package/dist/cirth.orange.min.css +1 -0
  105. package/dist/cirth.pink.css +3747 -0
  106. package/dist/cirth.pink.min.css +1 -0
  107. package/dist/cirth.pumpkin.css +3747 -0
  108. package/dist/cirth.pumpkin.min.css +1 -0
  109. package/dist/cirth.purple.css +3747 -0
  110. package/dist/cirth.purple.min.css +1 -0
  111. package/dist/cirth.red.css +3747 -0
  112. package/dist/cirth.red.min.css +1 -0
  113. package/dist/cirth.sand.css +3747 -0
  114. package/dist/cirth.sand.min.css +1 -0
  115. package/dist/cirth.scoped.amber.css +3467 -0
  116. package/dist/cirth.scoped.amber.min.css +1 -0
  117. package/dist/cirth.scoped.blue.css +3467 -0
  118. package/dist/cirth.scoped.blue.min.css +1 -0
  119. package/dist/cirth.scoped.css +3467 -0
  120. package/dist/cirth.scoped.cyan.css +3467 -0
  121. package/dist/cirth.scoped.cyan.min.css +1 -0
  122. package/dist/cirth.scoped.fuchsia.css +3467 -0
  123. package/dist/cirth.scoped.fuchsia.min.css +1 -0
  124. package/dist/cirth.scoped.green.css +3467 -0
  125. package/dist/cirth.scoped.green.min.css +1 -0
  126. package/dist/cirth.scoped.grey.css +3467 -0
  127. package/dist/cirth.scoped.grey.min.css +1 -0
  128. package/dist/cirth.scoped.indigo.css +3467 -0
  129. package/dist/cirth.scoped.indigo.min.css +1 -0
  130. package/dist/cirth.scoped.jade.css +3467 -0
  131. package/dist/cirth.scoped.jade.min.css +1 -0
  132. package/dist/cirth.scoped.lime.css +3467 -0
  133. package/dist/cirth.scoped.lime.min.css +1 -0
  134. package/dist/cirth.scoped.min.css +1 -0
  135. package/dist/cirth.scoped.orange.css +3467 -0
  136. package/dist/cirth.scoped.orange.min.css +1 -0
  137. package/dist/cirth.scoped.pink.css +3467 -0
  138. package/dist/cirth.scoped.pink.min.css +1 -0
  139. package/dist/cirth.scoped.pumpkin.css +3467 -0
  140. package/dist/cirth.scoped.pumpkin.min.css +1 -0
  141. package/dist/cirth.scoped.purple.css +3467 -0
  142. package/dist/cirth.scoped.purple.min.css +1 -0
  143. package/dist/cirth.scoped.red.css +3467 -0
  144. package/dist/cirth.scoped.red.min.css +1 -0
  145. package/dist/cirth.scoped.sand.css +3467 -0
  146. package/dist/cirth.scoped.sand.min.css +1 -0
  147. package/dist/cirth.scoped.slate.css +3467 -0
  148. package/dist/cirth.scoped.slate.min.css +1 -0
  149. package/dist/cirth.scoped.violet.css +3467 -0
  150. package/dist/cirth.scoped.violet.min.css +1 -0
  151. package/dist/cirth.scoped.yellow.css +3467 -0
  152. package/dist/cirth.scoped.yellow.min.css +1 -0
  153. package/dist/cirth.scoped.zinc.css +3467 -0
  154. package/dist/cirth.scoped.zinc.min.css +1 -0
  155. package/dist/cirth.slate.css +3747 -0
  156. package/dist/cirth.slate.min.css +1 -0
  157. package/dist/cirth.violet.css +3747 -0
  158. package/dist/cirth.violet.min.css +1 -0
  159. package/dist/cirth.yellow.css +3747 -0
  160. package/dist/cirth.yellow.min.css +1 -0
  161. package/dist/cirth.zinc.css +3747 -0
  162. package/dist/cirth.zinc.min.css +1 -0
  163. package/package.json +55 -0
package/LICENSE.md ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2019-2024 Cirth
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,207 @@
1
+ <p align="center">
2
+ <picture>
3
+ <source media="(prefers-color-scheme: dark)" srcset=".github/logo-dark.svg">
4
+ <source media="(prefers-color-scheme: light)" srcset=".github/logo-light.svg">
5
+ <img alt="Cirth" src=".github/logo-light.svg" width="112" height="112">
6
+ </picture>
7
+ </p>
8
+
9
+ <h1 align="center">Cirth</h1>
10
+
11
+ <p align="center">
12
+ <strong>Semantic by default. Classes only when needed.</strong>
13
+ </p>
14
+
15
+ <p align="center">
16
+ Semantic-first CSS for production-ready interfaces with clean HTML,
17
+ modern CSS, and minimal class noise.
18
+ </p>
19
+
20
+ <p align="center">
21
+ <a href="#quickstart">Quickstart</a>
22
+ ·
23
+ <a href="#builds">Builds</a>
24
+ ·
25
+ <a href="#customization">Customization</a>
26
+ ·
27
+ <a href="#philosophy">Philosophy</a>
28
+ ·
29
+ <a href="#roadmap">Roadmap</a>
30
+ </p>
31
+
32
+ <p align="center">
33
+ <a href="https://github.com/cirthcss/cirth/actions/workflows/ci.yml">
34
+ <img alt="CI" src="https://github.com/cirthcss/cirth/actions/workflows/ci.yml/badge.svg">
35
+ </a>
36
+ <a href="https://github.com/cirthcss/cirth/releases">
37
+ <img alt="GitHub Release" src="https://img.shields.io/github/v/release/cirthcss/cirth?include_prereleases">
38
+ </a>
39
+ <img alt="Status" src="https://img.shields.io/badge/status-early%20stabilization-orange">
40
+ <img alt="License" src="https://img.shields.io/badge/license-MIT-blue">
41
+ </p>
42
+
43
+ ## Quickstart
44
+
45
+ Include one stylesheet and write ordinary semantic HTML.
46
+
47
+ ```html
48
+ <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@cirthcss/cirth@0.2.0/dist/cirth.min.css">
49
+ ```
50
+
51
+ ```html
52
+ <main class="container">
53
+ <nav>
54
+ <ul>
55
+ <li><strong>Product</strong></li>
56
+ </ul>
57
+ <ul>
58
+ <li><a href="/docs">Docs</a></li>
59
+ <li><a href="/account">Account</a></li>
60
+ </ul>
61
+ </nav>
62
+
63
+ <article>
64
+ <h1>Settings</h1>
65
+ <form>
66
+ <label>
67
+ Email
68
+ <input type="email" name="email" autocomplete="email">
69
+ </label>
70
+ <button type="submit">Save</button>
71
+ </form>
72
+ </article>
73
+ </main>
74
+ ```
75
+
76
+ The npm package name is `@cirthcss/cirth`.
77
+
78
+ ```sh
79
+ npm install @cirthcss/cirth
80
+ ```
81
+
82
+ ```js
83
+ import "@cirthcss/cirth/dist/cirth.min.css";
84
+ ```
85
+
86
+ Release archives are available from
87
+ [GitHub Releases](https://github.com/cirthcss/cirth/releases).
88
+
89
+ ## Builds
90
+
91
+ The main generated stylesheets are:
92
+
93
+ | File | Purpose |
94
+ | --- | --- |
95
+ | `dist/cirth.min.css` | Default semantic build. |
96
+ | `dist/cirth.classless.min.css` | Classless build for pages with even less markup. |
97
+ | `dist/cirth.scoped.min.css` | Scoped build for embedding Cirth under `.cirth`. |
98
+ | `dist/cirth.classless.scoped.min.css` | Scoped classless build. |
99
+
100
+ Theme-specific builds are also generated, for example
101
+ `dist/cirth.slate.min.css` and `dist/cirth.classless.slate.min.css`. The theme
102
+ set is still being reviewed and will likely become smaller.
103
+
104
+ ### Classless
105
+
106
+ The classless build styles `body > header`, `body > main`, and `body > footer`
107
+ as page containers.
108
+
109
+ ```html
110
+ <link rel="stylesheet" href="dist/cirth.classless.min.css">
111
+ ```
112
+
113
+ ### Scoped
114
+
115
+ The scoped build styles only markup inside a `.cirth` container. It is useful
116
+ when embedding Cirth into an existing page, CMS, widget, or application shell.
117
+
118
+ ```html
119
+ <link rel="stylesheet" href="dist/cirth.scoped.min.css">
120
+
121
+ <div class="cirth">
122
+ <article>
123
+ <h1>Settings</h1>
124
+ <button type="button">Save</button>
125
+ </article>
126
+ </div>
127
+ ```
128
+
129
+ ## Customization
130
+
131
+ Cirth is CSS-first. Override custom properties in your own stylesheet after
132
+ loading the framework.
133
+
134
+ ```css
135
+ :root {
136
+ --cirth-font-family: Inter, system-ui, sans-serif;
137
+ --cirth-primary: #2563eb;
138
+ --cirth-primary-background: #2563eb;
139
+ --cirth-primary-border: #2563eb;
140
+ --cirth-border-radius: 0.375rem;
141
+ --cirth-spacing: 1rem;
142
+ }
143
+ ```
144
+
145
+ For scoped builds, put the overrides on the scoped root:
146
+
147
+ ```css
148
+ .cirth {
149
+ --cirth-font-family: Inter, system-ui, sans-serif;
150
+ --cirth-primary: #2563eb;
151
+ }
152
+ ```
153
+
154
+ The generated CSS in `dist/cirth.css` is the most reliable reference for the
155
+ current custom property surface.
156
+
157
+ ## Philosophy
158
+
159
+ Cirth is a semantic-first CSS framework. Standard HTML elements should carry
160
+ most of the structure, meaning, and styling burden before a class is needed.
161
+
162
+ Core principles:
163
+
164
+ - Style semantic HTML by default.
165
+ - Use classes only where HTML semantics are not enough.
166
+ - Keep layout primitives small and structural.
167
+ - Avoid utility-first class soup and broad component catalogs.
168
+ - Keep customization based on CSS custom properties.
169
+
170
+ ## Differences From Pico CSS
171
+
172
+ Cirth began as a fork of Pico CSS, but it should be treated as an independent
173
+ framework rather than a promise of permanent drop-in compatibility.
174
+
175
+ The most important user-facing differences are:
176
+
177
+ - Cirth uses the `@cirthcss/cirth` package name and the `--cirth-` CSS custom
178
+ property prefix.
179
+ - The published package is CSS-only; SCSS is repository source, not a public
180
+ Sass API.
181
+ - The active build set is focused on default, classless, scoped, and scoped
182
+ classless CSS.
183
+ - Scoped builds target a `.cirth` wrapper, including custom properties,
184
+ document styles, color schemes, and modal states.
185
+ - Standalone color utility builds and fluid classless builds are not part of
186
+ the public build surface.
187
+ - The inherited theme set is being reduced toward a smaller group of maintained
188
+ examples.
189
+
190
+ ## Roadmap
191
+
192
+ Cirth is still in early stabilization. The main public priorities are:
193
+
194
+ - stabilize the CSS custom property surface;
195
+ - audit inherited Pico CSS bugs and keep the fixes relevant to Cirth;
196
+ - refine layout primitives and decide which utilities should remain;
197
+ - reduce and document the theme set;
198
+ - document the supported build variants and migration notes from Pico CSS.
199
+
200
+ ## Project Docs
201
+
202
+ - Contribution workflow: [`.github/CONTRIBUTING.md`](.github/CONTRIBUTING.md)
203
+ - Build and package details: [`docs/build-tooling.md`](docs/build-tooling.md)
204
+
205
+ ## License
206
+
207
+ Licensed under the [MIT License](LICENSE.md).