Skip to content

Commit 084f334

Browse files
authored
[codex] ship OSS release surface and publish workflow (#3)
* chore: ship oss release surface * chore: polish npm package metadata * fix: make size workflow emit valid json --------- Co-authored-by: Rajender Joshi <2614954+crup@users.noreply.github.com>
1 parent 51c7d23 commit 084f334

45 files changed

Lines changed: 8299 additions & 119 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.changeset/bright-mangos-kneel.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@crup/port': patch
3+
---
4+
5+
Add the OSS release surface with Pages demo, docs, release workflows, and improved npm-facing documentation.

.changeset/config.json

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
{
2+
"$schema": "https://unpkg.com/@changesets/config@3.1.1/schema.json",
3+
"changelog": false,
4+
"commit": false,
5+
"fixed": [],
6+
"linked": [],
7+
"access": "public",
8+
"baseBranch": "main",
9+
"updateInternalDependencies": "patch",
10+
"ignore": []
11+
}

.editorconfig

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
root = true
2+
3+
[*]
4+
charset = utf-8
5+
end_of_line = lf
6+
indent_style = space
7+
indent_size = 2
8+
insert_final_newline = true
9+
trim_trailing_whitespace = true
10+
11+
[*.md]
12+
trim_trailing_whitespace = false

.github/CODEOWNERS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
* @crup
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
name: Bug report
2+
description: Report a defect in the runtime, demo, or release flow.
3+
title: "[Bug]: "
4+
labels:
5+
- bug
6+
body:
7+
- type: textarea
8+
id: summary
9+
attributes:
10+
label: Summary
11+
description: What broke?
12+
validations:
13+
required: true
14+
- type: textarea
15+
id: reproduction
16+
attributes:
17+
label: Reproduction
18+
description: Exact steps, including host and child origins if relevant.
19+
validations:
20+
required: true
21+
- type: textarea
22+
id: expected
23+
attributes:
24+
label: Expected behavior
25+
validations:
26+
required: true
27+
- type: dropdown
28+
id: mode
29+
attributes:
30+
label: Runtime mode
31+
options:
32+
- inline
33+
- modal
34+
- both
35+
- not sure
36+
validations:
37+
required: true
38+
- type: input
39+
id: environment
40+
attributes:
41+
label: Environment
42+
description: Browser, OS, Node version, package version.

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
blank_issues_enabled: false
2+
contact_links:
3+
- name: Security report
4+
url: https://github.com/crup/port/blob/main/SECURITY.md
5+
about: Report vulnerabilities privately instead of filing a public issue.
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
name: Feature request
2+
description: Propose a new capability or improvement.
3+
title: "[Feature]: "
4+
labels:
5+
- enhancement
6+
body:
7+
- type: textarea
8+
id: problem
9+
attributes:
10+
label: Problem
11+
description: What integration pain are you trying to remove?
12+
validations:
13+
required: true
14+
- type: textarea
15+
id: proposal
16+
attributes:
17+
label: Proposal
18+
description: What should the library do?
19+
validations:
20+
required: true
21+
- type: textarea
22+
id: alternatives
23+
attributes:
24+
label: Alternatives considered

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
## Summary
2+
3+
Describe the change in terms of user-facing or consumer-facing behavior.
4+
5+
## Checks
6+
7+
- [ ] `npm run check`
8+
- [ ] `npm run demo:build`
9+
- [ ] Added or updated tests when behavior changed
10+
- [ ] Added a changeset if the published package changed
11+
- [ ] Updated docs/examples if the public API or workflow changed
12+
13+
## Risk Notes
14+
15+
Call out any lifecycle, protocol, origin, sizing, or release risk here.

.github/dependabot.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: npm
4+
directory: /
5+
schedule:
6+
interval: weekly
7+
open-pull-requests-limit: 10
8+
- package-ecosystem: github-actions
9+
directory: /
10+
schedule:
11+
interval: weekly

.github/workflows/ci.yml

Lines changed: 60 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,73 @@
11
name: CI
22

33
on:
4-
push:
5-
branches:
6-
- main
74
pull_request:
5+
push:
86
branches:
97
- main
108

9+
permissions:
10+
contents: read
11+
1112
jobs:
12-
test:
13+
verify:
1314
runs-on: ubuntu-latest
1415
steps:
15-
- uses: actions/checkout@v4
16-
- uses: actions/setup-node@v4
16+
- name: 1. Checkout source
17+
uses: actions/checkout@v4
18+
19+
- name: 2. Setup Node 24
20+
uses: actions/setup-node@v4
1721
with:
1822
node-version: 24
1923
cache: npm
20-
- run: npm install
21-
- run: npm run typecheck
22-
- run: npm test
23-
- run: npm run build
24+
25+
- name: 3. Install dependencies
26+
id: install
27+
run: npm ci
28+
29+
- name: 4. Lint
30+
id: lint
31+
run: npm run lint
32+
33+
- name: 5. Typecheck
34+
id: typecheck
35+
run: npm run typecheck
36+
37+
- name: 6. Test
38+
id: test
39+
run: npm test
40+
41+
- name: 7. Build package
42+
id: build
43+
run: npm run build
44+
45+
- name: 8. Build demo
46+
id: demo
47+
run: npm run demo:build
48+
49+
- name: 9. Check bundle size
50+
id: size
51+
run: npm run size
52+
53+
- name: 10. Pack dry run
54+
id: pack
55+
run: npm pack --dry-run
56+
57+
- name: CI summary
58+
if: always()
59+
run: |
60+
{
61+
echo "## CI pipeline"
62+
echo
63+
echo "| Stage | Result |"
64+
echo "| --- | --- |"
65+
echo "| Install | ${{ steps.install.outcome }} |"
66+
echo "| Lint | ${{ steps.lint.outcome }} |"
67+
echo "| Typecheck | ${{ steps.typecheck.outcome }} |"
68+
echo "| Tests | ${{ steps.test.outcome }} |"
69+
echo "| Package build | ${{ steps.build.outcome }} |"
70+
echo "| Demo build | ${{ steps.demo.outcome }} |"
71+
echo "| Bundle size | ${{ steps.size.outcome }} |"
72+
echo "| Pack dry run | ${{ steps.pack.outcome }} |"
73+
} >> "$GITHUB_STEP_SUMMARY"

0 commit comments

Comments
 (0)