@docubook/create 1.12.0 → 1.13.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.
- package/package.json +1 -1
- package/src/dist/.vscode/card.code-snippets +52 -14
- package/src/dist/.vscode/table.code-snippets +10 -18
- package/src/dist/app/page.tsx +2 -2
- package/src/dist/components/context-popover.tsx +133 -0
- package/src/dist/components/docs-menu.tsx +39 -21
- package/src/dist/components/footer.tsx +4 -2
- package/src/dist/components/leftbar.tsx +10 -4
- package/src/dist/components/markdown/CardGroupMdx.tsx +1 -1
- package/src/dist/components/markdown/CardMdx.tsx +5 -4
- package/src/dist/components/markdown/FileTreeMdx.tsx +52 -33
- package/src/dist/components/markdown/KeyboardMdx.tsx +1 -1
- package/src/dist/components/markdown/NoteMdx.tsx +1 -1
- package/src/dist/components/markdown/StepperMdx.tsx +2 -2
- package/src/dist/components/markdown/TooltipsMdx.tsx +6 -3
- package/src/dist/components/navbar.tsx +3 -3
- package/src/dist/components/search.tsx +36 -4
- package/src/dist/components/sublink.tsx +7 -6
- package/src/dist/components/theme-toggle.tsx +10 -10
- package/src/dist/components/toc-observer.tsx +9 -9
- package/src/dist/contents/docs/{getting-started/changelog → changelog/version-1}/index.mdx +45 -3
- package/src/dist/contents/docs/components/accordion/index.mdx +86 -0
- package/src/dist/contents/docs/components/button/index.mdx +40 -0
- package/src/dist/contents/docs/{getting-started/components → components}/card/index.mdx +9 -11
- package/src/dist/contents/docs/{getting-started/components → components}/card-group/index.mdx +2 -4
- package/src/dist/contents/docs/{getting-started/components → components}/code-block/index.mdx +2 -4
- package/src/dist/contents/docs/{getting-started/components → components}/file-tree/index.mdx +3 -3
- package/src/dist/contents/docs/{getting-started/components → components}/index.mdx +1 -1
- package/src/dist/contents/docs/{getting-started/components → components}/keyboard/index.mdx +3 -3
- package/src/dist/contents/docs/{getting-started/components → components}/note/index.mdx +4 -6
- package/src/dist/contents/docs/{getting-started/components → components}/release-note/index.mdx +2 -2
- package/src/dist/contents/docs/{getting-started/components → components}/stepper/index.mdx +2 -4
- package/src/dist/contents/docs/{getting-started/components → components}/tabs/index.mdx +4 -4
- package/src/dist/contents/docs/{getting-started/components → components}/tooltips/index.mdx +1 -1
- package/src/dist/contents/docs/{getting-started/components → components}/youtube/index.mdx +7 -5
- package/src/dist/contents/docs/getting-started/customize/index.mdx +0 -2
- package/src/dist/contents/docs/getting-started/index.mdx +9 -0
- package/src/dist/contents/docs/getting-started/installation/index.mdx +1 -1
- package/src/dist/contents/docs/getting-started/introduction/index.mdx +1 -1
- package/src/dist/contents/docs/getting-started/quick-start-guide/index.mdx +78 -60
- package/src/dist/contents/docs/getting-started/theme-colors/coffee/index.mdx +167 -0
- package/src/dist/contents/docs/getting-started/theme-colors/default/index.mdx +163 -0
- package/src/dist/contents/docs/getting-started/theme-colors/freshlime/index.mdx +164 -0
- package/src/dist/contents/docs/getting-started/theme-colors/index.mdx +9 -0
- package/src/dist/contents/docs/getting-started/theme-colors/llms/index.mdx +66 -0
- package/src/dist/docu.json +56 -23
- package/src/dist/lib/routes-config.ts +8 -1
- package/src/dist/package.json +1 -1
- package/src/dist/styles/globals.css +50 -67
- package/src/dist/styles/syntax.css +24 -29
- package/src/dist/tailwind.config.ts +0 -1
- package/bun.lock +0 -102
- package/src/dist/.vscode/extensions.json +0 -3
- package/src/dist/contents/docs/getting-started/components/accordion/index.mdx +0 -72
- package/src/dist/contents/docs/getting-started/components/button/index.mdx +0 -42
- package/src/dist/styles/editor.css +0 -57
- /package/src/dist/contents/docs/{getting-started/components → components}/custom/index.mdx +0 -0
- /package/src/dist/contents/docs/{getting-started/components → components}/image/index.mdx +0 -0
- /package/src/dist/contents/docs/{getting-started/components → components}/link/index.mdx +0 -0
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Fresh Lime
|
|
3
|
+
description: A fresh and vibrant freshlime-themed color scheme that's easy on the eyes while maintaining excellent readability.
|
|
4
|
+
date: 2025-05-30
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Styles
|
|
8
|
+
|
|
9
|
+
DocuBook comes with a carefully designed color system that ensures consistency and accessibility across your documentation. The theme includes both light and dark modes, automatically adapting to the user's system preferences.
|
|
10
|
+
|
|
11
|
+
<Note type="note" title="note">
|
|
12
|
+
You can override the default styles by adding your own CSS variables in the `globals.css` and `syntax.css` files.
|
|
13
|
+
</Note>
|
|
14
|
+
|
|
15
|
+
<Tabs defaultValue="globals" className="pt-5 pb-1">
|
|
16
|
+
<TabsList>
|
|
17
|
+
<TabsTrigger value="globals">globals.css</TabsTrigger>
|
|
18
|
+
<TabsTrigger value="syntax">syntax.css</TabsTrigger>
|
|
19
|
+
</TabsList>
|
|
20
|
+
<TabsContent value="globals">
|
|
21
|
+
```css:globals.css
|
|
22
|
+
/* Fresh Lime Theme */
|
|
23
|
+
@layer base {
|
|
24
|
+
:root {
|
|
25
|
+
--background: 85 45% 98%;
|
|
26
|
+
--foreground: 85 30% 10%;
|
|
27
|
+
--card: 0 0% 100%;
|
|
28
|
+
--card-foreground: 85 30% 10%;
|
|
29
|
+
--popover: 0 0% 100%;
|
|
30
|
+
--popover-foreground: 85 30% 10%;
|
|
31
|
+
--primary: 85 70% 45%;
|
|
32
|
+
--primary-foreground: 0 0% 100%;
|
|
33
|
+
--secondary: 85 40% 90%;
|
|
34
|
+
--secondary-foreground: 85 30% 10%;
|
|
35
|
+
--muted: 85 30% 92%;
|
|
36
|
+
--muted-foreground: 85 15% 45%;
|
|
37
|
+
--accent: 85 60% 40%;
|
|
38
|
+
--accent-foreground: 0 0% 100%;
|
|
39
|
+
--destructive: 0 85% 60%;
|
|
40
|
+
--destructive-foreground: 0 0% 100%;
|
|
41
|
+
--border: 85 25% 88%;
|
|
42
|
+
--input: 85 25% 88%;
|
|
43
|
+
--ring: 85 70% 45%;
|
|
44
|
+
--radius: 0.5rem;
|
|
45
|
+
--chart-1: 85 70% 45%;
|
|
46
|
+
--chart-2: 85 60% 40%;
|
|
47
|
+
--chart-3: 85 80% 40%;
|
|
48
|
+
--chart-4: 85 85% 35%;
|
|
49
|
+
--chart-5: 85 90% 30%;
|
|
50
|
+
--line-number-color: rgba(0, 0, 0, 0.05);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.dark {
|
|
54
|
+
--background: 85 20% 8%;
|
|
55
|
+
--foreground: 85 30% 96%;
|
|
56
|
+
--card: 85 20% 10%;
|
|
57
|
+
--card-foreground: 85 30% 96%;
|
|
58
|
+
--popover: 85 20% 10%;
|
|
59
|
+
--popover-foreground: 85 30% 96%;
|
|
60
|
+
--primary: 85 75% 55%;
|
|
61
|
+
--primary-foreground: 85 20% 8%;
|
|
62
|
+
--secondary: 85 25% 18%;
|
|
63
|
+
--secondary-foreground: 85 30% 96%;
|
|
64
|
+
--muted: 85 20% 20%;
|
|
65
|
+
--muted-foreground: 85 20% 70%;
|
|
66
|
+
--accent: 85 70% 50%;
|
|
67
|
+
--accent-foreground: 0 0% 100%;
|
|
68
|
+
--destructive: 0 85% 65%;
|
|
69
|
+
--destructive-foreground: 0 0% 100%;
|
|
70
|
+
--border: 85 25% 22%;
|
|
71
|
+
--input: 85 25% 22%;
|
|
72
|
+
--ring: 85 75% 55%;
|
|
73
|
+
--chart-1: 85 75% 55%;
|
|
74
|
+
--chart-2: 85 70% 50%;
|
|
75
|
+
--chart-3: 85 80% 45%;
|
|
76
|
+
--chart-4: 85 85% 40%;
|
|
77
|
+
--chart-5: 85 90% 35%;
|
|
78
|
+
--line-number-color: rgba(255, 255, 255, 0.1);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
```
|
|
82
|
+
</TabsContent>
|
|
83
|
+
|
|
84
|
+
<TabsContent value="syntax">
|
|
85
|
+
```css:syntax.css
|
|
86
|
+
/* Fresh Lime Theme - Syntax Highlighting */
|
|
87
|
+
|
|
88
|
+
/* Light Mode */
|
|
89
|
+
.keyword {
|
|
90
|
+
color: hsl(85 70% 30%); /* Dark lime green */
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
.function {
|
|
94
|
+
color: hsl(85 65% 35%); /* Slightly lighter lime */
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
.punctuation {
|
|
98
|
+
color: hsl(85 15% 50%); /* Muted green-gray */
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
.comment {
|
|
102
|
+
color: hsl(85 15% 50%); /* Muted green-gray */
|
|
103
|
+
font-style: italic;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
.string,
|
|
107
|
+
.constant,
|
|
108
|
+
.annotation,
|
|
109
|
+
.boolean,
|
|
110
|
+
.number {
|
|
111
|
+
color: hsl(85 50% 35%); /* Medium lime green */
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
.tag {
|
|
115
|
+
color: hsl(85 70% 25%); /* Darker lime */
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
.attr-name {
|
|
119
|
+
color: hsl(85 60% 35%); /* Lime green */
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
.attr-value {
|
|
123
|
+
color: hsl(85 70% 30%); /* Dark lime green */
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
/* Dark Mode */
|
|
127
|
+
.dark .keyword {
|
|
128
|
+
color: hsl(85 75% 65%); /* Bright lime */
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
.dark .function {
|
|
132
|
+
color: hsl(85 75% 60%); /* Slightly less bright lime */
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
.dark .string,
|
|
136
|
+
.dark .constant,
|
|
137
|
+
.dark .annotation,
|
|
138
|
+
.dark .boolean,
|
|
139
|
+
.dark .number {
|
|
140
|
+
color: hsl(85 60% 70%); /* Light lime */
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
.dark .tag {
|
|
144
|
+
color: hsl(85 70% 70%); /* Bright lime */
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
.dark .attr-name {
|
|
148
|
+
color: hsl(85 65% 70%); /* Light lime */
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
.dark .attr-value {
|
|
152
|
+
color: hsl(85 75% 65%); /* Bright lime */
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
.dark .comment {
|
|
156
|
+
color: hsl(85 15% 60%); /* Light gray-green */
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
.dark .punctuation {
|
|
160
|
+
color: hsl(85 20% 70%); /* Light gray-green */
|
|
161
|
+
}
|
|
162
|
+
```
|
|
163
|
+
</TabsContent>
|
|
164
|
+
</Tabs>
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
title : Theme Colors
|
|
3
|
+
description : Color system used in DocuBook for styling UI elements
|
|
4
|
+
date : 2025-05-20
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
DocuBook comes with a carefully designed color system that ensures consistency and accessibility across your documentation. The theme includes both light and dark modes, automatically adapting to the user's system preferences.
|
|
8
|
+
|
|
9
|
+
<Outlet path="getting-started/theme-colors" />
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Llms.txt - Generate Custom Theme
|
|
3
|
+
description: Complete guide for creating and using AI-generated custom themes based on LLMS context.
|
|
4
|
+
date: 2025-05-31
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Introduction
|
|
8
|
+
This document explains how to create and implement custom color themes using AI with LLMS context. The context includes a consistent color palette for both light and dark modes, along with syntax highlighting colors for code.
|
|
9
|
+
|
|
10
|
+
## Generate New Theme
|
|
11
|
+
|
|
12
|
+
<Stepper>
|
|
13
|
+
<StepperItem title="Step 1: Access LLM for Color Generation">
|
|
14
|
+
Ensure you have access to a language model (LLM) that supports color palette generation
|
|
15
|
+
</StepperItem>
|
|
16
|
+
<StepperItem title="Step 2: Prepare Color Context">
|
|
17
|
+
Share the content of the [llms.txt](/llms.txt) file with the AI to provide the current color scheme context.
|
|
18
|
+
</StepperItem>
|
|
19
|
+
<StepperItem title="Step 3: Define Color Requirements">
|
|
20
|
+
Determine your preferred color scheme or theme requirements
|
|
21
|
+
</StepperItem>
|
|
22
|
+
<StepperItem title="Step 4: Generate New Theme">
|
|
23
|
+
Use the following prompt to request a new theme from the AI:
|
|
24
|
+
|
|
25
|
+
```markdown
|
|
26
|
+
Create a new color theme based on the provided context with the following requirements:
|
|
27
|
+
1. Different primary color `#2281E3` - changes to your brand color
|
|
28
|
+
2. Maintain good contrast for accessibility
|
|
29
|
+
3. Include variants for both light and dark modes
|
|
30
|
+
4. Keep the same structure as the provided context
|
|
31
|
+
```
|
|
32
|
+
</StepperItem>
|
|
33
|
+
</Stepper>
|
|
34
|
+
|
|
35
|
+
## Implementation
|
|
36
|
+
After receiving the new color palette:
|
|
37
|
+
|
|
38
|
+
1. Copy the generated CSS code to your theme file
|
|
39
|
+
2. Update CSS variables in `globals.css`
|
|
40
|
+
3. Adjust syntax colors in `syntax.css` if needed
|
|
41
|
+
4. Test the theme across different devices and display modes
|
|
42
|
+
|
|
43
|
+
## Example Implementation
|
|
44
|
+
```css
|
|
45
|
+
:root {
|
|
46
|
+
--primary: 210 81% 56%; /* Primary color */
|
|
47
|
+
--secondary: 210 30% 90%; /* Secondary color */
|
|
48
|
+
/* ... and so on */
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
.dark {
|
|
52
|
+
--primary: 210 100% 65%; /* Dark mode primary color */
|
|
53
|
+
/* ... and so on */
|
|
54
|
+
}
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## Tips and Recommendations
|
|
58
|
+
- Always test color contrast to ensure accessibility
|
|
59
|
+
- Maintain consistency with existing themes
|
|
60
|
+
- Use tools like [WebAIM Contrast Checker](https://webaim.org/resources/contrastchecker/) to verify contrast ratios
|
|
61
|
+
- Keep backups of previous theme versions before making major changes
|
|
62
|
+
|
|
63
|
+
## Troubleshooting
|
|
64
|
+
- If colors don't change, ensure CSS variables are properly imported
|
|
65
|
+
- Check CSS selector specificity if styles conflict
|
|
66
|
+
- Verify dark/light mode toggling is working correctly
|
package/src/dist/docu.json
CHANGED
|
@@ -61,35 +61,68 @@
|
|
|
61
61
|
"title": "Getting Started",
|
|
62
62
|
"href": "/getting-started",
|
|
63
63
|
"noLink": true,
|
|
64
|
+
"context": {
|
|
65
|
+
"icon": "Book",
|
|
66
|
+
"description": "Set up your Documentation",
|
|
67
|
+
"title": "Guides"
|
|
68
|
+
},
|
|
64
69
|
"items": [
|
|
65
70
|
{ "title": "Introduction", "href": "/introduction" },
|
|
66
71
|
{ "title": "Installation", "href": "/installation" },
|
|
67
72
|
{ "title": "Quick Start Guide", "href": "/quick-start-guide" },
|
|
68
73
|
{ "title": "Project Structure", "href": "/project-structure" },
|
|
69
|
-
{
|
|
70
|
-
"title": "Components",
|
|
71
|
-
"href": "/components",
|
|
72
|
-
"items": [
|
|
73
|
-
{ "title": "Accordion", "href": "/accordion" },
|
|
74
|
-
{ "title": "Button", "href": "/button" },
|
|
75
|
-
{ "title": "Card", "href": "/card" },
|
|
76
|
-
{ "title": "Card Group", "href": "/card-group" },
|
|
77
|
-
{ "title": "Code Block", "href": "/code-block" },
|
|
78
|
-
{ "title": "File Tree", "href": "/file-tree" },
|
|
79
|
-
{ "title": "Image", "href": "/image" },
|
|
80
|
-
{ "title": "Keyboard", "href": "/keyboard" },
|
|
81
|
-
{ "title": "Link", "href": "/link" },
|
|
82
|
-
{ "title": "Note", "href": "/note" },
|
|
83
|
-
{ "title": "Release Note", "href": "/release-note" },
|
|
84
|
-
{ "title": "Stepper", "href": "/stepper" },
|
|
85
|
-
{ "title": "Tabs", "href": "/tabs" },
|
|
86
|
-
{ "title": "Tooltips", "href": "/tooltips" },
|
|
87
|
-
{ "title": "Youtube", "href": "/youtube" },
|
|
88
|
-
{ "title": "Custom", "href": "/custom" }
|
|
89
|
-
]
|
|
90
|
-
},
|
|
91
74
|
{ "title": "Customize", "href": "/customize" },
|
|
92
|
-
{
|
|
75
|
+
{
|
|
76
|
+
"title": "Theme Colors",
|
|
77
|
+
"href": "/theme-colors",
|
|
78
|
+
"items": [
|
|
79
|
+
{ "title": "Default", "href": "/default" },
|
|
80
|
+
{ "title": "Fresh Lime", "href": "/freshlime" },
|
|
81
|
+
{ "title": "Coffee", "href": "/coffee" },
|
|
82
|
+
{ "title": "llms.txt", "href": "/llms" }
|
|
83
|
+
]
|
|
84
|
+
}
|
|
85
|
+
]
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"title": "Components",
|
|
89
|
+
"href": "/components",
|
|
90
|
+
"noLink": true,
|
|
91
|
+
"context": {
|
|
92
|
+
"icon": "Layers",
|
|
93
|
+
"description": "Write with Markdown",
|
|
94
|
+
"title": "Markdown"
|
|
95
|
+
},
|
|
96
|
+
"items": [
|
|
97
|
+
{ "title": "Accordion", "href": "/accordion" },
|
|
98
|
+
{ "title": "Button", "href": "/button" },
|
|
99
|
+
{ "title": "Card", "href": "/card" },
|
|
100
|
+
{ "title": "Card Group", "href": "/card-group" },
|
|
101
|
+
{ "title": "Code Block", "href": "/code-block" },
|
|
102
|
+
{ "title": "File Tree", "href": "/file-tree" },
|
|
103
|
+
{ "title": "Image", "href": "/image" },
|
|
104
|
+
{ "title": "Keyboard", "href": "/keyboard" },
|
|
105
|
+
{ "title": "Link", "href": "/link" },
|
|
106
|
+
{ "title": "Note", "href": "/note" },
|
|
107
|
+
{ "title": "Release Note", "href": "/release-note" },
|
|
108
|
+
{ "title": "Stepper", "href": "/stepper" },
|
|
109
|
+
{ "title": "Tabs", "href": "/tabs" },
|
|
110
|
+
{ "title": "Tooltips", "href": "/tooltips" },
|
|
111
|
+
{ "title": "Youtube", "href": "/youtube" },
|
|
112
|
+
{ "title": "Custom", "href": "/custom" }
|
|
113
|
+
]
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
"title": "Release",
|
|
117
|
+
"href": "/changelog",
|
|
118
|
+
"noLink": true,
|
|
119
|
+
"context": {
|
|
120
|
+
"icon": "History",
|
|
121
|
+
"description": "Updates and changes",
|
|
122
|
+
"title": "Changelog"
|
|
123
|
+
},
|
|
124
|
+
"items": [
|
|
125
|
+
{ "title": "Version 1.0+", "href": "/version-1" }
|
|
93
126
|
]
|
|
94
127
|
}
|
|
95
128
|
]
|
|
@@ -1,9 +1,16 @@
|
|
|
1
1
|
import docuConfig from "@/docu.json"; // Import JSON file
|
|
2
2
|
|
|
3
|
+
export type ContextInfo = {
|
|
4
|
+
icon: string;
|
|
5
|
+
description: string;
|
|
6
|
+
title?: string;
|
|
7
|
+
};
|
|
8
|
+
|
|
3
9
|
export type EachRoute = {
|
|
4
10
|
title: string;
|
|
5
11
|
href: string;
|
|
6
|
-
noLink?: boolean;
|
|
12
|
+
noLink?: boolean;
|
|
13
|
+
context?: ContextInfo;
|
|
7
14
|
items?: EachRoute[];
|
|
8
15
|
};
|
|
9
16
|
|
package/src/dist/package.json
CHANGED
|
@@ -3,65 +3,64 @@
|
|
|
3
3
|
@tailwind utilities;
|
|
4
4
|
|
|
5
5
|
@import url("../styles/syntax.css");
|
|
6
|
-
@import url("../styles/editor.css");
|
|
7
6
|
|
|
8
|
-
/*
|
|
7
|
+
/* Modern Blue Theme */
|
|
9
8
|
@layer base {
|
|
10
9
|
:root {
|
|
11
|
-
--background: 210
|
|
12
|
-
--foreground: 220 30%
|
|
13
|
-
--card:
|
|
14
|
-
--card-foreground: 220 30%
|
|
15
|
-
--popover:
|
|
16
|
-
--popover-foreground: 220 30%
|
|
17
|
-
--primary:
|
|
18
|
-
--primary-foreground:
|
|
19
|
-
--secondary:
|
|
20
|
-
--secondary-foreground: 220 30%
|
|
21
|
-
--muted:
|
|
22
|
-
--muted-foreground: 220
|
|
23
|
-
--accent: 200
|
|
24
|
-
--accent-foreground: 0 0% 100%;
|
|
25
|
-
--destructive: 0
|
|
26
|
-
--destructive-foreground:
|
|
27
|
-
--border:
|
|
28
|
-
--input:
|
|
29
|
-
--ring:
|
|
10
|
+
--background: 210 40% 98%;
|
|
11
|
+
--foreground: 220 30% 15%;
|
|
12
|
+
--card: 0 0% 100%;
|
|
13
|
+
--card-foreground: 220 30% 15%;
|
|
14
|
+
--popover: 0 0% 100%;
|
|
15
|
+
--popover-foreground: 220 30% 15%;
|
|
16
|
+
--primary: 210 81% 56%; /* #2281E3 */
|
|
17
|
+
--primary-foreground: 0 0% 100%;
|
|
18
|
+
--secondary: 210 30% 90%;
|
|
19
|
+
--secondary-foreground: 220 30% 15%;
|
|
20
|
+
--muted: 210 20% 92%;
|
|
21
|
+
--muted-foreground: 220 15% 50%;
|
|
22
|
+
--accent: 200 100% 40%;
|
|
23
|
+
--accent-foreground: 0 0% 100%;
|
|
24
|
+
--destructive: 0 85% 60%;
|
|
25
|
+
--destructive-foreground: 0 0% 100%;
|
|
26
|
+
--border: 210 20% 85%;
|
|
27
|
+
--input: 210 20% 85%;
|
|
28
|
+
--ring: 210 81% 56%;
|
|
30
29
|
--radius: 0.5rem;
|
|
31
|
-
--chart-1: 210
|
|
32
|
-
--chart-2:
|
|
33
|
-
--chart-3: 220
|
|
34
|
-
--chart-4:
|
|
35
|
-
--chart-5:
|
|
30
|
+
--chart-1: 210 81% 56%;
|
|
31
|
+
--chart-2: 200 100% 40%;
|
|
32
|
+
--chart-3: 220 76% 60%;
|
|
33
|
+
--chart-4: 190 90% 50%;
|
|
34
|
+
--chart-5: 230 86% 45%;
|
|
36
35
|
--line-number-color: rgba(0, 0, 0, 0.05);
|
|
37
36
|
}
|
|
38
37
|
|
|
39
38
|
.dark {
|
|
40
|
-
--background: 220
|
|
41
|
-
--foreground:
|
|
42
|
-
--card: 220
|
|
43
|
-
--card-foreground:
|
|
44
|
-
--popover: 220
|
|
45
|
-
--popover-foreground:
|
|
46
|
-
--primary: 210
|
|
47
|
-
--primary-foreground: 220
|
|
48
|
-
--secondary:
|
|
49
|
-
--secondary-foreground:
|
|
50
|
-
--muted:
|
|
51
|
-
--muted-foreground:
|
|
52
|
-
--accent:
|
|
53
|
-
--accent-foreground:
|
|
54
|
-
--destructive: 0
|
|
55
|
-
--destructive-foreground:
|
|
56
|
-
--border:
|
|
57
|
-
--input:
|
|
58
|
-
--ring:
|
|
59
|
-
--chart-1: 210
|
|
60
|
-
--chart-2:
|
|
61
|
-
--chart-3: 220
|
|
62
|
-
--chart-4:
|
|
63
|
-
--chart-5:
|
|
64
|
-
--line-number-color: rgba(255, 255, 255, 0.
|
|
39
|
+
--background: 220 25% 10%;
|
|
40
|
+
--foreground: 210 30% 96%;
|
|
41
|
+
--card: 220 25% 15%;
|
|
42
|
+
--card-foreground: 210 30% 96%;
|
|
43
|
+
--popover: 220 25% 15%;
|
|
44
|
+
--popover-foreground: 210 30% 96%;
|
|
45
|
+
--primary: 210 100% 65%;
|
|
46
|
+
--primary-foreground: 220 25% 10%;
|
|
47
|
+
--secondary: 215 25% 20%;
|
|
48
|
+
--secondary-foreground: 210 30% 96%;
|
|
49
|
+
--muted: 215 20% 25%;
|
|
50
|
+
--muted-foreground: 215 20% 65%;
|
|
51
|
+
--accent: 200 100% 60%;
|
|
52
|
+
--accent-foreground: 0 0% 100%;
|
|
53
|
+
--destructive: 0 85% 70%;
|
|
54
|
+
--destructive-foreground: 0 0% 100%;
|
|
55
|
+
--border: 215 20% 25%;
|
|
56
|
+
--input: 215 20% 25%;
|
|
57
|
+
--ring: 210 100% 65%;
|
|
58
|
+
--chart-1: 210 100% 65%;
|
|
59
|
+
--chart-2: 200 100% 60%;
|
|
60
|
+
--chart-3: 220 90% 70%;
|
|
61
|
+
--chart-4: 190 100% 65%;
|
|
62
|
+
--chart-5: 230 90% 60%;
|
|
63
|
+
--line-number-color: rgba(255, 255, 255, 0.1);
|
|
65
64
|
}
|
|
66
65
|
}
|
|
67
66
|
|
|
@@ -119,22 +118,6 @@ pre>code {
|
|
|
119
118
|
background-color: transparent !important;
|
|
120
119
|
}
|
|
121
120
|
|
|
122
|
-
.line-clamp-3 {
|
|
123
|
-
display: -webkit-box;
|
|
124
|
-
-webkit-line-clamp: 3;
|
|
125
|
-
-webkit-box-orient: vertical;
|
|
126
|
-
overflow: hidden;
|
|
127
|
-
text-overflow: ellipsis;
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
.line-clamp-2 {
|
|
131
|
-
display: -webkit-box;
|
|
132
|
-
-webkit-line-clamp: 2;
|
|
133
|
-
-webkit-box-orient: vertical;
|
|
134
|
-
overflow: hidden;
|
|
135
|
-
text-overflow: ellipsis;
|
|
136
|
-
}
|
|
137
|
-
|
|
138
121
|
@layer utilities {
|
|
139
122
|
.animate-shine {
|
|
140
123
|
--animate-shine: shine var(--duration) infinite linear;
|
|
@@ -1,23 +1,20 @@
|
|
|
1
|
-
/*
|
|
1
|
+
/* Modern Blue Theme */
|
|
2
2
|
/* Light Mode */
|
|
3
3
|
.keyword {
|
|
4
|
-
color: #
|
|
5
|
-
/* Vibrant Blue */
|
|
4
|
+
color: #1d4ed8; /* Darker blue for better contrast */
|
|
6
5
|
}
|
|
7
6
|
|
|
8
7
|
.function {
|
|
9
|
-
color: #
|
|
10
|
-
/* Deep Sky Blue */
|
|
8
|
+
color: #0369a1; /* Deep blue */
|
|
11
9
|
}
|
|
12
10
|
|
|
13
11
|
.punctuation {
|
|
14
|
-
color: #
|
|
15
|
-
/* Cool Slate Gray */
|
|
12
|
+
color: #4b5563; /* Slate gray */
|
|
16
13
|
}
|
|
17
14
|
|
|
18
15
|
.comment {
|
|
19
|
-
color: #
|
|
20
|
-
|
|
16
|
+
color: #6b7280; /* Muted gray */
|
|
17
|
+
font-style: italic;
|
|
21
18
|
}
|
|
22
19
|
|
|
23
20
|
.string,
|
|
@@ -25,34 +22,28 @@
|
|
|
25
22
|
.annotation,
|
|
26
23
|
.boolean,
|
|
27
24
|
.number {
|
|
28
|
-
color: #
|
|
29
|
-
/* Dark Cyan */
|
|
25
|
+
color: #0d9488; /* Teal for better distinction */
|
|
30
26
|
}
|
|
31
27
|
|
|
32
28
|
.tag {
|
|
33
|
-
color: #
|
|
34
|
-
/* Indigo */
|
|
29
|
+
color: #1d4ed8; /* Matching keyword color */
|
|
35
30
|
}
|
|
36
31
|
|
|
37
32
|
.attr-name {
|
|
38
|
-
color: #
|
|
39
|
-
/* Light Sky Blue */
|
|
33
|
+
color: #0284c7; /* Sky blue */
|
|
40
34
|
}
|
|
41
35
|
|
|
42
36
|
.attr-value {
|
|
43
|
-
color: #2563eb;
|
|
44
|
-
/* Bright Blue */
|
|
37
|
+
color: #2563eb; /* Primary blue */
|
|
45
38
|
}
|
|
46
39
|
|
|
47
40
|
/* Dark Mode */
|
|
48
41
|
.dark .keyword {
|
|
49
|
-
color: #
|
|
50
|
-
/* Soft Blue */
|
|
42
|
+
color: #60a5fa; /* Soft blue */
|
|
51
43
|
}
|
|
52
44
|
|
|
53
45
|
.dark .function {
|
|
54
|
-
color: #38bdf8;
|
|
55
|
-
/* Sky Blue */
|
|
46
|
+
color: #38bdf8; /* Sky blue */
|
|
56
47
|
}
|
|
57
48
|
|
|
58
49
|
.dark .string,
|
|
@@ -60,23 +51,27 @@
|
|
|
60
51
|
.dark .annotation,
|
|
61
52
|
.dark .boolean,
|
|
62
53
|
.dark .number {
|
|
63
|
-
color: #
|
|
64
|
-
/* Light Blue */
|
|
54
|
+
color: #2dd4bf; /* Teal */
|
|
65
55
|
}
|
|
66
56
|
|
|
67
57
|
.dark .tag {
|
|
68
|
-
color: #
|
|
69
|
-
/* Bold Blue */
|
|
58
|
+
color: #60a5fa; /* Matching keyword color */
|
|
70
59
|
}
|
|
71
60
|
|
|
72
61
|
.dark .attr-name {
|
|
73
|
-
color: #
|
|
74
|
-
/* Aqua */
|
|
62
|
+
color: #7dd3fc; /* Lighter blue */
|
|
75
63
|
}
|
|
76
64
|
|
|
77
65
|
.dark .attr-value {
|
|
78
|
-
color: #
|
|
79
|
-
|
|
66
|
+
color: #3b82f6; /* Brighter blue */
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
.dark .comment {
|
|
70
|
+
color: #9ca3af; /* Lighter gray for dark mode */
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
.dark .punctuation {
|
|
74
|
+
color: #9ca3af; /* Lighter gray for dark mode */
|
|
80
75
|
}
|
|
81
76
|
|
|
82
77
|
.youtube {
|