@cyclone-ui/shiki 0.0.0-stage → 0.0.5

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 (43) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/README.md +303 -2
  3. package/dist/dark/INSTALL.md +45 -0
  4. package/dist/dark/theme.json +125 -0
  5. package/dist/dark-dimmed/INSTALL.md +45 -0
  6. package/dist/dark-dimmed/theme.json +125 -0
  7. package/dist/dark-high-contrast/INSTALL.md +45 -0
  8. package/dist/dark-high-contrast/theme.json +125 -0
  9. package/dist/light/INSTALL.md +45 -0
  10. package/dist/light/theme.json +125 -0
  11. package/dist/light-dimmed/INSTALL.md +45 -0
  12. package/dist/light-dimmed/theme.json +125 -0
  13. package/dist/light-high-contrast/INSTALL.md +45 -0
  14. package/dist/light-high-contrast/theme.json +125 -0
  15. package/dist/src/dark/INSTALL.md +45 -0
  16. package/dist/src/dark/theme.json +125 -0
  17. package/dist/src/dark-dimmed/INSTALL.md +45 -0
  18. package/dist/src/dark-dimmed/theme.json +125 -0
  19. package/dist/src/dark-high-contrast/INSTALL.md +45 -0
  20. package/dist/src/dark-high-contrast/theme.json +125 -0
  21. package/dist/src/light/INSTALL.md +45 -0
  22. package/dist/src/light/theme.json +125 -0
  23. package/dist/src/light-dimmed/INSTALL.md +45 -0
  24. package/dist/src/light-dimmed/theme.json +125 -0
  25. package/dist/src/light-high-contrast/INSTALL.md +45 -0
  26. package/dist/src/light-high-contrast/theme.json +125 -0
  27. package/package.json +16 -4
  28. package/project.json +26 -0
  29. package/src/dark/INSTALL.md +45 -0
  30. package/src/dark/theme.json +125 -0
  31. package/src/dark-dimmed/INSTALL.md +45 -0
  32. package/src/dark-dimmed/theme.json +125 -0
  33. package/src/dark-high-contrast/INSTALL.md +45 -0
  34. package/src/dark-high-contrast/theme.json +125 -0
  35. package/src/light/INSTALL.md +45 -0
  36. package/src/light/theme.json +125 -0
  37. package/src/light-dimmed/INSTALL.md +45 -0
  38. package/src/light-dimmed/theme.json +125 -0
  39. package/src/light-high-contrast/INSTALL.md +45 -0
  40. package/src/light-high-contrast/theme.json +125 -0
  41. package/tsconfig.json +16 -0
  42. package/tsconfig.spec.json +13 -0
  43. package/vitest.config.mts +24 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,31 @@
1
+ ![Cyclone UI's logo banner](https://public.storm-cdn.com/cyclone-ui/media/banner-1280x320-dark.gif)
2
+
3
+ # Changelog for Cyclone UI - Shiki
4
+
5
+ ## [0.0.5](https://github.com/storm-software/cyclone-ui/releases/tag/shiki%400.0.5) (10/12/2026)
6
+
7
+ ### Bug Fixes
8
+
9
+ - **tokens:** Updates to background token structure ([913fc3c9](https://github.com/storm-software/cyclone-ui/commit/913fc3c9))
10
+
11
+ ## [0.0.4](https://github.com/storm-software/cyclone-ui/releases/tag/shiki%400.0.4) (10/12/2026)
12
+
13
+ ### Bug Fixes
14
+
15
+ - **monorepo:** Clean up component display issues ([aec421b0](https://github.com/storm-software/cyclone-ui/commit/aec421b0))
16
+
17
+ ## [0.0.2](https://github.com/storm-software/cyclone-ui/releases/tag/shiki%400.0.2) (10/11/2026)
18
+
19
+ ### Bug Fixes
20
+
21
+ - **shiki:** Resolve release workflow failures ([bcc9cbfb](https://github.com/storm-software/cyclone-ui/commit/bcc9cbfb))
22
+ - **themes:** Update the token structure in the design system ([a226f474](https://github.com/storm-software/cyclone-ui/commit/a226f474))
23
+ - **context-menu:** Update `Select` to use shared Context Menu component ([ef0f0b77](https://github.com/storm-software/cyclone-ui/commit/ef0f0b77))
24
+ - **monorepo:** Update component descriptions and added design sync with Claude Design ([35ece709](https://github.com/storm-software/cyclone-ui/commit/35ece709))
25
+
26
+ ### Features
27
+
28
+ - **cli:** Added a `create-tokens` command ([0c2dde08](https://github.com/storm-software/cyclone-ui/commit/0c2dde08))
29
+ - **field:** Added the `variant` property to both field and label components ([c1e0c13c](https://github.com/storm-software/cyclone-ui/commit/c1e0c13c))
30
+ - **context-menu:** Added separate `ContextMenu` component to share ([e8ac830e](https://github.com/storm-software/cyclone-ui/commit/e8ac830e))
31
+ - **monorepo:** Added design system sync with Claude Design ([d4b0b637](https://github.com/storm-software/cyclone-ui/commit/d4b0b637))
package/README.md CHANGED
@@ -1,3 +1,304 @@
1
- # Temporary Holding Version
1
+ <!-- START header -->
2
+ <!-- prettier-ignore-start -->
3
+ <!-- markdownlint-disable -->
2
4
 
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
5
+
6
+ <div align="center"><img src="https://pub-761b436209f44a4d886487c917806c08.r2.dev/storm-banner.gif" width="100%" alt="Storm Software" /></div>
7
+ <br />
8
+
9
+ <div align="center">
10
+ <b>
11
+ <a href="https://stormsoftware.com" target="_blank">Website</a> •
12
+ <a href="https://github.com/storm-software/cyclone-ui" target="_blank">GitHub</a> •
13
+ <a href="https://discord.gg/MQ6YVzakM5">Discord</a> • <a href="https://docs.stormsoftware.com/cyclone-ui" target="_blank">Docs</a> • <a href="https://stormsoftware.com/contact" target="_blank">Contact</a> •
14
+ <a href="https://github.com/storm-software/cyclone-ui/issues/new?assignees=&labels=bug&template=bug-report.yml&title=Bug Report%3A+">Report a Bug</a>
15
+ </b>
16
+ </div>
17
+
18
+ <br />
19
+ This package is part of the <b>🌀 Cyclone UI</b> monorepo. The repository contains <a href="https://tamagui.dev" target="_blank">Tamagui</a> based design components used by Storm Software. Like <a href="https://ui.shadcn.com" target="_blank">Shadcn UI</a>, the components are copied into other repositories via the Cyclone CLI.
20
+ <br />
21
+
22
+ ### 💻 Visit [stormsoftware.com](https://stormsoftware.com) to stay up to date with this developer<br />
23
+
24
+ [![Version](https://img.shields.io/badge/version-0.2.0-1fb2a6.svg?style=for-the-badge&color=1fb2a6)](https://prettier.io/)&nbsp;[![Nx](https://img.shields.io/badge/Nx-17.0.2-lightgrey?style=for-the-badge&logo=nx&logoWidth=20&&color=1fb2a6)](http://nx.dev/)&nbsp;[![NextJs](https://img.shields.io/badge/Next.js-14.0.2-lightgrey?style=for-the-badge&logo=nextdotjs&logoWidth=20&color=1fb2a6)](https://nextjs.org/)&nbsp;[![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg?style=for-the-badge&logo=commitlint&color=1fb2a6)](http://commitizen.github.io/cz-cli/)&nbsp;![Semantic-Release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg?style=for-the-badge&color=1fb2a6)&nbsp;[![documented with docusaurus](https://img.shields.io/badge/documented_with-docusaurus-success.svg?style=for-the-badge&logo=readthedocs&color=1fb2a6)](https://docusaurus.io/)&nbsp;![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/storm-software/cyclone-ui/cr.yml?style=for-the-badge&logo=github-actions&color=1fb2a6)
25
+
26
+ <!-- prettier-ignore-start -->
27
+ <!-- markdownlint-disable -->
28
+
29
+ > [!IMPORTANT]
30
+ > This repository, and the apps, libraries, and tools contained within, is still in it's initial development phase. As a result, bugs and issues are expected with it's usage. When the main development phase completes, a proper release will be performed, the packages will be available through NPM (and other distributions), and this message will be removed. However, in the meantime, please feel free to report any issues you may come across.
31
+
32
+ <!-- markdownlint-restore -->
33
+ <!-- prettier-ignore-end -->
34
+
35
+ <br />
36
+
37
+ <!-- markdownlint-restore -->
38
+ <!-- prettier-ignore-end -->
39
+
40
+ <!-- END header -->
41
+
42
+ # Shiki Themes
43
+
44
+ A package containing various [shiki](https://github.com/shikijs/shiki) themes for the Cyclone UI.
45
+
46
+ <!-- START doctoc -->
47
+ <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
48
+ ## Table of Contents
49
+
50
+ - [Shiki Themes](#shiki-themes)
51
+ - [Table of Contents](#table-of-contents)
52
+ - [Installing](#installing)
53
+ - [Reduced Package Size](#reduced-package-size)
54
+ - [Development](#development)
55
+ - [Building](#building)
56
+ - [Running unit tests](#running-unit-tests)
57
+ - [Linting](#linting)
58
+ - [Storm Workspaces](#storm-workspaces)
59
+ - [Roadmap](#roadmap)
60
+ - [Support](#support)
61
+ - [License](#license)
62
+ - [Documentation](#documentation)
63
+ - [Changelog](#changelog)
64
+ - [Contributing](#contributing)
65
+ - [Contributors](#contributors)
66
+ - [💻 Visit stormsoftware.com to stay up to date with this developer](#-visit-stormsoftwarecom-to-stay-up-to-date-with-this-developer-1)
67
+
68
+ <!-- END doctoc -->
69
+
70
+ ## Installing
71
+
72
+ Using [pnpm](http://pnpm.io):
73
+
74
+ ```bash
75
+ pnpm add -D @cyclone-ui/shiki
76
+ ```
77
+
78
+ <details>
79
+ <summary>Using npm</summary>
80
+
81
+ ```bash
82
+ npm install -D @cyclone-ui/shiki
83
+ ```
84
+
85
+ </details>
86
+
87
+ <details>
88
+ <summary>Using yarn</summary>
89
+
90
+ ```bash
91
+ yarn add -D @cyclone-ui/shiki
92
+ ```
93
+
94
+ </details>
95
+
96
+ ## Reduced Package Size
97
+
98
+ This project uses [tsup](https://tsup.egoist.dev/) to package the source code
99
+ due to its ability to remove unused code and ship smaller javascript files
100
+ thanks to code splitting. This helps to greatly reduce the size of the package
101
+ and to make it easier to use in other projects.
102
+
103
+ ## Development
104
+
105
+ This project is built using [Nx](https://nx.dev). As a result, many of the usual
106
+ commands are available to assist in development.
107
+
108
+ ### Building
109
+
110
+ Run `nx build shiki` to build the library.
111
+
112
+ ### Running unit tests
113
+
114
+ Run `nx test shiki` to execute the unit tests via [Vitest](https://vitest.dev).
115
+
116
+ ### Linting
117
+
118
+ Run `nx lint shiki` to run [ESLint](https://eslint.org/) on the package.
119
+
120
+ <!-- START footer -->
121
+ <!-- prettier-ignore-start -->
122
+ <!-- markdownlint-disable -->
123
+
124
+
125
+ ## Storm Workspaces
126
+
127
+ Storm workspaces are built using
128
+ <a href="https://nx.dev/" target="_blank">Nx</a>, a set of extensible dev tools
129
+ for monorepos, which helps you develop like Google, Facebook, and Microsoft.
130
+ Building on top of Nx, the Open System provides a set of tools and patterns that
131
+ help you scale your monorepo to many teams while keeping the codebase
132
+ maintainable.
133
+
134
+ <div align="right">[ <a href="#table-of-contents">Back to top ▲</a> ]</div>
135
+ <br />
136
+
137
+ ## Roadmap
138
+
139
+ See the [open issues](https://github.com/storm-software/cyclone-ui/issues) for a
140
+ list of proposed features (and known issues).
141
+
142
+ - [Top Feature Requests](https://github.com/storm-software/cyclone-ui/issues?q=label%3Aenhancement+is%3Aopen+sort%3Areactions-%2B1-desc)
143
+ (Add your votes using the 👍 reaction)
144
+ - [Top Bugs](https://github.com/storm-software/cyclone-ui/issues?q=is%3Aissue+is%3Aopen+label%3Abug+sort%3Areactions-%2B1-desc)
145
+ (Add your votes using the 👍 reaction)
146
+ - [Newest Bugs](https://github.com/storm-software/cyclone-ui/issues?q=is%3Aopen+is%3Aissue+label%3Abug)
147
+
148
+ <div align="right">[ <a href="#table-of-contents">Back to top ▲</a> ]</div>
149
+ <br />
150
+
151
+ ## Support
152
+
153
+ Reach out to the maintainer at one of the following places:
154
+
155
+ - [Contact](https://stormsoftware.com/contact)
156
+ - [GitHub discussions](https://github.com/storm-software/cyclone-ui/discussions)
157
+ - <support@stormsoftware.com>
158
+
159
+ <div align="right">[ <a href="#table-of-contents">Back to top ▲</a> ]</div>
160
+ <br />
161
+
162
+ ## License
163
+
164
+ This project is licensed under the **Apache License, Version 2.0**. Feel free to
165
+ edit and distribute this template as you like.
166
+
167
+ ```
168
+ Copyright (C) 2023 - 2024 Storm Software
169
+
170
+ Licensed under the Apache License, Version 2.0 (the "License");
171
+ you may not use this file except in compliance with the License.
172
+ You may obtain a copy of the License at
173
+
174
+ http://www.apache.org/licenses/LICENSE-2.0
175
+
176
+ Unless required by applicable law or agreed to in writing, software
177
+ distributed under the License is distributed on an "AS IS" BASIS,
178
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
179
+ See the License for the specific language governing permissions and
180
+ limitations under the License.
181
+ ```
182
+
183
+ See [LICENSE](LICENSE) for more information.
184
+
185
+ ### Documentation
186
+
187
+ All documentation is licensed under the
188
+ [Creative Commons](http://creativecommons.org/licenses/by/4.0/) (attribute)
189
+ license.
190
+
191
+ <div align="right">[ <a href="#table-of-contents">Back to top ▲</a> ]</div>
192
+ <br />
193
+
194
+ ## Changelog
195
+
196
+ This project adheres to
197
+ [Semantic Versioning](https://semver.org/spec/v2.0.0.html). Every release, along
198
+ with the migration instructions, is documented in the [CHANGELOG](CHANGELOG.md)
199
+ file
200
+
201
+ <div align="right">[ <a href="#table-of-contents">Back to top ▲</a> ]</div>
202
+ <br />
203
+
204
+ ## Contributing
205
+
206
+ First off, thanks for taking the time to contribute! Contributions are what
207
+ makes the open-source community such an amazing place to learn, inspire, and
208
+ create. Any contributions you make will benefit everybody else and are **greatly
209
+ appreciated**.
210
+
211
+ Please try to create bug reports that are:
212
+
213
+ - _Reproducible._ Include steps to reproduce the problem.
214
+ - _Specific._ Include as much detail as possible: which version, what
215
+ environment, etc.
216
+ - _Unique._ Do not duplicate existing opened issues.
217
+ - _Scoped to a Single Bug._ One bug per report.
218
+
219
+ Please adhere to this project's [code of conduct](.github/CODE_OF_CONDUCT.md).
220
+
221
+ You can use
222
+ [markdownlint-cli](https://github.com/storm-software/cyclone-ui/markdownlint-cli)
223
+ to check for common markdown style inconsistency.
224
+
225
+ <div align="right">[ <a href="#table-of-contents">Back to top ▲</a> ]</div>
226
+ <br />
227
+
228
+ ## Contributors
229
+
230
+ Thanks goes to these wonderful people
231
+ ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
232
+
233
+ <!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
234
+
235
+ <table>
236
+ <tbody>
237
+ <tr>
238
+ <td align="center" valign="top" width="14.28%"><a href="https://patsullivan.org"><img src="https://avatars.githubusercontent.com/u/99053093?v=4?s=100" width="100px;" alt="Patrick Sullivan"/><br /><sub><b>Patrick Sullivan</b></sub></a><br /><a href="#design-sullivanpj" title="Design">🎨</a> <a href="https://github.com/storm-software/cyclone-ui/commits?author=sullivanpj" title="Code">💻</a> <a href="#tool-sullivanpj" title="Tools">🔧</a> <a href="https://github.com/storm-software/cyclone-ui/commits?author=sullivanpj" title="Documentation">📖</a> <a href="https://github.com/storm-software/cyclone-ui/commits?author=sullivanpj" title="Tests">⚠️</a></td>
239
+ <td align="center" valign="top" width="14.28%"><a href="https://tylerbenning.com/"><img src="https://avatars.githubusercontent.com/u/7265547?v=4?s=100" width="100px;" alt="Tyler Benning"/><br /><sub><b>Tyler Benning</b></sub></a><br /><a href="#design-tbenning" title="Design">🎨</a></td>
240
+ <td align="center" valign="top" width="14.28%"><a href="http://stormsoftware.com"><img src="https://avatars.githubusercontent.com/u/149802440?v=4?s=100" width="100px;" alt="Stormie"/><br /><sub><b>Stormie</b></sub></a><br /><a href="#maintenance-stormie-bot" title="Maintenance">🚧</a></td>
241
+ </tr>
242
+ </tbody>
243
+ <tfoot>
244
+ <tr>
245
+ <td align="center" size="13px" colspan="7">
246
+ <img src="https://raw.githubusercontent.com/all-contributors/all-contributors-cli/1b8533af435da9854653492b1327a23a4dbd0a10/assets/logo-small.svg" alt="All Contributors">
247
+ <a href="https://all-contributors.js.org/docs/en/bot/usage">Add your contributions</a>
248
+ </img>
249
+ </td>
250
+ </tr>
251
+ </tfoot>
252
+ </table>
253
+
254
+ <!-- ALL-CONTRIBUTORS-LIST:END -->
255
+
256
+ This project follows the
257
+ [all-contributors](https://github.com/all-contributors/all-contributors)
258
+ specification. Contributions of any kind welcome!
259
+
260
+ <div align="right">[ <a href="#table-of-contents">Back to top ▲</a> ]</div>
261
+ <br />
262
+
263
+ <hr />
264
+ <br />
265
+
266
+ <div align="center">
267
+ <img src="https://pub-761b436209f44a4d886487c917806c08.r2.dev/logo-banner.png" width="100%" alt="Storm Software" />
268
+ </div>
269
+ <br />
270
+
271
+ <div align="center">
272
+ <b>
273
+ <a href="https://stormsoftware.com" target="_blank">Website</a> • <a href="https://stormsoftware.com/contact" target="_blank">Contact</a> • <a href="https://discord.gg/MQ6YVzakM5">Discord</a> • <a href="https://linkedin.com/in/pat-sullivan-dev" target="_blank">LinkedIn</a> • <a href="https://medium.com/@pat.joseph.sullivan" target="_blank">Medium</a> • <a href="https://github.com/storm-software" target="_blank">GitHub</a> • <a href="https://keybase.io/sullivanp" target="_blank">OpenPGP Key</a>
274
+ </b>
275
+ </div>
276
+
277
+ <div align="center">
278
+ <b>Fingerprint:</b> 1BD2 7192 7770 2549 F4C9 F238 E6AD C420 DA5C 4C2D
279
+ </div>
280
+ <br />
281
+
282
+ Storm Software is an open source software development organization and creator
283
+ of Acidic, StormStack and StormCloud.
284
+
285
+ Our mission is to make software development more accessible. Our ideal future is
286
+ one where anyone can create software without years of prior development
287
+ experience serving as a barrier to entry. We hope to achieve this via LLMs,
288
+ Generative AI, and intuitive, high-level data modeling/programming languages.
289
+
290
+ If this sounds interesting, and you would like to help us in creating the next
291
+ generation of development tools, please reach out on our website!
292
+
293
+ <br />
294
+ ### 💻 Visit [stormsoftware.com](https://stormsoftware.com) to stay up to date with this developer
295
+
296
+ <br />
297
+ <div align="right">[ <a href="#table-of-contents">Back to top ▲</a> ]</div>
298
+ <br />
299
+
300
+
301
+ <!-- markdownlint-restore -->
302
+ <!-- prettier-ignore-end -->
303
+
304
+ <!-- END footer -->
@@ -0,0 +1,45 @@
1
+ # Installing Cyclone UI (Dark)
2
+
3
+ Generated by `@razorwind/shiki`.
4
+
5
+ ## Files
6
+
7
+ - `theme.json` — Cyclone Dark (theme id: `cyclone-dark`)
8
+
9
+ ## Setup
10
+
11
+ 1. Copy or import the generated JSON into your app (paths depend on your bundler).
12
+
13
+ 2. Register themes when creating a Shiki highlighter:
14
+
15
+ ```ts
16
+ import { createHighlighter } from "shiki";
17
+ import theme from "./theme.json";
18
+
19
+ const highlighter = await createHighlighter({
20
+ themes: [theme],
21
+ langs: ["javascript"]
22
+ });
23
+
24
+ const html = highlighter.codeToHtml("const x = 1", {
25
+ lang: "javascript",
26
+ theme: "cyclone-dark"
27
+ });
28
+ ```
29
+
30
+ Or load at runtime:
31
+
32
+ ```ts
33
+ import { readFile } from "node:fs/promises";
34
+
35
+ const theme = JSON.parse(
36
+ await readFile("./theme.json", "utf8")
37
+ );
38
+ await highlighter.loadTheme(theme);
39
+ ```
40
+
41
+ ## Select / load theme
42
+
43
+ Pass the theme id to `codeToHtml`, `codeToTokens`, or `getTokenStyle`:
44
+
45
+ - `cyclone-dark` — Cyclone Dark
@@ -0,0 +1,125 @@
1
+ {
2
+ "name": "cyclone-dark",
3
+ "settings": [
4
+ {
5
+ "scope": [
6
+ "comment",
7
+ "punctuation.definition.comment"
8
+ ],
9
+ "settings": {
10
+ "foreground": "#959698",
11
+ "fontStyle": "italic"
12
+ }
13
+ },
14
+ {
15
+ "scope": [
16
+ "string",
17
+ "constant.other.symbol"
18
+ ],
19
+ "settings": {
20
+ "foreground": "#45c791"
21
+ }
22
+ },
23
+ {
24
+ "scope": [
25
+ "constant",
26
+ "constant.numeric",
27
+ "constant.language"
28
+ ],
29
+ "settings": {
30
+ "foreground": "#f7ac23"
31
+ }
32
+ },
33
+ {
34
+ "scope": [
35
+ "keyword",
36
+ "storage",
37
+ "storage.type"
38
+ ],
39
+ "settings": {
40
+ "foreground": "#4d8eff"
41
+ }
42
+ },
43
+ {
44
+ "scope": [
45
+ "entity.name.function",
46
+ "support.function"
47
+ ],
48
+ "settings": {
49
+ "foreground": "#4d8eff"
50
+ }
51
+ },
52
+ {
53
+ "scope": [
54
+ "entity.name.type",
55
+ "entity.other.inherited-class",
56
+ "support.type"
57
+ ],
58
+ "settings": {
59
+ "foreground": "#9277da"
60
+ }
61
+ },
62
+ {
63
+ "scope": [
64
+ "entity.name.tag",
65
+ "meta.tag"
66
+ ],
67
+ "settings": {
68
+ "foreground": "#4d8eff"
69
+ }
70
+ },
71
+ {
72
+ "scope": [
73
+ "entity.other.attribute-name",
74
+ "support.constant"
75
+ ],
76
+ "settings": {
77
+ "foreground": "#4d8eff"
78
+ }
79
+ },
80
+ {
81
+ "scope": [
82
+ "variable",
83
+ "identifier"
84
+ ],
85
+ "settings": {
86
+ "foreground": "#cacacb"
87
+ }
88
+ },
89
+ {
90
+ "scope": [
91
+ "punctuation",
92
+ "meta.brace"
93
+ ],
94
+ "settings": {
95
+ "foreground": "#959698"
96
+ }
97
+ },
98
+ {
99
+ "scope": [
100
+ "invalid",
101
+ "invalid.illegal"
102
+ ],
103
+ "settings": {
104
+ "foreground": "#cf2d56"
105
+ }
106
+ }
107
+ ],
108
+ "displayName": "Cyclone Dark",
109
+ "type": "dark",
110
+ "fg": "#f1f1f1",
111
+ "bg": "#151518",
112
+ "colors": {
113
+ "editor.background": "#151518",
114
+ "editor.foreground": "#f1f1f1",
115
+ "editorCursor.foreground": "#4d8eff",
116
+ "editor.selectionBackground": "#f1f1f1",
117
+ "editor.selectionForeground": "#151518",
118
+ "editor.inactiveSelectionBackground": "#0c0c0d",
119
+ "editorLineNumber.foreground": "#959698",
120
+ "editorLineNumber.activeForeground": "#cacacb",
121
+ "editorIndentGuide.background1": "#46464a",
122
+ "editorIndentGuide.activeBackground1": "#959698",
123
+ "editorWhitespace.foreground": "#959698"
124
+ }
125
+ }
@@ -0,0 +1,45 @@
1
+ # Installing Cyclone UI (Dark Dimmed)
2
+
3
+ Generated by `@razorwind/shiki`.
4
+
5
+ ## Files
6
+
7
+ - `theme.json` — Cyclone Light (theme id: `cyclone-dark-dimmed`)
8
+
9
+ ## Setup
10
+
11
+ 1. Copy or import the generated JSON into your app (paths depend on your bundler).
12
+
13
+ 2. Register themes when creating a Shiki highlighter:
14
+
15
+ ```ts
16
+ import { createHighlighter } from "shiki";
17
+ import theme from "./theme.json";
18
+
19
+ const highlighter = await createHighlighter({
20
+ themes: [theme],
21
+ langs: ["javascript"]
22
+ });
23
+
24
+ const html = highlighter.codeToHtml("const x = 1", {
25
+ lang: "javascript",
26
+ theme: "cyclone-dark-dimmed"
27
+ });
28
+ ```
29
+
30
+ Or load at runtime:
31
+
32
+ ```ts
33
+ import { readFile } from "node:fs/promises";
34
+
35
+ const theme = JSON.parse(
36
+ await readFile("./theme.json", "utf8")
37
+ );
38
+ await highlighter.loadTheme(theme);
39
+ ```
40
+
41
+ ## Select / load theme
42
+
43
+ Pass the theme id to `codeToHtml`, `codeToTokens`, or `getTokenStyle`:
44
+
45
+ - `cyclone-dark-dimmed` — Cyclone Light
@@ -0,0 +1,125 @@
1
+ {
2
+ "name": "cyclone-dark-dimmed",
3
+ "settings": [
4
+ {
5
+ "scope": [
6
+ "comment",
7
+ "punctuation.definition.comment"
8
+ ],
9
+ "settings": {
10
+ "foreground": "#8f8f90",
11
+ "fontStyle": "italic"
12
+ }
13
+ },
14
+ {
15
+ "scope": [
16
+ "string",
17
+ "constant.other.symbol"
18
+ ],
19
+ "settings": {
20
+ "foreground": "#60a88a"
21
+ }
22
+ },
23
+ {
24
+ "scope": [
25
+ "constant",
26
+ "constant.numeric",
27
+ "constant.language"
28
+ ],
29
+ "settings": {
30
+ "foreground": "#c59b4d"
31
+ }
32
+ },
33
+ {
34
+ "scope": [
35
+ "keyword",
36
+ "storage",
37
+ "storage.type"
38
+ ],
39
+ "settings": {
40
+ "foreground": "#638cd2"
41
+ }
42
+ },
43
+ {
44
+ "scope": [
45
+ "entity.name.function",
46
+ "support.function"
47
+ ],
48
+ "settings": {
49
+ "foreground": "#638cd2"
50
+ }
51
+ },
52
+ {
53
+ "scope": [
54
+ "entity.name.type",
55
+ "entity.other.inherited-class",
56
+ "support.type"
57
+ ],
58
+ "settings": {
59
+ "foreground": "#8e7dbb"
60
+ }
61
+ },
62
+ {
63
+ "scope": [
64
+ "entity.name.tag",
65
+ "meta.tag"
66
+ ],
67
+ "settings": {
68
+ "foreground": "#638cd2"
69
+ }
70
+ },
71
+ {
72
+ "scope": [
73
+ "entity.other.attribute-name",
74
+ "support.constant"
75
+ ],
76
+ "settings": {
77
+ "foreground": "#638cd2"
78
+ }
79
+ },
80
+ {
81
+ "scope": [
82
+ "variable",
83
+ "identifier"
84
+ ],
85
+ "settings": {
86
+ "foreground": "#b4b4b4"
87
+ }
88
+ },
89
+ {
90
+ "scope": [
91
+ "punctuation",
92
+ "meta.brace"
93
+ ],
94
+ "settings": {
95
+ "foreground": "#8f8f90"
96
+ }
97
+ },
98
+ {
99
+ "scope": [
100
+ "invalid",
101
+ "invalid.illegal"
102
+ ],
103
+ "settings": {
104
+ "foreground": "#ab5268"
105
+ }
106
+ }
107
+ ],
108
+ "displayName": "Cyclone Light",
109
+ "type": "darkDimmed",
110
+ "fg": "#cfcfcf",
111
+ "bg": "#343438",
112
+ "colors": {
113
+ "editor.background": "#343438",
114
+ "editor.foreground": "#cfcfcf",
115
+ "editorCursor.foreground": "#638cd2",
116
+ "editor.selectionBackground": "#cfcfcf",
117
+ "editor.selectionForeground": "#343438",
118
+ "editor.inactiveSelectionBackground": "#2e2e30",
119
+ "editorLineNumber.foreground": "#8f8f90",
120
+ "editorLineNumber.activeForeground": "#b4b4b4",
121
+ "editorIndentGuide.background1": "#57575a",
122
+ "editorIndentGuide.activeBackground1": "#8f8f90",
123
+ "editorWhitespace.foreground": "#8f8f90"
124
+ }
125
+ }