@zokugun/artifact 0.1.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 (60) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +102 -0
  3. package/bin/artifact +3 -0
  4. package/lib/cli.js +17 -0
  5. package/lib/commands/add.js +57 -0
  6. package/lib/compositors/compose.js +49 -0
  7. package/lib/compositors/fork.js +21 -0
  8. package/lib/compositors/index.js +13 -0
  9. package/lib/compositors/json.js +56 -0
  10. package/lib/compositors/rc.js +47 -0
  11. package/lib/compositors/yaml.js +34 -0
  12. package/lib/install.js +32 -0
  13. package/lib/journeys/commitlint/index.js +19 -0
  14. package/lib/journeys/default/index.js +17 -0
  15. package/lib/journeys/gitignore/index.js +7 -0
  16. package/lib/journeys/ignore/index.js +7 -0
  17. package/lib/journeys/index.js +34 -0
  18. package/lib/journeys/npmignore/index.js +7 -0
  19. package/lib/journeys/package/index.js +48 -0
  20. package/lib/journeys/rc/index.js +15 -0
  21. package/lib/parsers/json.js +11 -0
  22. package/lib/parsers/jsonc/index.js +7 -0
  23. package/lib/parsers/jsonc/parse.js +194 -0
  24. package/lib/parsers/jsonc/stringify.js +100 -0
  25. package/lib/parsers/jsonc/transform.js +2 -0
  26. package/lib/parsers/yaml.js +15 -0
  27. package/lib/routes/command.js +21 -0
  28. package/lib/routes/hash.js +13 -0
  29. package/lib/routes/index.js +15 -0
  30. package/lib/routes/lines-concat.js +22 -0
  31. package/lib/routes/list-concat.js +18 -0
  32. package/lib/routes/overwrite.js +12 -0
  33. package/lib/routes/primitive.js +18 -0
  34. package/lib/steps/apply-formatting.js +78 -0
  35. package/lib/steps/copy-binary-files.js +31 -0
  36. package/lib/steps/index.js +42 -0
  37. package/lib/steps/insert-final-new-line.js +25 -0
  38. package/lib/steps/merge-text-files.js +57 -0
  39. package/lib/steps/read-editor-config.js +97 -0
  40. package/lib/steps/read-files.js +66 -0
  41. package/lib/steps/read-incoming-package.js +24 -0
  42. package/lib/steps/read-target-config.js +78 -0
  43. package/lib/steps/update-target-config.js +50 -0
  44. package/lib/steps/write-text-files.js +32 -0
  45. package/lib/types/config.js +2 -0
  46. package/lib/types/context.js +2 -0
  47. package/lib/types/format.js +8 -0
  48. package/lib/types/step.js +2 -0
  49. package/lib/types/text-file.js +2 -0
  50. package/lib/types/travel.js +2 -0
  51. package/lib/utils/build-journey-plan.js +18 -0
  52. package/lib/utils/build-travel-plan.js +20 -0
  53. package/lib/utils/command/command.js +2 -0
  54. package/lib/utils/command/index.js +7 -0
  55. package/lib/utils/command/join-command.js +27 -0
  56. package/lib/utils/command/split-command.js +30 -0
  57. package/lib/utils/read-buffer.js +38 -0
  58. package/lib/utils/to-lines.js +7 -0
  59. package/lib/utils/trim-final-newline.js +8 -0
  60. package/package.json +93 -0
package/package.json ADDED
@@ -0,0 +1,93 @@
1
+ {
2
+ "name": "@zokugun/artifact",
3
+ "description": "Boilerplate your project & keep your configurations up to date",
4
+ "version": "0.1.0",
5
+ "author": {
6
+ "name": "Baptiste Augrain",
7
+ "email": "daiyam@zokugun.org"
8
+ },
9
+ "license": "MIT",
10
+ "homepage": "https://github.com/zokugun/artifact",
11
+ "repository": {
12
+ "type": "git",
13
+ "url": "https://github.com/zokugun/artifact.git"
14
+ },
15
+ "bugs": {
16
+ "url": "https://github.com/zokugun/artifact/issues"
17
+ },
18
+ "bin": {
19
+ "artifact": "bin/artifact",
20
+ "atf": "bin/artifact"
21
+ },
22
+ "scripts": {
23
+ "commit": "cz",
24
+ "compile": "tsc -p src",
25
+ "lint": "xo",
26
+ "prepare": "husky install;",
27
+ "prepublishOnly": "npm run compile",
28
+ "release": "release-it",
29
+ "test": "tsc -p test && mocha",
30
+ "test:dev": "mocha",
31
+ "test:watch": "tsc-watch -p test --onSuccess 'mocha'",
32
+ "watch": "tsc-watch -p src",
33
+ "watch:test": "tsc-watch -p test"
34
+ },
35
+ "dependencies": {
36
+ "commander": "^8.2.0",
37
+ "detect-indent": "^6.1.0",
38
+ "editorconfig": "^0.15.3",
39
+ "fs-extra": "^10.0.0",
40
+ "globby": "^11.0.4",
41
+ "istextorbinary": "^6.0.0",
42
+ "jsonc-parser": "^3.0.0",
43
+ "lodash": "^4.17.21",
44
+ "npm": "^7.23.0",
45
+ "pacote": "^11.3.5",
46
+ "tempy": "^1.0.1",
47
+ "yaml": "^1.10.2"
48
+ },
49
+ "devDependencies": {
50
+ "@commitlint/cli": "^13.1.0",
51
+ "@commitlint/config-conventional": "^13.1.0",
52
+ "@types/chai": "^4.2.17",
53
+ "@types/fs-extra": "^9.0.12",
54
+ "@types/lodash": "^4.14.172",
55
+ "@types/mocha": "^9.0.0",
56
+ "@types/node": "^14.17.15",
57
+ "@types/npm": "^7.19.0",
58
+ "@types/pacote": "^11.1.1",
59
+ "@types/universalify": "^1.0.0",
60
+ "camelcase": "^6.2.0",
61
+ "chai": "^4.3.4",
62
+ "commitizen": "^4.2.4",
63
+ "eslint-plugin-chai-friendly": "^0.7.2",
64
+ "fixpack": "^4.0.0",
65
+ "husky": "^7.0.1",
66
+ "lint-staged": "^11.1.1",
67
+ "memfs": "^3.2.4",
68
+ "mocha": "^9.1.1",
69
+ "release-it": "^14.11.3",
70
+ "rewiremock": "^3.14.3",
71
+ "source-map-support": "^0.5.20",
72
+ "tsc-watch": "^4.5.0",
73
+ "typescript": "^4.2.4",
74
+ "universalify": "^2.0.0",
75
+ "xo": "^0.44.0"
76
+ },
77
+ "keywords": [
78
+ "artifact",
79
+ "boilerplate",
80
+ "boilerplates",
81
+ "codegeneration",
82
+ "codemod",
83
+ "codemods",
84
+ "configuration",
85
+ "configurations",
86
+ "generate",
87
+ "generator",
88
+ "project-generator",
89
+ "project-starter",
90
+ "project-template",
91
+ "scaffold"
92
+ ]
93
+ }