@far-world-labs/verblets 0.1.1

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 (167) hide show
  1. package/.eslintrc.json +42 -0
  2. package/.husky/pre-commit +4 -0
  3. package/.release-it.json +9 -0
  4. package/.vite.config.examples.js +8 -0
  5. package/.vite.config.js +8 -0
  6. package/docker-compose.yml +7 -0
  7. package/docs/README.md +41 -0
  8. package/docs/babel.config.js +3 -0
  9. package/docs/blog/2019-05-28-first-blog-post.md +12 -0
  10. package/docs/blog/2019-05-29-long-blog-post.md +44 -0
  11. package/docs/blog/2021-08-01-mdx-blog-post.mdx +20 -0
  12. package/docs/blog/2021-08-26-welcome/docusaurus-plushie-banner.jpeg +0 -0
  13. package/docs/blog/2021-08-26-welcome/index.md +25 -0
  14. package/docs/blog/authors.yml +17 -0
  15. package/docs/docs/api/bool.md +74 -0
  16. package/docs/docs/api/search.md +51 -0
  17. package/docs/docs/intro.md +47 -0
  18. package/docs/docs/tutorial-basics/_category_.json +8 -0
  19. package/docs/docs/tutorial-basics/congratulations.md +23 -0
  20. package/docs/docs/tutorial-basics/create-a-blog-post.md +34 -0
  21. package/docs/docs/tutorial-basics/create-a-document.md +57 -0
  22. package/docs/docs/tutorial-basics/create-a-page.md +43 -0
  23. package/docs/docs/tutorial-basics/deploy-your-site.md +31 -0
  24. package/docs/docs/tutorial-basics/markdown-features.mdx +152 -0
  25. package/docs/docs/tutorial-extras/_category_.json +7 -0
  26. package/docs/docs/tutorial-extras/img/docsVersionDropdown.png +0 -0
  27. package/docs/docs/tutorial-extras/img/localeDropdown.png +0 -0
  28. package/docs/docs/tutorial-extras/manage-docs-versions.md +55 -0
  29. package/docs/docs/tutorial-extras/translate-your-site.md +88 -0
  30. package/docs/docusaurus.config.js +120 -0
  31. package/docs/package.json +44 -0
  32. package/docs/sidebars.js +31 -0
  33. package/docs/src/components/HomepageFeatures/index.js +61 -0
  34. package/docs/src/components/HomepageFeatures/styles.module.css +11 -0
  35. package/docs/src/css/custom.css +30 -0
  36. package/docs/src/pages/index.js +43 -0
  37. package/docs/src/pages/index.module.css +23 -0
  38. package/docs/src/pages/markdown-page.md +7 -0
  39. package/docs/static/.nojekyll +0 -0
  40. package/docs/static/img/docusaurus-social-card.jpg +0 -0
  41. package/docs/static/img/docusaurus.png +0 -0
  42. package/docs/static/img/favicon.ico +0 -0
  43. package/docs/static/img/logo.svg +1 -0
  44. package/docs/static/img/undraw_docusaurus_mountain.svg +171 -0
  45. package/docs/static/img/undraw_docusaurus_react.svg +170 -0
  46. package/docs/static/img/undraw_docusaurus_tree.svg +40 -0
  47. package/package.json +75 -0
  48. package/scripts/generate-chain/index.js +111 -0
  49. package/scripts/generate-lib/index.js +68 -0
  50. package/scripts/generate-test/index.js +111 -0
  51. package/scripts/generate-verblet/README.md +17 -0
  52. package/scripts/generate-verblet/index.js +110 -0
  53. package/scripts/run.sh +15 -0
  54. package/scripts/runner/index.js +30 -0
  55. package/scripts/simple-editor/README.md +34 -0
  56. package/scripts/simple-editor/index.js +68 -0
  57. package/scripts/summarize-files/index.js +46 -0
  58. package/src/chains/dismantle/dismantle.examples.js +0 -0
  59. package/src/chains/dismantle/index.examples.js +30 -0
  60. package/src/chains/dismantle/index.js +314 -0
  61. package/src/chains/dismantle/index.spec.js +33 -0
  62. package/src/chains/list/index.examples.js +72 -0
  63. package/src/chains/list/index.js +161 -0
  64. package/src/chains/list/index.spec.js +68 -0
  65. package/src/chains/list/schema.json +24 -0
  66. package/src/chains/questions/index.examples.js +68 -0
  67. package/src/chains/questions/index.js +136 -0
  68. package/src/chains/questions/index.spec.js +29 -0
  69. package/src/chains/scan-js/index.js +119 -0
  70. package/src/chains/sort/index.examples.js +40 -0
  71. package/src/chains/sort/index.js +113 -0
  72. package/src/chains/sort/index.spec.js +115 -0
  73. package/src/chains/summary-map/README.md +33 -0
  74. package/src/chains/summary-map/index.examples.js +57 -0
  75. package/src/chains/summary-map/index.js +208 -0
  76. package/src/chains/summary-map/index.spec.js +78 -0
  77. package/src/chains/test/index.js +118 -0
  78. package/src/chains/test-advice/index.js +36 -0
  79. package/src/constants/common.js +9 -0
  80. package/src/constants/messages.js +3 -0
  81. package/src/constants/openai.js +65 -0
  82. package/src/index.js +33 -0
  83. package/src/json-schemas/cars-test.json +11 -0
  84. package/src/json-schemas/index.js +18 -0
  85. package/src/json-schemas/intent.json +38 -0
  86. package/src/json-schemas/schema-dot-org-photograph.json +127 -0
  87. package/src/json-schemas/schema-dot-org-place.json +56 -0
  88. package/src/lib/any-signal/index.js +28 -0
  89. package/src/lib/chatgpt/index.js +143 -0
  90. package/src/lib/editor/index.js +31 -0
  91. package/src/lib/parse-js-parts/index.js +333 -0
  92. package/src/lib/parse-js-parts/index.spec.js +156 -0
  93. package/src/lib/path-aliases/index.js +39 -0
  94. package/src/lib/path-aliases/index.spec.js +70 -0
  95. package/src/lib/pave/index.js +34 -0
  96. package/src/lib/pave/index.spec.js +73 -0
  97. package/src/lib/prompt-cache/index.js +46 -0
  98. package/src/lib/retry/index.js +63 -0
  99. package/src/lib/retry/index.spec.js +86 -0
  100. package/src/lib/search-best-first/index.js +66 -0
  101. package/src/lib/search-js-files/code-features-property-definitions.json +123 -0
  102. package/src/lib/search-js-files/index.examples.js +22 -0
  103. package/src/lib/search-js-files/index.js +158 -0
  104. package/src/lib/search-js-files/index.spec.js +34 -0
  105. package/src/lib/search-js-files/scan-file.js +253 -0
  106. package/src/lib/shorten-text/index.js +30 -0
  107. package/src/lib/shorten-text/index.spec.js +68 -0
  108. package/src/lib/strip-numeric/index.js +5 -0
  109. package/src/lib/strip-response/index.js +35 -0
  110. package/src/lib/timed-abort-controller/index.js +41 -0
  111. package/src/lib/to-bool/index.js +8 -0
  112. package/src/lib/to-enum/index.js +14 -0
  113. package/src/lib/to-number/index.js +12 -0
  114. package/src/lib/to-number-with-units/index.js +51 -0
  115. package/src/lib/transcribe/index.js +61 -0
  116. package/src/prompts/README.md +15 -0
  117. package/src/prompts/as-enum.js +5 -0
  118. package/src/prompts/as-json-schema.js +9 -0
  119. package/src/prompts/as-object-with-schema.js +31 -0
  120. package/src/prompts/as-schema-org-text.js +17 -0
  121. package/src/prompts/as-schema-org-type.js +1 -0
  122. package/src/prompts/blog-post.js +7 -0
  123. package/src/prompts/code-features.js +28 -0
  124. package/src/prompts/constants.js +101 -0
  125. package/src/prompts/features-json-schema.js +27 -0
  126. package/src/prompts/generate-collection.js +26 -0
  127. package/src/prompts/generate-list.js +48 -0
  128. package/src/prompts/generate-questions.js +19 -0
  129. package/src/prompts/index.js +20 -0
  130. package/src/prompts/intent.js +66 -0
  131. package/src/prompts/output-succinct-names.js +3 -0
  132. package/src/prompts/select-from-threshold.js +18 -0
  133. package/src/prompts/sort.js +35 -0
  134. package/src/prompts/style.js +41 -0
  135. package/src/prompts/summarize.js +13 -0
  136. package/src/prompts/token-budget.js +3 -0
  137. package/src/prompts/wrap-list.js +14 -0
  138. package/src/prompts/wrap-variable.js +36 -0
  139. package/src/services/llm-model/index.js +114 -0
  140. package/src/services/llm-model/model.js +21 -0
  141. package/src/services/redis/index.js +84 -0
  142. package/src/verblets/auto/index.examples.js +28 -0
  143. package/src/verblets/auto/index.js +28 -0
  144. package/src/verblets/auto/index.spec.js +34 -0
  145. package/src/verblets/bool/index.examples.js +28 -0
  146. package/src/verblets/bool/index.js +28 -0
  147. package/src/verblets/bool/index.schema.json +14 -0
  148. package/src/verblets/bool/index.spec.js +35 -0
  149. package/src/verblets/enum/index.examples.js +33 -0
  150. package/src/verblets/enum/index.js +15 -0
  151. package/src/verblets/enum/index.spec.js +35 -0
  152. package/src/verblets/intent/index.examples.js +51 -0
  153. package/src/verblets/intent/index.js +72 -0
  154. package/src/verblets/intent/index.spec.js +31 -0
  155. package/src/verblets/number/index.examples.js +33 -0
  156. package/src/verblets/number/index.js +22 -0
  157. package/src/verblets/number/index.spec.js +35 -0
  158. package/src/verblets/number-with-units/index.examples.js +34 -0
  159. package/src/verblets/number-with-units/index.js +19 -0
  160. package/src/verblets/number-with-units/index.spec.js +46 -0
  161. package/src/verblets/schema-org/index.examples.js +56 -0
  162. package/src/verblets/schema-org/index.js +8 -0
  163. package/src/verblets/schema-org/index.spec.js +39 -0
  164. package/src/verblets/to-object/README.md +38 -0
  165. package/src/verblets/to-object/index.examples.js +29 -0
  166. package/src/verblets/to-object/index.js +136 -0
  167. package/src/verblets/to-object/index.spec.js +74 -0
@@ -0,0 +1,152 @@
1
+ ---
2
+ sidebar_position: 4
3
+ ---
4
+
5
+ # Markdown Features
6
+
7
+ Docusaurus supports **[Markdown](https://daringfireball.net/projects/markdown/syntax)** and a few **additional features**.
8
+
9
+ ## Front Matter
10
+
11
+ Markdown documents have metadata at the top called [Front Matter](https://jekyllrb.com/docs/front-matter/):
12
+
13
+ ```text title="my-doc.md"
14
+ // highlight-start
15
+ ---
16
+ id: my-doc-id
17
+ title: My document title
18
+ description: My document description
19
+ slug: /my-custom-url
20
+ ---
21
+ // highlight-end
22
+
23
+ ## Markdown heading
24
+
25
+ Markdown text with [links](./hello.md)
26
+ ```
27
+
28
+ ## Links
29
+
30
+ Regular Markdown links are supported, using url paths or relative file paths.
31
+
32
+ ```md
33
+ Let's see how to [Create a page](/create-a-page).
34
+ ```
35
+
36
+ ```md
37
+ Let's see how to [Create a page](./create-a-page.md).
38
+ ```
39
+
40
+ **Result:** Let's see how to [Create a page](./create-a-page.md).
41
+
42
+ ## Images
43
+
44
+ Regular Markdown images are supported.
45
+
46
+ You can use absolute paths to reference images in the static directory (`static/img/docusaurus.png`):
47
+
48
+ ```md
49
+ ![Docusaurus logo](/img/docusaurus.png)
50
+ ```
51
+
52
+ ![Docusaurus logo](/img/docusaurus.png)
53
+
54
+ You can reference images relative to the current file as well. This is particularly useful to colocate images close to the Markdown files using them:
55
+
56
+ ```md
57
+ ![Docusaurus logo](./img/docusaurus.png)
58
+ ```
59
+
60
+ ## Code Blocks
61
+
62
+ Markdown code blocks are supported with Syntax highlighting.
63
+
64
+ ````md
65
+ ```jsx title="src/components/HelloDocusaurus.js"
66
+ function HelloDocusaurus() {
67
+ return <h1>Hello, Docusaurus!</h1>;
68
+ }
69
+ ```
70
+ ````
71
+
72
+ ```jsx title="src/components/HelloDocusaurus.js"
73
+ function HelloDocusaurus() {
74
+ return <h1>Hello, Docusaurus!</h1>;
75
+ }
76
+ ```
77
+
78
+ ## Admonitions
79
+
80
+ Docusaurus has a special syntax to create admonitions and callouts:
81
+
82
+ ```md
83
+ :::tip My tip
84
+
85
+ Use this awesome feature option
86
+
87
+ :::
88
+
89
+ :::danger Take care
90
+
91
+ This action is dangerous
92
+
93
+ :::
94
+ ```
95
+
96
+ :::tip My tip
97
+
98
+ Use this awesome feature option
99
+
100
+ :::
101
+
102
+ :::danger Take care
103
+
104
+ This action is dangerous
105
+
106
+ :::
107
+
108
+ ## MDX and React Components
109
+
110
+ [MDX](https://mdxjs.com/) can make your documentation more **interactive** and allows using any **React components inside Markdown**:
111
+
112
+ ```jsx
113
+ export const Highlight = ({children, color}) => (
114
+ <span
115
+ style={{
116
+ backgroundColor: color,
117
+ borderRadius: '20px',
118
+ color: '#fff',
119
+ padding: '10px',
120
+ cursor: 'pointer',
121
+ }}
122
+ onClick={() => {
123
+ alert(`You clicked the color ${color} with label ${children}`)
124
+ }}>
125
+ {children}
126
+ </span>
127
+ );
128
+
129
+ This is <Highlight color="#25c2a0">Docusaurus green</Highlight> !
130
+
131
+ This is <Highlight color="#1877F2">Facebook blue</Highlight> !
132
+ ```
133
+
134
+ export const Highlight = ({children, color}) => (
135
+ <span
136
+ style={{
137
+ backgroundColor: color,
138
+ borderRadius: '20px',
139
+ color: '#fff',
140
+ padding: '10px',
141
+ cursor: 'pointer',
142
+ }}
143
+ onClick={() => {
144
+ alert(`You clicked the color ${color} with label ${children}`);
145
+ }}>
146
+ {children}
147
+ </span>
148
+ );
149
+
150
+ This is <Highlight color="#25c2a0">Docusaurus green</Highlight> !
151
+
152
+ This is <Highlight color="#1877F2">Facebook blue</Highlight> !
@@ -0,0 +1,7 @@
1
+ {
2
+ "label": "Tutorial - Extras",
3
+ "position": 3,
4
+ "link": {
5
+ "type": "generated-index"
6
+ }
7
+ }
@@ -0,0 +1,55 @@
1
+ ---
2
+ sidebar_position: 1
3
+ ---
4
+
5
+ # Manage Docs Versions
6
+
7
+ Docusaurus can manage multiple versions of your docs.
8
+
9
+ ## Create a docs version
10
+
11
+ Release a version 1.0 of your project:
12
+
13
+ ```bash
14
+ npm run docusaurus docs:version 1.0
15
+ ```
16
+
17
+ The `docs` folder is copied into `versioned_docs/version-1.0` and `versions.json` is created.
18
+
19
+ Your docs now have 2 versions:
20
+
21
+ - `1.0` at `http://localhost:3000/docs/` for the version 1.0 docs
22
+ - `current` at `http://localhost:3000/docs/next/` for the **upcoming, unreleased docs**
23
+
24
+ ## Add a Version Dropdown
25
+
26
+ To navigate seamlessly across versions, add a version dropdown.
27
+
28
+ Modify the `docusaurus.config.js` file:
29
+
30
+ ```js title="docusaurus.config.js"
31
+ export default {
32
+ themeConfig: {
33
+ navbar: {
34
+ items: [
35
+ // highlight-start
36
+ {
37
+ type: 'docsVersionDropdown',
38
+ },
39
+ // highlight-end
40
+ ],
41
+ },
42
+ },
43
+ };
44
+ ```
45
+
46
+ The docs version dropdown appears in your navbar:
47
+
48
+ ![Docs Version Dropdown](./img/docsVersionDropdown.png)
49
+
50
+ ## Update an existing version
51
+
52
+ It is possible to edit versioned docs in their respective folder:
53
+
54
+ - `versioned_docs/version-1.0/hello.md` updates `http://localhost:3000/docs/hello`
55
+ - `docs/hello.md` updates `http://localhost:3000/docs/next/hello`
@@ -0,0 +1,88 @@
1
+ ---
2
+ sidebar_position: 2
3
+ ---
4
+
5
+ # Translate your site
6
+
7
+ Let's translate `docs/intro.md` to French.
8
+
9
+ ## Configure i18n
10
+
11
+ Modify `docusaurus.config.js` to add support for the `fr` locale:
12
+
13
+ ```js title="docusaurus.config.js"
14
+ export default {
15
+ i18n: {
16
+ defaultLocale: 'en',
17
+ locales: ['en', 'fr'],
18
+ },
19
+ };
20
+ ```
21
+
22
+ ## Translate a doc
23
+
24
+ Copy the `docs/intro.md` file to the `i18n/fr` folder:
25
+
26
+ ```bash
27
+ mkdir -p i18n/fr/docusaurus-plugin-content-docs/current/
28
+
29
+ cp docs/intro.md i18n/fr/docusaurus-plugin-content-docs/current/intro.md
30
+ ```
31
+
32
+ Translate `i18n/fr/docusaurus-plugin-content-docs/current/intro.md` in French.
33
+
34
+ ## Start your localized site
35
+
36
+ Start your site on the French locale:
37
+
38
+ ```bash
39
+ npm run start -- --locale fr
40
+ ```
41
+
42
+ Your localized site is accessible at [http://localhost:3000/fr/](http://localhost:3000/fr/) and the `Getting Started` page is translated.
43
+
44
+ :::caution
45
+
46
+ In development, you can only use one locale at a time.
47
+
48
+ :::
49
+
50
+ ## Add a Locale Dropdown
51
+
52
+ To navigate seamlessly across languages, add a locale dropdown.
53
+
54
+ Modify the `docusaurus.config.js` file:
55
+
56
+ ```js title="docusaurus.config.js"
57
+ export default {
58
+ themeConfig: {
59
+ navbar: {
60
+ items: [
61
+ // highlight-start
62
+ {
63
+ type: 'localeDropdown',
64
+ },
65
+ // highlight-end
66
+ ],
67
+ },
68
+ },
69
+ };
70
+ ```
71
+
72
+ The locale dropdown now appears in your navbar:
73
+
74
+ ![Locale Dropdown](./img/localeDropdown.png)
75
+
76
+ ## Build your localized site
77
+
78
+ Build your site for a specific locale:
79
+
80
+ ```bash
81
+ npm run build -- --locale fr
82
+ ```
83
+
84
+ Or build your site to include all the locales at once:
85
+
86
+ ```bash
87
+ npm run build
88
+ ```
@@ -0,0 +1,120 @@
1
+ // @ts-check
2
+ // `@type` JSDoc annotations allow editor autocompletion and type checking
3
+ // (when paired with `@ts-check`).
4
+ // There are various equivalent ways to declare your Docusaurus config.
5
+ // See: https://docusaurus.io/docs/api/docusaurus-config
6
+
7
+ import {themes as prismThemes} from 'prism-react-renderer';
8
+
9
+ /** @type {import('@docusaurus/types').Config} */
10
+ const config = {
11
+ title: 'Verblets',
12
+ tagline: 'Generative AI behaviors for JavaScript.',
13
+ favicon: 'img/favicon.ico',
14
+
15
+ // Set the production url of your site here
16
+ url: 'https://your-docusaurus-site.example.com',
17
+ // Set the /<baseUrl>/ pathname under which your site is served
18
+ // For GitHub pages deployment, it is often '/<projectName>/'
19
+ baseUrl: '/',
20
+
21
+ // GitHub pages deployment config.
22
+ // If you aren't using GitHub pages, you don't need these.
23
+ organizationName: 'facebook', // Usually your GitHub org/user name.
24
+ projectName: 'docusaurus', // Usually your repo name.
25
+
26
+ onBrokenLinks: 'throw',
27
+ onBrokenMarkdownLinks: 'warn',
28
+
29
+ // Even if you don't use internationalization, you can use this field to set
30
+ // useful metadata like html lang. For example, if your site is Chinese, you
31
+ // may want to replace "en" with "zh-Hans".
32
+ i18n: {
33
+ defaultLocale: 'en',
34
+ locales: ['en'],
35
+ },
36
+
37
+ presets: [
38
+ [
39
+ 'classic',
40
+ /** @type {import('@docusaurus/preset-classic').Options} */
41
+ ({
42
+ docs: {
43
+ sidebarPath: './sidebars.js',
44
+ // Please change this to your repo.
45
+ // Remove this to remove the "edit this page" links.
46
+ editUrl:
47
+ 'https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/',
48
+ },
49
+ blog: {
50
+ showReadingTime: true,
51
+ // Please change this to your repo.
52
+ // Remove this to remove the "edit this page" links.
53
+ editUrl:
54
+ 'https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/',
55
+ },
56
+ theme: {
57
+ customCss: './src/css/custom.css',
58
+ },
59
+ }),
60
+ ],
61
+ ],
62
+
63
+ themeConfig:
64
+ /** @type {import('@docusaurus/preset-classic').ThemeConfig} */
65
+ ({
66
+ // Replace with your project's social card
67
+ image: 'img/docusaurus-social-card.jpg',
68
+ navbar: {
69
+ title: 'Verblets',
70
+ logo: {
71
+ alt: 'Verblets Logo',
72
+ src: 'img/logo.svg',
73
+ },
74
+ items: [
75
+ {
76
+ type: 'docSidebar',
77
+ sidebarId: 'tutorialSidebar',
78
+ position: 'left',
79
+ label: 'Tutorial',
80
+ },
81
+ {to: '/docs/blog', label: 'Blog', position: 'left'},
82
+ {
83
+ href: 'https://github.com/Far-World-Labs/Verblets',
84
+ label: 'GitHub',
85
+ position: 'right',
86
+ },
87
+ ],
88
+ },
89
+ footer: {
90
+ style: 'dark',
91
+ links: [
92
+ {
93
+ title: 'Docs',
94
+ items: [
95
+ {
96
+ label: 'Tutorial',
97
+ to: '/docs/intro',
98
+ },
99
+ ],
100
+ },
101
+ {
102
+ title: 'More',
103
+ items: [
104
+ {
105
+ label: 'GitHub',
106
+ href: 'https://github.com/Far-World-Labs/Verblets',
107
+ },
108
+ ],
109
+ },
110
+ ],
111
+ copyright: `Copyright © ${new Date().getFullYear()} Far World Labs LLC. Built with Docusaurus.`,
112
+ },
113
+ prism: {
114
+ theme: prismThemes.github,
115
+ darkTheme: prismThemes.dracula,
116
+ },
117
+ }),
118
+ };
119
+
120
+ export default config;
@@ -0,0 +1,44 @@
1
+ {
2
+ "name": "docs",
3
+ "version": "0.0.0",
4
+ "private": true,
5
+ "scripts": {
6
+ "docusaurus": "docusaurus",
7
+ "start": "docusaurus start",
8
+ "build": "docusaurus build",
9
+ "swizzle": "docusaurus swizzle",
10
+ "deploy": "docusaurus deploy",
11
+ "clear": "docusaurus clear",
12
+ "serve": "docusaurus serve",
13
+ "write-translations": "docusaurus write-translations",
14
+ "write-heading-ids": "docusaurus write-heading-ids"
15
+ },
16
+ "dependencies": {
17
+ "@docusaurus/core": "3.1.0",
18
+ "@docusaurus/preset-classic": "3.1.0",
19
+ "@mdx-js/react": "^3.0.0",
20
+ "clsx": "^2.0.0",
21
+ "prism-react-renderer": "^2.3.0",
22
+ "react": "^18.0.0",
23
+ "react-dom": "^18.0.0"
24
+ },
25
+ "devDependencies": {
26
+ "@docusaurus/module-type-aliases": "3.1.0",
27
+ "@docusaurus/types": "3.1.0"
28
+ },
29
+ "browserslist": {
30
+ "production": [
31
+ ">0.5%",
32
+ "not dead",
33
+ "not op_mini all"
34
+ ],
35
+ "development": [
36
+ "last 3 chrome version",
37
+ "last 3 firefox version",
38
+ "last 5 safari version"
39
+ ]
40
+ },
41
+ "engines": {
42
+ "node": ">=18.0"
43
+ }
44
+ }
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Creating a sidebar enables you to:
3
+ - create an ordered group of docs
4
+ - render a sidebar for each doc of that group
5
+ - provide next/previous navigation
6
+
7
+ The sidebars can be generated from the filesystem, or explicitly defined here.
8
+
9
+ Create as many sidebars as you want.
10
+ */
11
+
12
+ // @ts-check
13
+
14
+ /** @type {import('@docusaurus/plugin-content-docs').SidebarsConfig} */
15
+ const sidebars = {
16
+ // By default, Docusaurus generates a sidebar from the docs folder structure
17
+ tutorialSidebar: [{type: 'autogenerated', dirName: '.'}],
18
+
19
+ // But you can create a sidebar manually
20
+ // tutorialSidebar: [
21
+ // 'intro',
22
+ // 'hello',
23
+ // {
24
+ // type: 'category',
25
+ // label: 'Tutorial',
26
+ // items: ['tutorial-basics/create-a-document'],
27
+ // },
28
+ // ],
29
+ };
30
+
31
+ export default sidebars;
@@ -0,0 +1,61 @@
1
+ import clsx from 'clsx';
2
+ import Heading from '@theme/Heading';
3
+ import styles from './styles.module.css';
4
+
5
+ const FeatureList = [
6
+ {
7
+ title: 'Comprehensive Functionality',
8
+ Svg: require('@site/static/img/undraw_docusaurus_mountain.svg').default,
9
+ description: (
10
+ <>
11
+ A collection of chains and verblets, catering to diverse applications.
12
+ </>
13
+ ),
14
+ },
15
+ {
16
+ title: 'Modular Design',
17
+ Svg: require('@site/static/img/undraw_docusaurus_tree.svg').default,
18
+ description: (
19
+ <>
20
+ Easily mix and match chains and verblets to suit specific needs, built to integrate closely with JavaScript language features.
21
+ </>
22
+ ),
23
+ },
24
+ {
25
+ title: 'Augment Your Applications',
26
+ Svg: require('@site/static/img/undraw_docusaurus_react.svg').default,
27
+ description: (
28
+ <>
29
+ Extend or customize your applications with powerful behaviors.
30
+ </>
31
+ ),
32
+ },
33
+ ];
34
+
35
+ function Feature({Svg, title, description}) {
36
+ return (
37
+ <div className={clsx('col col--4')}>
38
+ <div className="text--center">
39
+ <Svg className={styles.featureSvg} role="img" />
40
+ </div>
41
+ <div className="text--center padding-horiz--md">
42
+ <Heading as="h3">{title}</Heading>
43
+ <p>{description}</p>
44
+ </div>
45
+ </div>
46
+ );
47
+ }
48
+
49
+ export default function HomepageFeatures() {
50
+ return (
51
+ <section className={styles.features}>
52
+ <div className="container">
53
+ <div className="row">
54
+ {FeatureList.map((props, idx) => (
55
+ <Feature key={idx} {...props} />
56
+ ))}
57
+ </div>
58
+ </div>
59
+ </section>
60
+ );
61
+ }
@@ -0,0 +1,11 @@
1
+ .features {
2
+ display: flex;
3
+ align-items: center;
4
+ padding: 2rem 0;
5
+ width: 100%;
6
+ }
7
+
8
+ .featureSvg {
9
+ height: 200px;
10
+ width: 200px;
11
+ }
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Any CSS included here will be global. The classic template
3
+ * bundles Infima by default. Infima is a CSS framework designed to
4
+ * work well for content-centric websites.
5
+ */
6
+
7
+ /* You can override the default Infima variables here. */
8
+ :root {
9
+ --ifm-color-primary: #2e8555;
10
+ --ifm-color-primary-dark: #29784c;
11
+ --ifm-color-primary-darker: #277148;
12
+ --ifm-color-primary-darkest: #205d3b;
13
+ --ifm-color-primary-light: #33925d;
14
+ --ifm-color-primary-lighter: #359962;
15
+ --ifm-color-primary-lightest: #3cad6e;
16
+ --ifm-code-font-size: 95%;
17
+ --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.1);
18
+ }
19
+
20
+ /* For readability concerns, you should choose a lighter palette in dark mode. */
21
+ [data-theme='dark'] {
22
+ --ifm-color-primary: #25c2a0;
23
+ --ifm-color-primary-dark: #21af90;
24
+ --ifm-color-primary-darker: #1fa588;
25
+ --ifm-color-primary-darkest: #1a8870;
26
+ --ifm-color-primary-light: #29d5b0;
27
+ --ifm-color-primary-lighter: #32d8b4;
28
+ --ifm-color-primary-lightest: #4fddbf;
29
+ --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.3);
30
+ }
@@ -0,0 +1,43 @@
1
+ import clsx from 'clsx';
2
+ import Link from '@docusaurus/Link';
3
+ import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
4
+ import Layout from '@theme/Layout';
5
+ import HomepageFeatures from '@site/src/components/HomepageFeatures';
6
+
7
+ import Heading from '@theme/Heading';
8
+ import styles from './index.module.css';
9
+
10
+ function HomepageHeader() {
11
+ const {siteConfig} = useDocusaurusContext();
12
+ return (
13
+ <header className={clsx('hero hero--primary', styles.heroBanner)}>
14
+ <div className="container">
15
+ <Heading as="h1" className="hero__title">
16
+ {siteConfig.title}
17
+ </Heading>
18
+ <p className="hero__subtitle">{siteConfig.tagline}</p>
19
+ <div className={styles.buttons}>
20
+ <Link
21
+ className="button button--secondary button--lg"
22
+ to="/docs/intro">
23
+ Get Started
24
+ </Link>
25
+ </div>
26
+ </div>
27
+ </header>
28
+ );
29
+ }
30
+
31
+ export default function Home() {
32
+ const {siteConfig} = useDocusaurusContext();
33
+ return (
34
+ <Layout
35
+ title={`Hello from ${siteConfig.title}`}
36
+ description="Description will go into a meta tag in <head />">
37
+ <HomepageHeader />
38
+ <main>
39
+ <HomepageFeatures />
40
+ </main>
41
+ </Layout>
42
+ );
43
+ }
@@ -0,0 +1,23 @@
1
+ /**
2
+ * CSS files with the .module.css suffix will be treated as CSS modules
3
+ * and scoped locally.
4
+ */
5
+
6
+ .heroBanner {
7
+ padding: 4rem 0;
8
+ text-align: center;
9
+ position: relative;
10
+ overflow: hidden;
11
+ }
12
+
13
+ @media screen and (max-width: 996px) {
14
+ .heroBanner {
15
+ padding: 2rem;
16
+ }
17
+ }
18
+
19
+ .buttons {
20
+ display: flex;
21
+ align-items: center;
22
+ justify-content: center;
23
+ }
@@ -0,0 +1,7 @@
1
+ ---
2
+ title: Markdown page example
3
+ ---
4
+
5
+ # Markdown page example
6
+
7
+ You don't need React to write simple standalone pages.
File without changes
Binary file
Binary file