@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.
- package/.eslintrc.json +42 -0
- package/.husky/pre-commit +4 -0
- package/.release-it.json +9 -0
- package/.vite.config.examples.js +8 -0
- package/.vite.config.js +8 -0
- package/docker-compose.yml +7 -0
- package/docs/README.md +41 -0
- package/docs/babel.config.js +3 -0
- package/docs/blog/2019-05-28-first-blog-post.md +12 -0
- package/docs/blog/2019-05-29-long-blog-post.md +44 -0
- package/docs/blog/2021-08-01-mdx-blog-post.mdx +20 -0
- package/docs/blog/2021-08-26-welcome/docusaurus-plushie-banner.jpeg +0 -0
- package/docs/blog/2021-08-26-welcome/index.md +25 -0
- package/docs/blog/authors.yml +17 -0
- package/docs/docs/api/bool.md +74 -0
- package/docs/docs/api/search.md +51 -0
- package/docs/docs/intro.md +47 -0
- package/docs/docs/tutorial-basics/_category_.json +8 -0
- package/docs/docs/tutorial-basics/congratulations.md +23 -0
- package/docs/docs/tutorial-basics/create-a-blog-post.md +34 -0
- package/docs/docs/tutorial-basics/create-a-document.md +57 -0
- package/docs/docs/tutorial-basics/create-a-page.md +43 -0
- package/docs/docs/tutorial-basics/deploy-your-site.md +31 -0
- package/docs/docs/tutorial-basics/markdown-features.mdx +152 -0
- package/docs/docs/tutorial-extras/_category_.json +7 -0
- package/docs/docs/tutorial-extras/img/docsVersionDropdown.png +0 -0
- package/docs/docs/tutorial-extras/img/localeDropdown.png +0 -0
- package/docs/docs/tutorial-extras/manage-docs-versions.md +55 -0
- package/docs/docs/tutorial-extras/translate-your-site.md +88 -0
- package/docs/docusaurus.config.js +120 -0
- package/docs/package.json +44 -0
- package/docs/sidebars.js +31 -0
- package/docs/src/components/HomepageFeatures/index.js +61 -0
- package/docs/src/components/HomepageFeatures/styles.module.css +11 -0
- package/docs/src/css/custom.css +30 -0
- package/docs/src/pages/index.js +43 -0
- package/docs/src/pages/index.module.css +23 -0
- package/docs/src/pages/markdown-page.md +7 -0
- package/docs/static/.nojekyll +0 -0
- package/docs/static/img/docusaurus-social-card.jpg +0 -0
- package/docs/static/img/docusaurus.png +0 -0
- package/docs/static/img/favicon.ico +0 -0
- package/docs/static/img/logo.svg +1 -0
- package/docs/static/img/undraw_docusaurus_mountain.svg +171 -0
- package/docs/static/img/undraw_docusaurus_react.svg +170 -0
- package/docs/static/img/undraw_docusaurus_tree.svg +40 -0
- package/package.json +75 -0
- package/scripts/generate-chain/index.js +111 -0
- package/scripts/generate-lib/index.js +68 -0
- package/scripts/generate-test/index.js +111 -0
- package/scripts/generate-verblet/README.md +17 -0
- package/scripts/generate-verblet/index.js +110 -0
- package/scripts/run.sh +15 -0
- package/scripts/runner/index.js +30 -0
- package/scripts/simple-editor/README.md +34 -0
- package/scripts/simple-editor/index.js +68 -0
- package/scripts/summarize-files/index.js +46 -0
- package/src/chains/dismantle/dismantle.examples.js +0 -0
- package/src/chains/dismantle/index.examples.js +30 -0
- package/src/chains/dismantle/index.js +314 -0
- package/src/chains/dismantle/index.spec.js +33 -0
- package/src/chains/list/index.examples.js +72 -0
- package/src/chains/list/index.js +161 -0
- package/src/chains/list/index.spec.js +68 -0
- package/src/chains/list/schema.json +24 -0
- package/src/chains/questions/index.examples.js +68 -0
- package/src/chains/questions/index.js +136 -0
- package/src/chains/questions/index.spec.js +29 -0
- package/src/chains/scan-js/index.js +119 -0
- package/src/chains/sort/index.examples.js +40 -0
- package/src/chains/sort/index.js +113 -0
- package/src/chains/sort/index.spec.js +115 -0
- package/src/chains/summary-map/README.md +33 -0
- package/src/chains/summary-map/index.examples.js +57 -0
- package/src/chains/summary-map/index.js +208 -0
- package/src/chains/summary-map/index.spec.js +78 -0
- package/src/chains/test/index.js +118 -0
- package/src/chains/test-advice/index.js +36 -0
- package/src/constants/common.js +9 -0
- package/src/constants/messages.js +3 -0
- package/src/constants/openai.js +65 -0
- package/src/index.js +33 -0
- package/src/json-schemas/cars-test.json +11 -0
- package/src/json-schemas/index.js +18 -0
- package/src/json-schemas/intent.json +38 -0
- package/src/json-schemas/schema-dot-org-photograph.json +127 -0
- package/src/json-schemas/schema-dot-org-place.json +56 -0
- package/src/lib/any-signal/index.js +28 -0
- package/src/lib/chatgpt/index.js +143 -0
- package/src/lib/editor/index.js +31 -0
- package/src/lib/parse-js-parts/index.js +333 -0
- package/src/lib/parse-js-parts/index.spec.js +156 -0
- package/src/lib/path-aliases/index.js +39 -0
- package/src/lib/path-aliases/index.spec.js +70 -0
- package/src/lib/pave/index.js +34 -0
- package/src/lib/pave/index.spec.js +73 -0
- package/src/lib/prompt-cache/index.js +46 -0
- package/src/lib/retry/index.js +63 -0
- package/src/lib/retry/index.spec.js +86 -0
- package/src/lib/search-best-first/index.js +66 -0
- package/src/lib/search-js-files/code-features-property-definitions.json +123 -0
- package/src/lib/search-js-files/index.examples.js +22 -0
- package/src/lib/search-js-files/index.js +158 -0
- package/src/lib/search-js-files/index.spec.js +34 -0
- package/src/lib/search-js-files/scan-file.js +253 -0
- package/src/lib/shorten-text/index.js +30 -0
- package/src/lib/shorten-text/index.spec.js +68 -0
- package/src/lib/strip-numeric/index.js +5 -0
- package/src/lib/strip-response/index.js +35 -0
- package/src/lib/timed-abort-controller/index.js +41 -0
- package/src/lib/to-bool/index.js +8 -0
- package/src/lib/to-enum/index.js +14 -0
- package/src/lib/to-number/index.js +12 -0
- package/src/lib/to-number-with-units/index.js +51 -0
- package/src/lib/transcribe/index.js +61 -0
- package/src/prompts/README.md +15 -0
- package/src/prompts/as-enum.js +5 -0
- package/src/prompts/as-json-schema.js +9 -0
- package/src/prompts/as-object-with-schema.js +31 -0
- package/src/prompts/as-schema-org-text.js +17 -0
- package/src/prompts/as-schema-org-type.js +1 -0
- package/src/prompts/blog-post.js +7 -0
- package/src/prompts/code-features.js +28 -0
- package/src/prompts/constants.js +101 -0
- package/src/prompts/features-json-schema.js +27 -0
- package/src/prompts/generate-collection.js +26 -0
- package/src/prompts/generate-list.js +48 -0
- package/src/prompts/generate-questions.js +19 -0
- package/src/prompts/index.js +20 -0
- package/src/prompts/intent.js +66 -0
- package/src/prompts/output-succinct-names.js +3 -0
- package/src/prompts/select-from-threshold.js +18 -0
- package/src/prompts/sort.js +35 -0
- package/src/prompts/style.js +41 -0
- package/src/prompts/summarize.js +13 -0
- package/src/prompts/token-budget.js +3 -0
- package/src/prompts/wrap-list.js +14 -0
- package/src/prompts/wrap-variable.js +36 -0
- package/src/services/llm-model/index.js +114 -0
- package/src/services/llm-model/model.js +21 -0
- package/src/services/redis/index.js +84 -0
- package/src/verblets/auto/index.examples.js +28 -0
- package/src/verblets/auto/index.js +28 -0
- package/src/verblets/auto/index.spec.js +34 -0
- package/src/verblets/bool/index.examples.js +28 -0
- package/src/verblets/bool/index.js +28 -0
- package/src/verblets/bool/index.schema.json +14 -0
- package/src/verblets/bool/index.spec.js +35 -0
- package/src/verblets/enum/index.examples.js +33 -0
- package/src/verblets/enum/index.js +15 -0
- package/src/verblets/enum/index.spec.js +35 -0
- package/src/verblets/intent/index.examples.js +51 -0
- package/src/verblets/intent/index.js +72 -0
- package/src/verblets/intent/index.spec.js +31 -0
- package/src/verblets/number/index.examples.js +33 -0
- package/src/verblets/number/index.js +22 -0
- package/src/verblets/number/index.spec.js +35 -0
- package/src/verblets/number-with-units/index.examples.js +34 -0
- package/src/verblets/number-with-units/index.js +19 -0
- package/src/verblets/number-with-units/index.spec.js +46 -0
- package/src/verblets/schema-org/index.examples.js +56 -0
- package/src/verblets/schema-org/index.js +8 -0
- package/src/verblets/schema-org/index.spec.js +39 -0
- package/src/verblets/to-object/README.md +38 -0
- package/src/verblets/to-object/index.examples.js +29 -0
- package/src/verblets/to-object/index.js +136 -0
- 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
|
+

|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+

|
|
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
|
+

|
|
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> !
|
|
Binary file
|
|
Binary file
|
|
@@ -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
|
+

|
|
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
|
+

|
|
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
|
+
}
|
package/docs/sidebars.js
ADDED
|
@@ -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,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
|
+
}
|
|
File without changes
|
|
Binary file
|
|
Binary file
|
|
Binary file
|