docula 0.41.0 → 0.50.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +110 -0
- package/dist/docula.d.ts +156 -0
- package/dist/docula.js +1628 -0
- package/package.json +28 -24
- package/{template → templates/classic}/css/base.css +10 -0
- package/{template → templates/classic}/css/multipage.css +7 -0
- package/{template → templates/classic}/docs.hbs +1 -1
- package/{template/index.hbs → templates/classic/home.hbs} +7 -1
- package/templates/classic/includes/multipage/api-reference.hbs +1 -0
- package/templates/classic/includes/multipage/documentation.hbs +1 -0
- package/{template → templates/classic}/includes/multipage/hero.hbs +1 -2
- package/{template → templates/classic}/includes/multipage/home.hbs +3 -3
- package/{template → templates/classic}/includes/singlepage/content.hbs +3 -3
- package/templates/modern/api.hbs +30 -0
- package/templates/modern/changelog-entry.hbs +36 -0
- package/templates/modern/changelog.hbs +38 -0
- package/templates/modern/css/highlight/highlight.min.js +1433 -0
- package/templates/modern/css/highlight/styles/base16/docula.css +123 -0
- package/templates/modern/css/home.css +96 -0
- package/templates/modern/css/styles.css +697 -0
- package/templates/modern/docs.hbs +30 -0
- package/templates/modern/home.hbs +51 -0
- package/templates/modern/includes/api-reference.hbs +1 -0
- package/templates/modern/includes/doc.hbs +18 -0
- package/templates/modern/includes/documentation.hbs +1 -0
- package/templates/modern/includes/footer.hbs +6 -0
- package/templates/modern/includes/header-bar.hbs +57 -0
- package/templates/modern/includes/header.hbs +15 -0
- package/templates/modern/includes/hero.hbs +11 -0
- package/templates/modern/includes/home.hbs +46 -0
- package/templates/modern/includes/scripts.hbs +161 -0
- package/templates/modern/includes/sidebar.hbs +22 -0
- package/templates/modern/includes/theme-toggle.hbs +5 -0
- package/template/releases.hbs +0 -86
- /package/bin/{docula.mjs → docula.js} +0 -0
- /package/{template → templates/classic}/api.hbs +0 -0
- /package/{template → templates/classic}/changelog-entry.hbs +0 -0
- /package/{template → templates/classic}/changelog.hbs +0 -0
- /package/{template → templates/classic}/css/highlight/highlight.min.js +0 -0
- /package/{template → templates/classic}/css/highlight/styles/base16/dracula.min.css +0 -0
- /package/{template → templates/classic}/css/landing.css +0 -0
- /package/{template → templates/classic}/css/singlepage.css +0 -0
- /package/{template → templates/classic}/includes/footer.hbs +0 -0
- /package/{template → templates/classic}/includes/header.hbs +0 -0
- /package/{template → templates/classic}/includes/multipage/doc.hbs +0 -0
- /package/{template → templates/classic}/includes/multipage/header.hbs +0 -0
- /package/{template → templates/classic}/includes/multipage/scripts.hbs +0 -0
- /package/{template → templates/classic}/includes/multipage/sidebar.hbs +0 -0
- /package/{template → templates/classic}/includes/scripts.hbs +0 -0
- /package/{template → templates/classic}/includes/singlepage/hero.hbs +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "docula",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.50.0",
|
|
4
4
|
"description": "Beautiful Website for Your Projects",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/docula.js",
|
|
@@ -11,28 +11,15 @@
|
|
|
11
11
|
"import": "./dist/docula.js"
|
|
12
12
|
}
|
|
13
13
|
},
|
|
14
|
-
"repository":
|
|
14
|
+
"repository": {
|
|
15
|
+
"type": "git",
|
|
16
|
+
"url": "git+https://github.com/jaredwray/docula.git"
|
|
17
|
+
},
|
|
15
18
|
"author": "Jared Wray <me@jaredwray.com>",
|
|
16
19
|
"engines": {
|
|
17
20
|
"node": ">=20"
|
|
18
21
|
},
|
|
19
22
|
"license": "MIT",
|
|
20
|
-
"scripts": {
|
|
21
|
-
"clean": "rimraf ./dist ./coverage ./node_modules ./package-lock.json ./yarn.lock ./pnpm-lock.yaml ./site/README.md ./site/dist",
|
|
22
|
-
"build": "pnpm generate-init-file && rimraf ./dist && tsup src/docula.ts --format esm --dts --clean",
|
|
23
|
-
"lint": "biome check --write --error-on-warnings",
|
|
24
|
-
"lint:ci": "biome check --error-on-warnings",
|
|
25
|
-
"test": "pnpm lint && vitest run --coverage",
|
|
26
|
-
"test:ci": "pnpm lint:ci && vitest run --coverage",
|
|
27
|
-
"generate-init-file": "tsx scripts/generate-init-file.ts",
|
|
28
|
-
"website:build": "rimraf ./site/README.md && node bin/docula.mjs build -s ./site -o ./site/dist",
|
|
29
|
-
"website:serve": "rimraf ./site/README.md && node bin/docula.mjs serve -s ./site -o ./site/dist",
|
|
30
|
-
"website:build:mega": "rimraf ./test/fixtures/mega-page-site/dist && node bin/docula.mjs build -s ./test/fixtures/mega-page-site",
|
|
31
|
-
"website:serve:mega": "rimraf ./test/fixtures/mega-page-site/dist && node bin/docula.mjs serve -s ./test/fixtures/mega-page-site",
|
|
32
|
-
"website:build:changelog": "rimraf ./test/fixtures/changelog-site/dist && node bin/docula.mjs build -s ./test/fixtures/changelog-site",
|
|
33
|
-
"website:serve:changelog": "rimraf ./test/fixtures/changelog-site/dist && node bin/docula.mjs serve -s ./test/fixtures/changelog-site",
|
|
34
|
-
"prepare": "pnpm build"
|
|
35
|
-
},
|
|
36
23
|
"keywords": [
|
|
37
24
|
"static-site-generator",
|
|
38
25
|
"static-site",
|
|
@@ -50,13 +37,12 @@
|
|
|
50
37
|
"handlebars"
|
|
51
38
|
],
|
|
52
39
|
"bin": {
|
|
53
|
-
"docula": "./bin/docula.
|
|
40
|
+
"docula": "./bin/docula.js"
|
|
54
41
|
},
|
|
55
42
|
"dependencies": {
|
|
56
43
|
"@cacheable/net": "^2.0.5",
|
|
57
44
|
"ecto": "^4.8.2",
|
|
58
45
|
"feed": "^5.2.0",
|
|
59
|
-
"he": "^1.2.0",
|
|
60
46
|
"jiti": "^2.6.1",
|
|
61
47
|
"serve-handler": "^6.1.6",
|
|
62
48
|
"update-notifier": "^7.3.1",
|
|
@@ -65,7 +51,6 @@
|
|
|
65
51
|
"devDependencies": {
|
|
66
52
|
"@biomejs/biome": "^2.4.2",
|
|
67
53
|
"@types/express": "^5.0.6",
|
|
68
|
-
"@types/he": "^1.2.3",
|
|
69
54
|
"@types/js-yaml": "^4.0.9",
|
|
70
55
|
"@types/node": "^25.2.3",
|
|
71
56
|
"@types/serve-handler": "^6.1.4",
|
|
@@ -80,7 +65,26 @@
|
|
|
80
65
|
},
|
|
81
66
|
"files": [
|
|
82
67
|
"dist",
|
|
83
|
-
"
|
|
68
|
+
"templates",
|
|
84
69
|
"bin"
|
|
85
|
-
]
|
|
86
|
-
|
|
70
|
+
],
|
|
71
|
+
"scripts": {
|
|
72
|
+
"clean": "rimraf ./dist ./coverage ./node_modules ./package-lock.json ./yarn.lock ./pnpm-lock.yaml ./site/README.md ./site/dist",
|
|
73
|
+
"build": "pnpm generate-init-file && rimraf ./dist && tsup src/docula.ts --format esm --dts --clean",
|
|
74
|
+
"lint": "biome check --write --error-on-warnings",
|
|
75
|
+
"lint:ci": "biome check --error-on-warnings",
|
|
76
|
+
"test": "pnpm lint && vitest run --coverage",
|
|
77
|
+
"test:ci": "pnpm lint:ci && vitest run --coverage",
|
|
78
|
+
"generate-init-file": "tsx scripts/generate-init-file.ts",
|
|
79
|
+
"website:build": "rimraf ./site/README.md && node bin/docula.js build -s ./site -o ./site/dist",
|
|
80
|
+
"website:serve": "rimraf ./site/README.md && node bin/docula.js serve -s ./site -o ./site/dist",
|
|
81
|
+
"website:mega": "pnpm website:build:mega && pnpm website:serve:mega",
|
|
82
|
+
"website:build:mega": "rimraf ./test/fixtures/mega-page-site/dist && node bin/docula.js build -s ./test/fixtures/mega-page-site",
|
|
83
|
+
"website:serve:mega": "rimraf ./test/fixtures/mega-page-site/dist && node bin/docula.js serve -s ./test/fixtures/mega-page-site",
|
|
84
|
+
"website:mega:nohome": "pnpm website:build:mega:nohome && pnpm website:serve:mega:nohome",
|
|
85
|
+
"website:build:mega:nohome": "rimraf ./test/fixtures/mega-page-site-no-home-page/dist && node bin/docula.js build -s ./test/fixtures/mega-page-site-no-home-page",
|
|
86
|
+
"website:serve:mega:nohome": "rimraf ./test/fixtures/mega-page-site-no-home-page/dist && node bin/docula.js serve -s ./test/fixtures/mega-page-site-no-home-page",
|
|
87
|
+
"website:build:changelog": "rimraf ./test/fixtures/changelog-site/dist && node bin/docula.js build -s ./test/fixtures/changelog-site",
|
|
88
|
+
"website:serve:changelog": "rimraf ./test/fixtures/changelog-site/dist && node bin/docula.js serve -s ./test/fixtures/changelog-site"
|
|
89
|
+
}
|
|
90
|
+
}
|
|
@@ -278,6 +278,16 @@ h1.changelog-entry-title {
|
|
|
278
278
|
color: #6d28d9;
|
|
279
279
|
}
|
|
280
280
|
|
|
281
|
+
.changelog-tag-release {
|
|
282
|
+
background-color: rgba(16, 185, 129, 0.15);
|
|
283
|
+
color: #047857;
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
.changelog-tag-pre-release {
|
|
287
|
+
background-color: rgba(251, 191, 36, 0.15);
|
|
288
|
+
color: #92400e;
|
|
289
|
+
}
|
|
290
|
+
|
|
281
291
|
.changelog-entry-body p {
|
|
282
292
|
margin: 0.5rem 0;
|
|
283
293
|
}
|
|
@@ -57,6 +57,12 @@
|
|
|
57
57
|
{{else}}
|
|
58
58
|
<main class="home">
|
|
59
59
|
{{> multipage/hero }}
|
|
60
|
+
<div class="home-actions">
|
|
61
|
+
{{> multipage/documentation }}
|
|
62
|
+
{{#if hasApi}}
|
|
63
|
+
{{> multipage/api-reference }}
|
|
64
|
+
{{/if}}
|
|
65
|
+
</div>
|
|
60
66
|
{{> multipage/home }}
|
|
61
67
|
</main>
|
|
62
68
|
{{/if}}
|
|
@@ -69,4 +75,4 @@
|
|
|
69
75
|
{{/unless}}
|
|
70
76
|
</body>
|
|
71
77
|
|
|
72
|
-
</html>
|
|
78
|
+
</html>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<a href="/api" class="home-docs-button">API Reference</a>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<a href="/docs" class="home-docs-button">Documentation</a>
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
|
|
23
23
|
{{#if github.releases}}
|
|
24
24
|
<div class="content-container">
|
|
25
|
-
<h2 class="home-title">
|
|
25
|
+
<h2 class="home-title">Changelog</h2>
|
|
26
26
|
{{#each github.releases as |release|}}
|
|
27
27
|
{{#if (lt @index 3)}}
|
|
28
28
|
<div class="release">
|
|
@@ -49,8 +49,8 @@
|
|
|
49
49
|
|
|
50
50
|
{{#if (gt github.releases.length 6)}}
|
|
51
51
|
<div>
|
|
52
|
-
<a class="release-btn" href="/
|
|
53
|
-
|
|
52
|
+
<a class="release-btn" href="/changelog">
|
|
53
|
+
Full Changelog
|
|
54
54
|
<span>→</span>
|
|
55
55
|
</a>
|
|
56
56
|
</div>
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
|
|
25
25
|
{{#if github.releases}}
|
|
26
26
|
<div class="content-container">
|
|
27
|
-
<h2 class="home-title">
|
|
27
|
+
<h2 class="home-title">Changelog</h2>
|
|
28
28
|
{{#each github.releases as |release|}}
|
|
29
29
|
{{#if (lt @index 3)}}
|
|
30
30
|
<div class="release">
|
|
@@ -51,8 +51,8 @@
|
|
|
51
51
|
|
|
52
52
|
{{#if (gt github.releases.length 6)}}
|
|
53
53
|
<div>
|
|
54
|
-
<a class="release-btn" href="/
|
|
55
|
-
|
|
54
|
+
<a class="release-btn" href="/changelog">
|
|
55
|
+
Full Changelog
|
|
56
56
|
<span>→</span>
|
|
57
57
|
</a>
|
|
58
58
|
</div>
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
|
|
4
|
+
<head>
|
|
5
|
+
{{> header }}
|
|
6
|
+
<title>API Documentation - {{ siteTitle }}</title>
|
|
7
|
+
<meta name="description" content="API Documentation for {{ siteTitle }}" />
|
|
8
|
+
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@docutopia/react/dist/browser/docutopia.css" />
|
|
9
|
+
<style>
|
|
10
|
+
body {
|
|
11
|
+
margin: 0;
|
|
12
|
+
padding: 0;
|
|
13
|
+
}
|
|
14
|
+
</style>
|
|
15
|
+
</head>
|
|
16
|
+
|
|
17
|
+
<body>
|
|
18
|
+
<div id="docs" style="height: 100vh;"></div>
|
|
19
|
+
|
|
20
|
+
<script src="https://cdn.jsdelivr.net/npm/@docutopia/react/dist/browser/docutopia.js"></script>
|
|
21
|
+
<script>
|
|
22
|
+
Docutopia.render('docs', {
|
|
23
|
+
specUrl: '{{ specUrl }}',
|
|
24
|
+
basename: '/api',
|
|
25
|
+
});
|
|
26
|
+
</script>
|
|
27
|
+
{{> scripts }}
|
|
28
|
+
</body>
|
|
29
|
+
|
|
30
|
+
</html>
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
|
|
4
|
+
<head>
|
|
5
|
+
{{> header }}
|
|
6
|
+
<title>{{siteTitle}} - {{title}}</title>
|
|
7
|
+
</head>
|
|
8
|
+
|
|
9
|
+
<body>
|
|
10
|
+
{{> header-bar }}
|
|
11
|
+
<div class="content">
|
|
12
|
+
<main class="versions-container">
|
|
13
|
+
<div class="versions-content">
|
|
14
|
+
<div class="changelog-entry-nav">
|
|
15
|
+
<a href="/changelog/">← Back to Changelog</a>
|
|
16
|
+
</div>
|
|
17
|
+
<div class="changelog-entry changelog-entry-single">
|
|
18
|
+
<div class="changelog-entry-header">
|
|
19
|
+
<h1 class="changelog-entry-title">{{title}}</h1>
|
|
20
|
+
{{#if tag}}
|
|
21
|
+
<span class="changelog-tag changelog-tag-{{tagClass}}">{{tag}}</span>
|
|
22
|
+
{{/if}}
|
|
23
|
+
</div>
|
|
24
|
+
<span class="changelog-entry-date">{{formattedDate}}</span>
|
|
25
|
+
<div class="changelog-entry-body">
|
|
26
|
+
{{{generatedHtml}}}
|
|
27
|
+
</div>
|
|
28
|
+
</div>
|
|
29
|
+
</div>
|
|
30
|
+
</main>
|
|
31
|
+
</div>
|
|
32
|
+
{{> footer }}
|
|
33
|
+
{{> scripts }}
|
|
34
|
+
</body>
|
|
35
|
+
|
|
36
|
+
</html>
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
|
|
4
|
+
<head>
|
|
5
|
+
{{> header }}
|
|
6
|
+
<title>{{siteTitle}} Changelog</title>
|
|
7
|
+
</head>
|
|
8
|
+
|
|
9
|
+
<body>
|
|
10
|
+
{{> header-bar }}
|
|
11
|
+
<div class="content">
|
|
12
|
+
<main class="versions-container">
|
|
13
|
+
<div class="versions-content">
|
|
14
|
+
<h2 class="home-title">Changelog</h2>
|
|
15
|
+
{{#if entries}}
|
|
16
|
+
{{#each entries as |entry|}}
|
|
17
|
+
<div class="changelog-entry">
|
|
18
|
+
<div class="changelog-entry-header">
|
|
19
|
+
<a class="changelog-entry-title" href="/changelog/{{entry.slug}}/">{{entry.title}}</a>
|
|
20
|
+
{{#if entry.tag}}
|
|
21
|
+
<span class="changelog-tag changelog-tag-{{entry.tagClass}}">{{entry.tag}}</span>
|
|
22
|
+
{{/if}}
|
|
23
|
+
</div>
|
|
24
|
+
<span class="changelog-entry-date">{{entry.formattedDate}}</span>
|
|
25
|
+
<div class="changelog-entry-body">
|
|
26
|
+
{{{entry.generatedHtml}}}
|
|
27
|
+
</div>
|
|
28
|
+
</div>
|
|
29
|
+
{{/each}}
|
|
30
|
+
{{/if}}
|
|
31
|
+
</div>
|
|
32
|
+
</main>
|
|
33
|
+
</div>
|
|
34
|
+
{{> footer }}
|
|
35
|
+
{{> scripts }}
|
|
36
|
+
</body>
|
|
37
|
+
|
|
38
|
+
</html>
|