@cirthcss/cirth 0.2.0 → 0.3.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 (162) hide show
  1. package/README.md +117 -15
  2. package/dist/cirth.classless.css +2123 -1861
  3. package/dist/cirth.classless.jade.css +2123 -1861
  4. package/dist/cirth.classless.jade.min.css +1 -1
  5. package/dist/cirth.classless.min.css +1 -1
  6. package/dist/cirth.classless.scoped.css +1302 -1157
  7. package/dist/cirth.classless.scoped.jade.css +1302 -1157
  8. package/dist/cirth.classless.scoped.jade.min.css +1 -1
  9. package/dist/cirth.classless.scoped.min.css +1 -1
  10. package/dist/cirth.classless.scoped.slate.css +1302 -1157
  11. package/dist/cirth.classless.scoped.slate.min.css +1 -1
  12. package/dist/cirth.classless.slate.css +2123 -1861
  13. package/dist/cirth.classless.slate.min.css +1 -1
  14. package/dist/cirth.css +2088 -1804
  15. package/dist/cirth.jade.css +2088 -1804
  16. package/dist/cirth.jade.min.css +1 -1
  17. package/dist/cirth.min.css +1 -1
  18. package/dist/cirth.scoped.css +1569 -1402
  19. package/dist/cirth.scoped.jade.css +1569 -1402
  20. package/dist/cirth.scoped.jade.min.css +1 -1
  21. package/dist/cirth.scoped.min.css +1 -1
  22. package/dist/cirth.scoped.slate.css +1569 -1402
  23. package/dist/cirth.scoped.slate.min.css +1 -1
  24. package/dist/cirth.slate.css +2088 -1804
  25. package/dist/cirth.slate.min.css +1 -1
  26. package/package.json +26 -4
  27. package/dist/cirth.amber.css +0 -3747
  28. package/dist/cirth.amber.min.css +0 -1
  29. package/dist/cirth.blue.css +0 -3747
  30. package/dist/cirth.blue.min.css +0 -1
  31. package/dist/cirth.classless.amber.css +0 -3245
  32. package/dist/cirth.classless.amber.min.css +0 -1
  33. package/dist/cirth.classless.blue.css +0 -3245
  34. package/dist/cirth.classless.blue.min.css +0 -1
  35. package/dist/cirth.classless.cyan.css +0 -3245
  36. package/dist/cirth.classless.cyan.min.css +0 -1
  37. package/dist/cirth.classless.fuchsia.css +0 -3245
  38. package/dist/cirth.classless.fuchsia.min.css +0 -1
  39. package/dist/cirth.classless.green.css +0 -3245
  40. package/dist/cirth.classless.green.min.css +0 -1
  41. package/dist/cirth.classless.grey.css +0 -3245
  42. package/dist/cirth.classless.grey.min.css +0 -1
  43. package/dist/cirth.classless.indigo.css +0 -3245
  44. package/dist/cirth.classless.indigo.min.css +0 -1
  45. package/dist/cirth.classless.lime.css +0 -3245
  46. package/dist/cirth.classless.lime.min.css +0 -1
  47. package/dist/cirth.classless.orange.css +0 -3245
  48. package/dist/cirth.classless.orange.min.css +0 -1
  49. package/dist/cirth.classless.pink.css +0 -3245
  50. package/dist/cirth.classless.pink.min.css +0 -1
  51. package/dist/cirth.classless.pumpkin.css +0 -3245
  52. package/dist/cirth.classless.pumpkin.min.css +0 -1
  53. package/dist/cirth.classless.purple.css +0 -3245
  54. package/dist/cirth.classless.purple.min.css +0 -1
  55. package/dist/cirth.classless.red.css +0 -3245
  56. package/dist/cirth.classless.red.min.css +0 -1
  57. package/dist/cirth.classless.sand.css +0 -3245
  58. package/dist/cirth.classless.sand.min.css +0 -1
  59. package/dist/cirth.classless.scoped.amber.css +0 -2959
  60. package/dist/cirth.classless.scoped.amber.min.css +0 -1
  61. package/dist/cirth.classless.scoped.blue.css +0 -2959
  62. package/dist/cirth.classless.scoped.blue.min.css +0 -1
  63. package/dist/cirth.classless.scoped.cyan.css +0 -2959
  64. package/dist/cirth.classless.scoped.cyan.min.css +0 -1
  65. package/dist/cirth.classless.scoped.fuchsia.css +0 -2959
  66. package/dist/cirth.classless.scoped.fuchsia.min.css +0 -1
  67. package/dist/cirth.classless.scoped.green.css +0 -2959
  68. package/dist/cirth.classless.scoped.green.min.css +0 -1
  69. package/dist/cirth.classless.scoped.grey.css +0 -2959
  70. package/dist/cirth.classless.scoped.grey.min.css +0 -1
  71. package/dist/cirth.classless.scoped.indigo.css +0 -2959
  72. package/dist/cirth.classless.scoped.indigo.min.css +0 -1
  73. package/dist/cirth.classless.scoped.lime.css +0 -2959
  74. package/dist/cirth.classless.scoped.lime.min.css +0 -1
  75. package/dist/cirth.classless.scoped.orange.css +0 -2959
  76. package/dist/cirth.classless.scoped.orange.min.css +0 -1
  77. package/dist/cirth.classless.scoped.pink.css +0 -2959
  78. package/dist/cirth.classless.scoped.pink.min.css +0 -1
  79. package/dist/cirth.classless.scoped.pumpkin.css +0 -2959
  80. package/dist/cirth.classless.scoped.pumpkin.min.css +0 -1
  81. package/dist/cirth.classless.scoped.purple.css +0 -2959
  82. package/dist/cirth.classless.scoped.purple.min.css +0 -1
  83. package/dist/cirth.classless.scoped.red.css +0 -2959
  84. package/dist/cirth.classless.scoped.red.min.css +0 -1
  85. package/dist/cirth.classless.scoped.sand.css +0 -2959
  86. package/dist/cirth.classless.scoped.sand.min.css +0 -1
  87. package/dist/cirth.classless.scoped.violet.css +0 -2959
  88. package/dist/cirth.classless.scoped.violet.min.css +0 -1
  89. package/dist/cirth.classless.scoped.yellow.css +0 -2959
  90. package/dist/cirth.classless.scoped.yellow.min.css +0 -1
  91. package/dist/cirth.classless.scoped.zinc.css +0 -2959
  92. package/dist/cirth.classless.scoped.zinc.min.css +0 -1
  93. package/dist/cirth.classless.violet.css +0 -3245
  94. package/dist/cirth.classless.violet.min.css +0 -1
  95. package/dist/cirth.classless.yellow.css +0 -3245
  96. package/dist/cirth.classless.yellow.min.css +0 -1
  97. package/dist/cirth.classless.zinc.css +0 -3245
  98. package/dist/cirth.classless.zinc.min.css +0 -1
  99. package/dist/cirth.cyan.css +0 -3747
  100. package/dist/cirth.cyan.min.css +0 -1
  101. package/dist/cirth.fuchsia.css +0 -3747
  102. package/dist/cirth.fuchsia.min.css +0 -1
  103. package/dist/cirth.green.css +0 -3747
  104. package/dist/cirth.green.min.css +0 -1
  105. package/dist/cirth.grey.css +0 -3747
  106. package/dist/cirth.grey.min.css +0 -1
  107. package/dist/cirth.indigo.css +0 -3747
  108. package/dist/cirth.indigo.min.css +0 -1
  109. package/dist/cirth.lime.css +0 -3747
  110. package/dist/cirth.lime.min.css +0 -1
  111. package/dist/cirth.orange.css +0 -3747
  112. package/dist/cirth.orange.min.css +0 -1
  113. package/dist/cirth.pink.css +0 -3747
  114. package/dist/cirth.pink.min.css +0 -1
  115. package/dist/cirth.pumpkin.css +0 -3747
  116. package/dist/cirth.pumpkin.min.css +0 -1
  117. package/dist/cirth.purple.css +0 -3747
  118. package/dist/cirth.purple.min.css +0 -1
  119. package/dist/cirth.red.css +0 -3747
  120. package/dist/cirth.red.min.css +0 -1
  121. package/dist/cirth.sand.css +0 -3747
  122. package/dist/cirth.sand.min.css +0 -1
  123. package/dist/cirth.scoped.amber.css +0 -3467
  124. package/dist/cirth.scoped.amber.min.css +0 -1
  125. package/dist/cirth.scoped.blue.css +0 -3467
  126. package/dist/cirth.scoped.blue.min.css +0 -1
  127. package/dist/cirth.scoped.cyan.css +0 -3467
  128. package/dist/cirth.scoped.cyan.min.css +0 -1
  129. package/dist/cirth.scoped.fuchsia.css +0 -3467
  130. package/dist/cirth.scoped.fuchsia.min.css +0 -1
  131. package/dist/cirth.scoped.green.css +0 -3467
  132. package/dist/cirth.scoped.green.min.css +0 -1
  133. package/dist/cirth.scoped.grey.css +0 -3467
  134. package/dist/cirth.scoped.grey.min.css +0 -1
  135. package/dist/cirth.scoped.indigo.css +0 -3467
  136. package/dist/cirth.scoped.indigo.min.css +0 -1
  137. package/dist/cirth.scoped.lime.css +0 -3467
  138. package/dist/cirth.scoped.lime.min.css +0 -1
  139. package/dist/cirth.scoped.orange.css +0 -3467
  140. package/dist/cirth.scoped.orange.min.css +0 -1
  141. package/dist/cirth.scoped.pink.css +0 -3467
  142. package/dist/cirth.scoped.pink.min.css +0 -1
  143. package/dist/cirth.scoped.pumpkin.css +0 -3467
  144. package/dist/cirth.scoped.pumpkin.min.css +0 -1
  145. package/dist/cirth.scoped.purple.css +0 -3467
  146. package/dist/cirth.scoped.purple.min.css +0 -1
  147. package/dist/cirth.scoped.red.css +0 -3467
  148. package/dist/cirth.scoped.red.min.css +0 -1
  149. package/dist/cirth.scoped.sand.css +0 -3467
  150. package/dist/cirth.scoped.sand.min.css +0 -1
  151. package/dist/cirth.scoped.violet.css +0 -3467
  152. package/dist/cirth.scoped.violet.min.css +0 -1
  153. package/dist/cirth.scoped.yellow.css +0 -3467
  154. package/dist/cirth.scoped.yellow.min.css +0 -1
  155. package/dist/cirth.scoped.zinc.css +0 -3467
  156. package/dist/cirth.scoped.zinc.min.css +0 -1
  157. package/dist/cirth.violet.css +0 -3747
  158. package/dist/cirth.violet.min.css +0 -1
  159. package/dist/cirth.yellow.css +0 -3747
  160. package/dist/cirth.yellow.min.css +0 -1
  161. package/dist/cirth.zinc.css +0 -3747
  162. package/dist/cirth.zinc.min.css +0 -1
package/README.md CHANGED
@@ -24,9 +24,13 @@
24
24
  ·
25
25
  <a href="#customization">Customization</a>
26
26
  ·
27
+ <a href="#documentation">Documentation</a>
28
+ ·
29
+ <a href="#browser-support">Browser support</a>
30
+ ·
27
31
  <a href="#philosophy">Philosophy</a>
28
32
  ·
29
- <a href="#roadmap">Roadmap</a>
33
+ <a href="#comparison">Comparison</a>
30
34
  </p>
31
35
 
32
36
  <p align="center">
@@ -36,7 +40,7 @@
36
40
  <a href="https://github.com/cirthcss/cirth/releases">
37
41
  <img alt="GitHub Release" src="https://img.shields.io/github/v/release/cirthcss/cirth?include_prereleases">
38
42
  </a>
39
- <img alt="Status" src="https://img.shields.io/badge/status-early%20stabilization-orange">
43
+ <img alt="Status" src="https://img.shields.io/badge/status-active%20development-blue">
40
44
  <img alt="License" src="https://img.shields.io/badge/license-MIT-blue">
41
45
  </p>
42
46
 
@@ -45,7 +49,7 @@
45
49
  Include one stylesheet and write ordinary semantic HTML.
46
50
 
47
51
  ```html
48
- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@cirthcss/cirth@0.2.0/dist/cirth.min.css">
52
+ <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@cirthcss/cirth@0.3.0/dist/cirth.min.css">
49
53
  ```
50
54
 
51
55
  ```html
@@ -98,8 +102,9 @@ The main generated stylesheets are:
98
102
  | `dist/cirth.classless.scoped.min.css` | Scoped classless build. |
99
103
 
100
104
  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.
105
+ `dist/cirth.jade.min.css` and `dist/cirth.classless.slate.min.css`. Cirth
106
+ ships three maintained themes azure (default), jade, and slate each with
107
+ light and dark variants. See [Colors](docs/colors.md) for the full list.
103
108
 
104
109
  ### Classless
105
110
 
@@ -152,7 +157,79 @@ For scoped builds, put the overrides on the scoped root:
152
157
  ```
153
158
 
154
159
  The generated CSS in `dist/cirth.css` is the most reliable reference for the
155
- current custom property surface.
160
+ current custom property surface. The [Customization](docs/customization.md)
161
+ page covers the token layers, color groups, and light/dark switching in
162
+ detail.
163
+
164
+ ## Documentation
165
+
166
+ The full documentation lives in [`docs/`](docs/) as a
167
+ [VitePress](https://vitepress.dev) site with live examples. The site itself
168
+ is styled with Cirth's own default build — the header, sidebar, prose, and
169
+ every demo are ordinary semantic HTML dogfooding the framework.
170
+
171
+ Run it locally:
172
+
173
+ ```sh
174
+ npm install
175
+ npm run docs:dev
176
+ ```
177
+
178
+ - **Getting started** —
179
+ [Get Started](docs/get-started.md) ·
180
+ [Customization](docs/customization.md) ·
181
+ [Colors](docs/colors.md) ·
182
+ [About Cirth](docs/about.md)
183
+ - **Layout** —
184
+ [Document](docs/layout/document.md) ·
185
+ [Landmarks](docs/layout/landmarks.md) ·
186
+ [Section](docs/layout/section.md) ·
187
+ [Container](docs/layout/container.md) ·
188
+ [Grid](docs/layout/grid.md) ·
189
+ [Overflow auto](docs/layout/overflow-auto.md)
190
+ - **Content** —
191
+ [Typography](docs/content/typography.md) ·
192
+ [Link](docs/content/link.md) ·
193
+ [Button](docs/content/button.md) ·
194
+ [Table](docs/content/table.md) ·
195
+ [Code](docs/content/code.md) ·
196
+ [Figure](docs/content/figure.md) ·
197
+ [Embedded content](docs/content/embedded.md) ·
198
+ [Misc](docs/content/misc.md)
199
+ - **Forms** —
200
+ [Overview](docs/forms/index.md) ·
201
+ [Checkbox, radio, switch](docs/forms/checkbox-radio-switch.md) ·
202
+ [Input color](docs/forms/input-color.md) ·
203
+ [Input date](docs/forms/input-date.md) ·
204
+ [Input file](docs/forms/input-file.md) ·
205
+ [Input range](docs/forms/input-range.md) ·
206
+ [Input search](docs/forms/input-search.md)
207
+ - **Components** —
208
+ [Accordion](docs/components/accordion.md) ·
209
+ [Card](docs/components/card.md) ·
210
+ [Dropdown](docs/components/dropdown.md) ·
211
+ [Group](docs/components/group.md) ·
212
+ [Loading](docs/components/loading.md) ·
213
+ [Modal](docs/components/modal.md) ·
214
+ [Nav](docs/components/nav.md) ·
215
+ [Progress](docs/components/progress.md) ·
216
+ [Tooltip](docs/components/tooltip.md)
217
+ - **Utilities** —
218
+ [Accessibility](docs/utilities/accessibility.md) ·
219
+ [Reduce motion](docs/utilities/reduce-motion.md)
220
+ - **Project** —
221
+ [Build tooling](docs/build-tooling.md) ·
222
+ [Contributing](.github/CONTRIBUTING.md) ·
223
+ [Changelog](CHANGELOG.md)
224
+
225
+ ## Browser Support
226
+
227
+ Cirth is designed and tested for the latest stable Chrome, Edge, Firefox,
228
+ and Safari releases. The compiled CSS is processed with Lightning CSS
229
+ against the Browserslist [`defaults`](https://browsersl.ist/#q=defaults)
230
+ query (roughly: the last two versions of each major browser, everything
231
+ above 0.5% global usage, and Firefox ESR). No version of Internet Explorer
232
+ is supported.
156
233
 
157
234
  ## Philosophy
158
235
 
@@ -167,6 +244,36 @@ Core principles:
167
244
  - Avoid utility-first class soup and broad component catalogs.
168
245
  - Keep customization based on CSS custom properties.
169
246
 
247
+ ## Comparison
248
+
249
+ Cirth, Pico CSS, and Tailwind CSS solve the same broad problem — styling
250
+ HTML — with different trade-offs. This is directional, not a benchmark;
251
+ actual bundle size depends on the utilities or components you end up using
252
+ in every case.
253
+
254
+ | | Cirth | Pico CSS | Tailwind CSS |
255
+ | --- | --- | --- | --- |
256
+ | Styling model | Semantic HTML first; classes only where semantics run out | Semantic HTML first; classes only where semantics run out | Utility-first; classes on nearly every element |
257
+ | Typical markup | `<button>`, `<article>`, `<nav>` — no `.btn`, `.card` | Same | `<button class="rounded bg-blue-600 px-4 py-2 ...">` |
258
+ | Customization | CSS custom properties, override after loading | CSS custom properties, override after loading | Config file (`tailwind.config.js`) plus utility classes |
259
+ | Build step | None to use the default build; only needed to pick a theme | None to use the default build | Required for any production bundle (JIT/content scanning) |
260
+ | Themes | 3 maintained (azure, jade, slate), light/dark each | ~20 accent colors, light/dark each | None built in; arbitrary via config |
261
+ | Default build, gzip | ~13KB | ~11.5KB | No single default — depends entirely on utilities used |
262
+ | Public Sass API | No — CSS only | Yes | N/A |
263
+
264
+ **"Classless" Tailwind** setups — writing `@apply` rules against bare
265
+ elements (`h1`, `button`, `article`) instead of adding utility classes to
266
+ markup — get close to Cirth's authoring experience, but that layer is
267
+ something you assemble yourself against Tailwind's utility values. It still
268
+ needs the full Tailwind build pipeline (PostCSS, content scanning, JIT) and
269
+ isn't a published, versioned stylesheet you can link directly. Cirth and
270
+ Pico ship that layer already built, tuned, and versioned.
271
+
272
+ Cirth is a fork of Pico CSS; the practical difference today is scope. Pico
273
+ maintains a broader theme and utility surface and a public Sass API. Cirth
274
+ trims both in exchange for a smaller, more curated build — see
275
+ [Differences From Pico CSS](#differences-from-pico-css) below for specifics.
276
+
170
277
  ## Differences From Pico CSS
171
278
 
172
279
  Cirth began as a fork of Pico CSS, but it should be treated as an independent
@@ -184,24 +291,19 @@ The most important user-facing differences are:
184
291
  document styles, color schemes, and modal states.
185
292
  - Standalone color utility builds and fluid classless builds are not part of
186
293
  the public build surface.
187
- - The inherited theme set is being reduced toward a smaller group of maintained
188
- examples.
294
+ - The inherited 20-accent theme set has been reduced to three maintained
295
+ themes: azure (default), jade, and slate.
189
296
 
190
297
  ## Roadmap
191
298
 
192
- Cirth is still in early stabilization. The main public priorities are:
299
+ Cirth is under active development, working toward a stable 1.0. The main
300
+ public priorities are:
193
301
 
194
302
  - stabilize the CSS custom property surface;
195
303
  - audit inherited Pico CSS bugs and keep the fixes relevant to Cirth;
196
304
  - refine layout primitives and decide which utilities should remain;
197
- - reduce and document the theme set;
198
305
  - document the supported build variants and migration notes from Pico CSS.
199
306
 
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
307
  ## License
206
308
 
207
309
  Licensed under the [MIT License](LICENSE.md).