writr 1.9.12 → 2.0.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 (133) hide show
  1. package/README.md +76 -135
  2. package/bin/writr.mjs +8 -0
  3. package/dist/builder.d.ts +33 -0
  4. package/dist/builder.js +181 -0
  5. package/dist/console.d.ts +22 -0
  6. package/dist/console.js +120 -0
  7. package/dist/github.d.ts +22 -0
  8. package/dist/github.js +74 -0
  9. package/dist/helpers/markdown.d.ts +10 -0
  10. package/dist/helpers/markdown.js +24 -0
  11. package/dist/helpers.d.ts +7 -0
  12. package/dist/helpers.js +58 -0
  13. package/dist/options.d.ts +12 -0
  14. package/dist/options.js +47 -0
  15. package/dist/writr.d.ts +23 -0
  16. package/dist/writr.js +153 -0
  17. package/init/favicon.svg +1 -0
  18. package/init/logo.png +0 -0
  19. package/init/variables.css +30 -0
  20. package/init/writr.config.cjs +10 -0
  21. package/package.json +44 -66
  22. package/template/css/highlight/highlight.min.js +1433 -0
  23. package/template/css/highlight/styles/base16/dracula.min.css +7 -0
  24. package/template/css/home.css +307 -0
  25. package/template/css/index.css +919 -0
  26. package/template/includes/footer.hbs +10 -0
  27. package/template/includes/header.hbs +17 -0
  28. package/template/includes/landing/content.hbs +63 -0
  29. package/template/includes/landing/hero.hbs +3 -0
  30. package/template/includes/scripts.hbs +4 -0
  31. package/template/index.hbs +16 -0
  32. package/template/releases.hbs +45 -0
  33. package/bin/writr.js +0 -7
  34. package/dist/cache.d.ts +0 -18
  35. package/dist/cache.js +0 -70
  36. package/dist/cache.js.map +0 -1
  37. package/dist/config.d.ts +0 -29
  38. package/dist/config.js +0 -104
  39. package/dist/config.js.map +0 -1
  40. package/dist/data/dataProviderInterface.d.ts +0 -12
  41. package/dist/data/dataProviderInterface.js +0 -2
  42. package/dist/data/dataProviderInterface.js.map +0 -1
  43. package/dist/data/dataService.d.ts +0 -19
  44. package/dist/data/dataService.js +0 -130
  45. package/dist/data/dataService.js.map +0 -1
  46. package/dist/data/fileDataProvider.d.ts +0 -20
  47. package/dist/data/fileDataProvider.js +0 -132
  48. package/dist/data/fileDataProvider.js.map +0 -1
  49. package/dist/generator.d.ts +0 -8
  50. package/dist/generator.js +0 -54
  51. package/dist/generator.js.map +0 -1
  52. package/dist/index.d.ts +0 -8
  53. package/dist/index.js +0 -80
  54. package/dist/index.js.map +0 -1
  55. package/dist/log.d.ts +0 -6
  56. package/dist/log.js +0 -13
  57. package/dist/log.js.map +0 -1
  58. package/dist/migrate/ghostMigrationProvider.d.ts +0 -9
  59. package/dist/migrate/ghostMigrationProvider.js +0 -65
  60. package/dist/migrate/ghostMigrationProvider.js.map +0 -1
  61. package/dist/migrate/jekyllMigrationProvider.d.ts +0 -4
  62. package/dist/migrate/jekyllMigrationProvider.js +0 -11
  63. package/dist/migrate/jekyllMigrationProvider.js.map +0 -1
  64. package/dist/migrate/mediumMigrationProvider.d.ts +0 -7
  65. package/dist/migrate/mediumMigrationProvider.js +0 -26
  66. package/dist/migrate/mediumMigrationProvider.js.map +0 -1
  67. package/dist/migrate/migrationProviderInterface.d.ts +0 -3
  68. package/dist/migrate/migrationProviderInterface.js +0 -2
  69. package/dist/migrate/migrationProviderInterface.js.map +0 -1
  70. package/dist/migrate/wordpressMigrationProvider.d.ts +0 -12
  71. package/dist/migrate/wordpressMigrationProvider.js +0 -103
  72. package/dist/migrate/wordpressMigrationProvider.js.map +0 -1
  73. package/dist/migrate.d.ts +0 -6
  74. package/dist/migrate.js +0 -34
  75. package/dist/migrate.js.map +0 -1
  76. package/dist/post.d.ts +0 -31
  77. package/dist/post.js +0 -189
  78. package/dist/post.js.map +0 -1
  79. package/dist/render/atomRenderProvider.d.ts +0 -8
  80. package/dist/render/atomRenderProvider.js +0 -51
  81. package/dist/render/atomRenderProvider.js.map +0 -1
  82. package/dist/render/htmRenderlProvider.d.ts +0 -14
  83. package/dist/render/htmRenderlProvider.js +0 -117
  84. package/dist/render/htmRenderlProvider.js.map +0 -1
  85. package/dist/render/imageRenderProvider.d.ts +0 -8
  86. package/dist/render/imageRenderProvider.js +0 -15
  87. package/dist/render/imageRenderProvider.js.map +0 -1
  88. package/dist/render/jsonRenderProvider.d.ts +0 -8
  89. package/dist/render/jsonRenderProvider.js +0 -24
  90. package/dist/render/jsonRenderProvider.js.map +0 -1
  91. package/dist/render/renderProviderInterface.d.ts +0 -5
  92. package/dist/render/renderProviderInterface.js +0 -2
  93. package/dist/render/renderProviderInterface.js.map +0 -1
  94. package/dist/serve.d.ts +0 -16
  95. package/dist/serve.js +0 -29
  96. package/dist/serve.js.map +0 -1
  97. package/dist/storage/fileStorageProvider.d.ts +0 -10
  98. package/dist/storage/fileStorageProvider.js +0 -62
  99. package/dist/storage/fileStorageProvider.js.map +0 -1
  100. package/dist/storage/storageProviderInterface.d.ts +0 -8
  101. package/dist/storage/storageProviderInterface.js +0 -2
  102. package/dist/storage/storageProviderInterface.js.map +0 -1
  103. package/dist/storage/storageService.d.ts +0 -12
  104. package/dist/storage/storageService.js +0 -28
  105. package/dist/storage/storageService.js.map +0 -1
  106. package/dist/tag.d.ts +0 -9
  107. package/dist/tag.js +0 -34
  108. package/dist/tag.js.map +0 -1
  109. package/dist/utils/parser.d.ts +0 -5
  110. package/dist/utils/parser.js +0 -37
  111. package/dist/utils/parser.js.map +0 -1
  112. package/dist/utils/setup.d.ts +0 -8
  113. package/dist/utils/setup.js +0 -75
  114. package/dist/utils/setup.js.map +0 -1
  115. package/init/article-complex.md +0 -40
  116. package/init/article-ejs.md +0 -40
  117. package/init/article-unpublished.md +0 -11
  118. package/init/article1-simple.md +0 -13
  119. package/init/article1.md +0 -11
  120. package/init/article2.md +0 -14
  121. package/init/big-content.md +0 -11
  122. package/init/config.json +0 -9
  123. package/init/images/Introducing Docula 1.png +0 -0
  124. package/init/images/Introducing Docula 2.jpeg +0 -0
  125. package/init/images/Introducing Docula 3.png +0 -0
  126. package/init/images/Introducing Docula 4.png +0 -0
  127. package/init/permalink-test.md +0 -13
  128. package/init/templates/index.hjs +0 -13
  129. package/init/templates/partials/header.hjs +0 -2
  130. package/init/templates/post.hjs +0 -19
  131. package/init/templates/post2.hjs +0 -17
  132. package/init/templates/post3.ejs +0 -7
  133. package/init/templates/tag.hjs +0 -9
@@ -0,0 +1,30 @@
1
+ :root {
2
+ --font-family: 'Open Sans', sans-serif;
3
+
4
+ --color-primary: #322d3c;
5
+ --color-secondary: #8cdc00;
6
+ --color-secondary-dark: #8cdc00;
7
+ --color-text: #322d3c;
8
+
9
+ --background: #ffffff;
10
+ --home-background: #ffffff;
11
+ --header-background: #ffffff;
12
+
13
+ --sidebar-background: #ffffff;
14
+ --sidebar-text: #322d3c;
15
+ --sidebar-text-active: #7d7887;
16
+
17
+ --border: rgba(238,238,245,1);
18
+
19
+ --background-search-highlight: var(--color-secondary-dark);
20
+ --color-search-highlight: #ffffff;
21
+ --search-input-background: var(--header-background);
22
+
23
+ --code: rgba(238,238,245,1);
24
+
25
+ --pagefind-ui-text: var(--color-text) !important;
26
+ --pagefind-ui-font: var(--font-family) !important;
27
+ --pagefind-ui-background: var(--background) !important;
28
+ --pagefind-ui-border: var(--border) !important;
29
+ --pagefind-ui-scale: .9 !important;
30
+ }
@@ -0,0 +1,10 @@
1
+ module.exports.options = {
2
+ templatePath: './template',
3
+ outputPath: './dist',
4
+ sitePath: './site',
5
+ githubPath: 'jaredwray/writr',
6
+ siteTitle: 'Writr',
7
+ siteDescription: 'Beautiful Website for Your Projects',
8
+ siteUrl: 'https://writr.org',
9
+ };
10
+
package/package.json CHANGED
@@ -1,20 +1,23 @@
1
1
  {
2
2
  "name": "writr",
3
- "version": "1.9.12",
4
- "description": "A Simple to Use Markdown Blog",
3
+ "version": "2.0.1",
4
+ "description": "Beautiful Website for Your Projects",
5
5
  "type": "module",
6
6
  "exports": "./dist/index.js",
7
7
  "types": "./dist/index.d.ts",
8
8
  "repository": "https://github.com/jaredwray/writr.git",
9
9
  "author": "Jared Wray <me@jaredwray.com>",
10
+ "engines": {
11
+ "node": ">=18.0.0"
12
+ },
10
13
  "license": "MIT",
11
14
  "keywords": [
12
15
  "static-site-generator",
13
16
  "static-site",
17
+ "open source",
14
18
  "ssg",
15
19
  "documentation",
16
20
  "website",
17
- "blog",
18
21
  "templates",
19
22
  "generator",
20
23
  "framework",
@@ -25,78 +28,53 @@
25
28
  "handlebars"
26
29
  ],
27
30
  "scripts": {
28
- "watch": "tsc -w -p .",
29
- "clean-all": "npm run clean && rm -rf node_modules && rm -rf coverage && rm -rf package-lock.json && rm -rf ./test/output",
30
- "clean": "rm -rf ./dist && npm run clean-output",
31
- "clean-output": "rm -rf ./blog_output && rm -rf ./test_output",
32
- "compile": "npm run clean && tsc -p .",
33
- "build": "npm run test && npm run compile",
34
- "test": "npm run clean-output && NODE_OPTIONS=--experimental-vm-modules jest --coverage --runInBand && npm run clean-output",
35
- "test-output": "npm run compile && node ./bin/writr.js -p ./blog_example"
31
+ "clean": "rimraf ./dist ./coverage ./node_modules ./package-lock.json ./yarn.lock ./site/README.md",
32
+ "build": "rimraf ./dist && tsc",
33
+ "build-site": "rimraf ./site/README.md && node bin/writr.mjs build -s ./site -o ./dist/site-output",
34
+ "test": "xo --fix && vitest run --coverage",
35
+ "serve": "rimraf ./site/README.md && node bin/writr.mjs serve -s ./site -o ./dist/site-output",
36
+ "prepare": "yarn run build"
36
37
  },
37
38
  "bin": {
38
- "writr": "./bin/writr.js"
39
+ "writr": "./bin/writr.mjs"
39
40
  },
40
41
  "dependencies": {
41
- "array-sort": "^1.0.0",
42
- "axios": "^1.4.0",
43
- "browser-sync": "^2.29.3",
44
- "cheerio": "^1.0.0-rc.12",
45
- "commander": "^11.0.0",
46
- "ecto": "^2.1.13",
42
+ "@markdoc/markdoc": "^0.4.0",
43
+ "axios": "^1.6.2",
44
+ "ecto": "^2.4.1",
45
+ "express": "^4.18.2",
47
46
  "feed": "^4.2.2",
48
- "fs-extra": "^11.1.1",
47
+ "fs-extra": "^11.2.0",
49
48
  "gray-matter": "^4.0.3",
50
- "inquirer": "^9.2.9",
51
- "keyv": "^4.5.3",
52
- "luxon": "^3.3.0",
53
- "moment": "^2.29.4",
54
- "node-html-markdown": "^1.3.0",
55
- "parse-json": "^7.0.0",
56
- "striptags": "^3.2.0",
57
- "winston": "^3.10.0"
49
+ "js-yaml": "^4.1.0",
50
+ "keyv": "^4.5.4",
51
+ "ts-node": "^10.9.2",
52
+ "update-notifier": "^7.0.0"
58
53
  },
59
54
  "devDependencies": {
60
- "@types/array-sort": "^1.0.0",
61
- "@types/browser-sync": "^2.27.0",
62
- "@types/fs-extra": "^11.0.1",
63
- "@types/inquirer": "^9.0.3",
64
- "@types/jest": "^29.5.3",
65
- "@types/keyv": "^3.1.4",
66
- "@types/luxon": "^3.3.1",
67
- "@types/node": "^20.4.5",
68
- "@types/parse-json": "^4.0.0",
69
- "jest": "^29.6.2",
70
- "jest-ts-webcompat-resolver": "^1.0.0",
71
- "jest-resolve": "^29.6.2",
72
- "source-map-support": "^0.5.21",
73
- "ts-jest": "^29.1.1",
74
- "ts-node": "^10.9.1",
75
- "typescript": "^5.1.6"
55
+ "@types/express": "^4.17.21",
56
+ "@types/fs-extra": "^11.0.4",
57
+ "@types/js-yaml": "^4.0.9",
58
+ "@types/node": "^20.10.5",
59
+ "@types/update-notifier": "^6.0.8",
60
+ "@vitest/coverage-v8": "^1.1.0",
61
+ "rimraf": "^5.0.5",
62
+ "typescript": "^5.3.3",
63
+ "vitest": "^1.1.0",
64
+ "webpack": "^5.89.0",
65
+ "xo": "^0.56.0"
66
+ },
67
+ "xo": {
68
+ "ignores": [
69
+ "writr.config.*",
70
+ "vitest.config.mjs",
71
+ "bin/writr.js"
72
+ ]
76
73
  },
77
74
  "files": [
78
75
  "dist",
79
- "bin",
80
- "init"
81
- ],
82
- "jest": {
83
- "moduleFileExtensions": [
84
- "ts",
85
- "js"
86
- ],
87
- "transform": {
88
- "^.+\\.[jt]sx?$": [
89
- "ts-jest",
90
- {
91
- "useESM": true,
92
- "tsconfig": "tsconfig.json"
93
- }
94
- ]
95
- },
96
- "testMatch": [
97
- "**/test/**/*.test.(ts)"
98
- ],
99
- "resolver": "jest-ts-webcompat-resolver",
100
- "testEnvironment": "node"
101
- }
76
+ "init",
77
+ "template",
78
+ "bin"
79
+ ]
102
80
  }