vowel 0.2.4 → 0.3.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.
Files changed (74) hide show
  1. package/README.md +134 -26
  2. package/bin.js +209 -1
  3. package/config.js +20 -0
  4. package/docs-source/.votive.db +0 -0
  5. package/docs-source/blog/url-ui.md +1 -5
  6. package/docs-source/blog.md +5 -0
  7. package/docs-source/docs/items.md +1 -1
  8. package/docs-source/home.md +1 -1
  9. package/docs-source/output/about.html +1 -0
  10. package/docs-source/output/blog/url-ui.html +8 -0
  11. package/docs-source/output/blog.html +1 -0
  12. package/docs-source/output/default.css +1 -0
  13. package/docs-source/output/docs/deploy.html +34 -0
  14. package/docs-source/output/docs/file-structure.html +24 -0
  15. package/docs-source/output/docs/folder-settings.html +20 -0
  16. package/docs-source/output/docs/images.html +2 -0
  17. package/docs-source/output/docs/items.html +6 -0
  18. package/docs-source/output/docs/pages.html +101 -0
  19. package/docs-source/output/docs/styling.html +18 -0
  20. package/docs-source/output/docs/taxonomies.html +20 -0
  21. package/docs-source/output/docs.html +28 -0
  22. package/docs-source/output/features/cards.html +1 -0
  23. package/docs-source/output/features/editing.html +1 -0
  24. package/docs-source/output/features/emoji.html +1 -0
  25. package/docs-source/output/features/frontmatter.html +1 -0
  26. package/docs-source/output/features/lists.html +1 -0
  27. package/docs-source/output/features/navigation.html +1 -0
  28. package/docs-source/output/features/rich-previews.html +1 -0
  29. package/docs-source/output/features/robots.html +1 -0
  30. package/docs-source/output/features/rss.html +1 -0
  31. package/docs-source/output/features/sitemap.html +1 -0
  32. package/docs-source/output/features/speed.html +1 -0
  33. package/docs-source/output/features/static.html +1 -0
  34. package/docs-source/output/features/taxonomies.html +1 -0
  35. package/docs-source/output/features.html +1 -0
  36. package/docs-source/output/feed.xml +1 -0
  37. package/docs-source/output/index.html +21 -0
  38. package/docs-source/output/reset.css +1 -0
  39. package/docs-source/output/roadmap.html +87 -0
  40. package/docs-source/output/robots.txt +14 -0
  41. package/docs-source/output/sitemap.xml +16 -0
  42. package/docs-source/output/typography.css +1 -0
  43. package/docs-source/settings.md +1 -0
  44. package/getMetadata.js +1 -1
  45. package/index.js +5 -660
  46. package/package.json +18 -3
  47. package/plugins/fonts/index.js +26 -0
  48. package/plugins/icons/index.js +26 -0
  49. package/plugins/images/index.js +45 -0
  50. package/plugins/markdown/index.js +1097 -0
  51. package/plugins/robots/index.js +23 -0
  52. package/plugins/styles/index.js +69 -0
  53. package/plugins/vectors/index.js +38 -0
  54. package/plugins/xml/index.js +196 -0
  55. package/stylesheets/DefaultStyles.css +329 -263
  56. package/stylesheets/ResetStyles.css +119 -123
  57. package/stylesheets/TypographyStyles.css +259 -242
  58. package/docs-source/.vercel/README.txt +0 -11
  59. package/docs-source/.vercel/project.json +0 -1
  60. package/docs-source/assets/styles.css +0 -51
  61. package/docs-source/blog/home.md +0 -5
  62. /package/docs-source/{$features → features}/cards.md +0 -0
  63. /package/docs-source/{$features → features}/editing.md +0 -0
  64. /package/docs-source/{$features → features}/emoji.md +0 -0
  65. /package/docs-source/{$features → features}/frontmatter.md +0 -0
  66. /package/docs-source/{$features → features}/lists.md +0 -0
  67. /package/docs-source/{$features → features}/navigation.md +0 -0
  68. /package/docs-source/{$features → features}/rich-previews.md +0 -0
  69. /package/docs-source/{$features → features}/robots.md +0 -0
  70. /package/docs-source/{$features → features}/rss.md +0 -0
  71. /package/docs-source/{$features → features}/sitemap.md +0 -0
  72. /package/docs-source/{$features → features}/speed.md +0 -0
  73. /package/docs-source/{$features → features}/static.md +0 -0
  74. /package/docs-source/{$features → features}/taxonomies.md +0 -0
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "vowel",
3
3
  "type": "module",
4
- "version": "0.2.4",
4
+ "version": "0.3.0",
5
5
  "bin": "bin.js",
6
6
  "main": "index.js",
7
7
  "scripts": {
@@ -16,12 +16,20 @@
16
16
  "license": "MIT",
17
17
  "description": "Markdown websites",
18
18
  "dependencies": {
19
+ "@bomb.sh/args": "^0.3.1",
20
+ "@bomb.sh/tab": "^0.0.15",
21
+ "@clack/prompts": "^1.4.0",
22
+ "@jsdevtools/rehype-toc": "^3.0.2",
23
+ "autoprefixer": "^10.4.27",
24
+ "cssnano": "^7.1.4",
25
+ "encoding-sniffer": "^1.0.2",
19
26
  "fast-xml-parser": "^5.3.6",
20
27
  "faye-websocket": "^0.11.4",
21
28
  "hast-util-from-html": "^2.0.3",
22
29
  "hast-util-to-string": "^3.0.1",
23
30
  "hastscript": "^9.0.1",
24
31
  "js-yaml": "^4.1.0",
32
+ "lightningcss": "^1.32.0",
25
33
  "mdast": "^2.3.2",
26
34
  "mdast-normalize-headings": "^4.0.0",
27
35
  "mdast-util-from-markdown": "^2.0.2",
@@ -36,7 +44,12 @@
36
44
  "micromark-extension-gfm-footnote": "^2.1.0",
37
45
  "micromark-extension-gfm-table": "^2.1.1",
38
46
  "micromark-extension-gfm-task-list-item": "^2.1.0",
47
+ "postcss": "^8.5.9",
39
48
  "rehype": "^13.0.2",
49
+ "rehype-document": "^7.0.3",
50
+ "rehype-parse": "^9.0.1",
51
+ "rehype-preset-minify": "^7.0.1",
52
+ "rehype-slug": "^6.0.0",
40
53
  "rehype-stringify": "^10.0.1",
41
54
  "remark": "^15.0.1",
42
55
  "remark-frontmatter": "^5.0.0",
@@ -48,14 +61,16 @@
48
61
  "unist-util-find": "^3.0.0",
49
62
  "unist-util-is": "^6.0.0",
50
63
  "unist-util-position": "5.0.0",
64
+ "unist-util-remove": "^4.0.0",
51
65
  "unist-util-stringify-position": "^4.0.0",
52
66
  "unist-util-visit": "^5.0.0",
53
67
  "unist-util-visit-parents": "^6.0.0",
54
68
  "url-metadata": "^5.4.1",
55
- "voot": "^0.0.5",
56
- "votive": "^0.0.6",
69
+ "voot": "^0.1.0",
70
+ "votive": "^0.1.0",
57
71
  "xast-util-sitemap": "^2.0.0",
58
72
  "xast-util-to-xml": "^4.0.0",
73
+ "xml": "^1.0.1",
59
74
  "yaml": "^2.8.2",
60
75
  "yamljs": "^0.3.0"
61
76
  }
@@ -0,0 +1,26 @@
1
+ /** @import * as Votive from "votive" */
2
+
3
+ /** @type {Votive.VotiveProcessor} */
4
+ const fontsReader = {
5
+ syntax: "font",
6
+ filter: {
7
+ extensions: [".woff", ".woff2", ".ttf", ".otf"]
8
+ },
9
+ read: {
10
+ path: null,
11
+ },
12
+ write: null
13
+ }
14
+
15
+ /** @type {Votive.VotivePlugin} */
16
+ const vowelFontsPlugin = {
17
+ name: "vowel-fonts",
18
+ processors: [fontsReader],
19
+ router: ({ name, dir, ext }) => {
20
+ return {
21
+ name, dir, ext
22
+ }
23
+ }
24
+ }
25
+
26
+ export default vowelFontsPlugin
@@ -0,0 +1,26 @@
1
+ /** @import * as Votive from "votive" */
2
+
3
+ /** @type {Votive.VotiveProcessor} */
4
+ const iconReader = {
5
+ syntax: "icon",
6
+ filter: {
7
+ extensions: [".ico"]
8
+ },
9
+ read: {
10
+ path: null,
11
+ },
12
+ write: null
13
+ }
14
+
15
+ /** @type {Votive.VotivePlugin} */
16
+ const vowelIconsPlugin = {
17
+ name: "vowel-icons",
18
+ processors: [iconReader],
19
+ router: ({ name, dir, ext }) => {
20
+ return {
21
+ name, dir, ext
22
+ }
23
+ }
24
+ }
25
+
26
+ export default vowelIconsPlugin
@@ -0,0 +1,45 @@
1
+ import fs from "fs/promises"
2
+
3
+ /** @import * as Votive from "votive" */
4
+
5
+ /** @type {Votive.ProcessorWrite} */
6
+ async function writeImage(destination, database, config) {
7
+ const buffer = await fs.readFile(destination.path)
8
+ return {
9
+ data: buffer,
10
+ }
11
+ }
12
+
13
+ /** @type {Votive.ProcessorRead} */
14
+ function readImagePath(string) {
15
+
16
+ const data = {
17
+ metadata: {},
18
+ abstract: {
19
+ path: string
20
+ }
21
+ }
22
+
23
+ return data
24
+ }
25
+
26
+ /** @type {Votive.VotiveProcessor} */
27
+ const jpegLoader = {
28
+ format: "buffer",
29
+ extensions: [".jpeg", ".jpg", ".png", ".webp", ".gif"],
30
+ readFile: readImagePath,
31
+ writeFile: writeImage
32
+ }
33
+
34
+ /** @type {Votive.VotivePlugin} */
35
+ const vowelImagesPlugin = {
36
+ name: "vowel-jpeg",
37
+ processors: [jpegLoader],
38
+ router: ({ name, dir, ext }) => {
39
+ return {
40
+ name, dir, ext
41
+ }
42
+ }
43
+ }
44
+
45
+ export default vowelImagesPlugin