oss-pulse 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 (57) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/CODE_OF_CONDUCT.md +7 -0
  3. package/CONTRIBUTING.md +30 -0
  4. package/LICENSE +21 -0
  5. package/README.md +158 -0
  6. package/SECURITY.md +12 -0
  7. package/action.yml +45 -0
  8. package/dist/action-artifacts.d.ts +3 -0
  9. package/dist/action-artifacts.d.ts.map +1 -0
  10. package/dist/action-artifacts.js +38 -0
  11. package/dist/action-artifacts.js.map +1 -0
  12. package/dist/cli.d.ts +4 -0
  13. package/dist/cli.d.ts.map +1 -0
  14. package/dist/cli.js +117 -0
  15. package/dist/cli.js.map +1 -0
  16. package/dist/errors.d.ts +19 -0
  17. package/dist/errors.d.ts.map +1 -0
  18. package/dist/errors.js +31 -0
  19. package/dist/errors.js.map +1 -0
  20. package/dist/format.d.ts +8 -0
  21. package/dist/format.d.ts.map +1 -0
  22. package/dist/format.js +127 -0
  23. package/dist/format.js.map +1 -0
  24. package/dist/git.d.ts +3 -0
  25. package/dist/git.d.ts.map +1 -0
  26. package/dist/git.js +168 -0
  27. package/dist/git.js.map +1 -0
  28. package/dist/github-annotations.d.ts +3 -0
  29. package/dist/github-annotations.d.ts.map +1 -0
  30. package/dist/github-annotations.js +36 -0
  31. package/dist/github-annotations.js.map +1 -0
  32. package/dist/report-rules.d.ts +12 -0
  33. package/dist/report-rules.d.ts.map +1 -0
  34. package/dist/report-rules.js +207 -0
  35. package/dist/report-rules.js.map +1 -0
  36. package/dist/report.d.ts +3 -0
  37. package/dist/report.d.ts.map +1 -0
  38. package/dist/report.js +26 -0
  39. package/dist/report.js.map +1 -0
  40. package/dist/sarif.d.ts +3 -0
  41. package/dist/sarif.d.ts.map +1 -0
  42. package/dist/sarif.js +74 -0
  43. package/dist/sarif.js.map +1 -0
  44. package/dist/types.d.ts +52 -0
  45. package/dist/types.d.ts.map +1 -0
  46. package/dist/types.js +11 -0
  47. package/dist/types.js.map +1 -0
  48. package/docs/CLAUDE_FOR_OSS_PLAYBOOK.md +31 -0
  49. package/docs/CONTRIBUTOR_BACKLOG.md +93 -0
  50. package/docs/RELEASE.md +38 -0
  51. package/docs/REPORT_SCHEMA.md +116 -0
  52. package/docs/ROADMAP.md +30 -0
  53. package/docs/examples/README.md +12 -0
  54. package/docs/examples/octocat-hello-world.md +44 -0
  55. package/docs/examples/sindresorhus-is.md +47 -0
  56. package/docs/report.schema.json +136 -0
  57. package/package.json +40 -0
@@ -0,0 +1,136 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://oss-pulse.dev/schemas/report.schema.json",
4
+ "title": "OSS Pulse Report",
5
+ "description": "Machine-readable schema for `oss-pulse scan --format json` output.",
6
+ "type": "object",
7
+ "additionalProperties": false,
8
+ "required": [
9
+ "actions",
10
+ "branch",
11
+ "checks",
12
+ "generatedAtIso",
13
+ "latestCommitIso",
14
+ "root",
15
+ "score",
16
+ "status"
17
+ ],
18
+ "properties": {
19
+ "actions": {
20
+ "type": "array",
21
+ "items": { "$ref": "#/$defs/PulseAction" }
22
+ },
23
+ "branch": {
24
+ "type": "string",
25
+ "minLength": 1
26
+ },
27
+ "checks": {
28
+ "type": "array",
29
+ "items": { "$ref": "#/$defs/PulseCheck" }
30
+ },
31
+ "generatedAtIso": {
32
+ "type": "string",
33
+ "format": "date-time"
34
+ },
35
+ "latestCommitIso": {
36
+ "anyOf": [{ "type": "string", "format": "date-time" }, { "type": "null" }]
37
+ },
38
+ "root": {
39
+ "type": "string",
40
+ "minLength": 1
41
+ },
42
+ "score": {
43
+ "type": "integer",
44
+ "minimum": 0,
45
+ "maximum": 100
46
+ },
47
+ "status": { "$ref": "#/$defs/ReportStatus" }
48
+ },
49
+ "$defs": {
50
+ "ActionId": {
51
+ "type": "string",
52
+ "enum": [
53
+ "add-readme",
54
+ "add-license",
55
+ "add-contributing-guide",
56
+ "add-issue-template",
57
+ "add-good-first-issue-template",
58
+ "add-pull-request-template",
59
+ "add-security-policy",
60
+ "add-ci-workflow",
61
+ "add-release-workflow",
62
+ "add-changelog",
63
+ "add-funding",
64
+ "invite-contributors",
65
+ "add-code-of-conduct",
66
+ "resume-maintenance"
67
+ ]
68
+ },
69
+ "CheckId": {
70
+ "type": "string",
71
+ "enum": [
72
+ "readme",
73
+ "license",
74
+ "contributing",
75
+ "issue-template",
76
+ "good-first-issue-template",
77
+ "pull-request-template",
78
+ "security",
79
+ "ci-workflow",
80
+ "release-workflow",
81
+ "changelog",
82
+ "funding",
83
+ "external-contributors",
84
+ "code-of-conduct",
85
+ "recent-activity"
86
+ ]
87
+ },
88
+ "PulseAction": {
89
+ "type": "object",
90
+ "additionalProperties": false,
91
+ "required": ["detail", "id", "priority", "title"],
92
+ "properties": {
93
+ "detail": {
94
+ "type": "string",
95
+ "minLength": 1
96
+ },
97
+ "id": { "$ref": "#/$defs/ActionId" },
98
+ "priority": { "$ref": "#/$defs/Priority" },
99
+ "title": {
100
+ "type": "string",
101
+ "minLength": 1
102
+ }
103
+ }
104
+ },
105
+ "PulseCheck": {
106
+ "type": "object",
107
+ "additionalProperties": false,
108
+ "required": ["detail", "id", "label", "passed", "points"],
109
+ "properties": {
110
+ "detail": {
111
+ "type": "string",
112
+ "minLength": 1
113
+ },
114
+ "id": { "$ref": "#/$defs/CheckId" },
115
+ "label": {
116
+ "type": "string",
117
+ "minLength": 1
118
+ },
119
+ "passed": { "type": "boolean" },
120
+ "points": {
121
+ "type": "integer",
122
+ "minimum": 0,
123
+ "maximum": 15
124
+ }
125
+ }
126
+ },
127
+ "Priority": {
128
+ "type": "string",
129
+ "enum": ["high", "medium", "low"]
130
+ },
131
+ "ReportStatus": {
132
+ "type": "string",
133
+ "enum": ["ready", "needs-work"]
134
+ }
135
+ }
136
+ }
package/package.json ADDED
@@ -0,0 +1,40 @@
1
+ {
2
+ "name": "oss-pulse",
3
+ "version": "0.1.0",
4
+ "description": "A small CLI that turns repository maintenance signals into an actionable OSS health report.",
5
+ "type": "module",
6
+ "license": "MIT",
7
+ "bin": {
8
+ "oss-pulse": "dist/cli.js"
9
+ },
10
+ "files": [
11
+ "dist",
12
+ "docs",
13
+ "README.md",
14
+ "CHANGELOG.md",
15
+ "CONTRIBUTING.md",
16
+ "CODE_OF_CONDUCT.md",
17
+ "SECURITY.md",
18
+ "LICENSE",
19
+ "action.yml"
20
+ ],
21
+ "scripts": {
22
+ "build": "tsc -p tsconfig.build.json",
23
+ "check": "npm run lint && npm run typecheck && npm test",
24
+ "lint": "biome check .",
25
+ "test": "rm -rf .tmp/test-dist && tsc -p tsconfig.test.json && node --test .tmp/test-dist/tests/*.test.js",
26
+ "typecheck": "tsc --noEmit -p tsconfig.json"
27
+ },
28
+ "dependencies": {
29
+ "commander": "^12.1.0",
30
+ "zod": "^3.23.8"
31
+ },
32
+ "devDependencies": {
33
+ "@biomejs/biome": "^1.9.4",
34
+ "@types/node": "^22.10.1",
35
+ "typescript": "^5.7.2"
36
+ },
37
+ "engines": {
38
+ "node": ">=20.0.0"
39
+ }
40
+ }