Skip to content

Commit 230d2f8

Browse files
committed
Add community docs and automated GitHub releases
1 parent 26aa575 commit 230d2f8

15 files changed

Lines changed: 562 additions & 39 deletions
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
name: Bug report
2+
description: Report a defect in the extension
3+
title: "[Bug]: "
4+
labels:
5+
- bug
6+
body:
7+
- type: textarea
8+
id: summary
9+
attributes:
10+
label: Summary
11+
description: What went wrong?
12+
validations:
13+
required: true
14+
- type: textarea
15+
id: steps
16+
attributes:
17+
label: Steps to reproduce
18+
description: List the exact steps.
19+
placeholder: |
20+
1. Open page
21+
2. Open DevTools
22+
3. Switch to Error Report
23+
4. ...
24+
validations:
25+
required: true
26+
- type: textarea
27+
id: expected
28+
attributes:
29+
label: Expected behavior
30+
validations:
31+
required: true
32+
- type: textarea
33+
id: actual
34+
attributes:
35+
label: Actual behavior
36+
validations:
37+
required: true
38+
- type: input
39+
id: chrome_version
40+
attributes:
41+
label: Chrome version
42+
placeholder: "e.g. 145.0.0.0"
43+
- type: textarea
44+
id: notes
45+
attributes:
46+
label: Additional context
47+
description: Include screenshots or logs if needed.
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
name: Feature request
2+
description: Suggest an improvement
3+
title: "[Feature]: "
4+
labels:
5+
- enhancement
6+
body:
7+
- type: textarea
8+
id: problem
9+
attributes:
10+
label: Problem
11+
description: What problem are you trying to solve?
12+
validations:
13+
required: true
14+
- type: textarea
15+
id: proposal
16+
attributes:
17+
label: Proposed solution
18+
description: Describe the improvement you want.
19+
validations:
20+
required: true
21+
- type: textarea
22+
id: alternatives
23+
attributes:
24+
label: Alternatives considered
25+
- type: textarea
26+
id: context
27+
attributes:
28+
label: Additional context

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
## Summary
2+
3+
-
4+
5+
## Why
6+
7+
-
8+
9+
## Validation
10+
11+
- [ ] Reloaded the extension in `chrome://extensions`
12+
- [ ] Verified request selection and preview generation
13+
- [ ] Verified `复制 Markdown`
14+
- [ ] Verified `导出图片`
15+
- [ ] Ran `node --check .\panel\main.js`
16+
- [ ] Ran `node --check .\panel\report.js`
17+
18+
## Screenshots
19+
20+
-

.github/workflows/release.yml

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
tags:
6+
- "v*"
7+
workflow_dispatch:
8+
9+
permissions:
10+
contents: write
11+
12+
jobs:
13+
build-and-release:
14+
runs-on: windows-latest
15+
16+
steps:
17+
- name: Checkout
18+
uses: actions/checkout@v4
19+
20+
- name: Setup Node
21+
uses: actions/setup-node@v4
22+
with:
23+
node-version: "22"
24+
25+
- name: Generate icons
26+
shell: pwsh
27+
run: .\scripts\generate-icons.ps1
28+
29+
- name: Syntax check
30+
shell: pwsh
31+
run: |
32+
node --check .\panel\main.js
33+
node --check .\panel\report.js
34+
35+
- name: Build distribution
36+
shell: pwsh
37+
run: .\scripts\package-extension.ps1
38+
39+
- name: Read extension version
40+
id: version
41+
shell: pwsh
42+
run: |
43+
$manifest = Get-Content .\manifest.json -Raw | ConvertFrom-Json
44+
"version=$($manifest.version)" | Out-File -FilePath $env:GITHUB_OUTPUT -Encoding utf8 -Append
45+
46+
- name: Create GitHub Release
47+
uses: softprops/action-gh-release@v2
48+
with:
49+
generate_release_notes: true
50+
files: |
51+
release/network-error-reporter-${{ steps.version.outputs.version }}-unpacked.zip
52+
LICENSE
53+
README.md

CODE_OF_CONDUCT.md

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
# Contributor Covenant Code of Conduct
2+
3+
## Our Pledge
4+
5+
We as members, contributors, and maintainers pledge to make participation in our
6+
community a harassment-free experience for everyone, regardless of age, body
7+
size, visible or invisible disability, ethnicity, sex characteristics, gender
8+
identity and expression, level of experience, education, socio-economic status,
9+
nationality, personal appearance, race, religion, or sexual identity
10+
and orientation.
11+
12+
We pledge to act and interact in ways that contribute to an open, welcoming,
13+
diverse, inclusive, and healthy community.
14+
15+
## Our Standards
16+
17+
Examples of behavior that contributes to a positive environment for our
18+
community include:
19+
20+
- Demonstrating empathy and kindness toward other people
21+
- Being respectful of differing opinions, viewpoints, and experiences
22+
- Giving and gracefully accepting constructive feedback
23+
- Accepting responsibility and apologizing to those affected by our mistakes
24+
- Focusing on what is best not just for us as individuals, but for the
25+
overall community
26+
27+
Examples of unacceptable behavior include:
28+
29+
- The use of sexualized language or imagery, and sexual attention or
30+
advances of any kind
31+
- Trolling, insulting or derogatory comments, and personal or political attacks
32+
- Public or private harassment
33+
- Publishing others' private information, such as a physical or email
34+
address, without their explicit permission
35+
- Other conduct which could reasonably be considered inappropriate in a
36+
professional setting
37+
38+
## Enforcement Responsibilities
39+
40+
Community leaders are responsible for clarifying and enforcing our standards of
41+
acceptable behavior and will take appropriate and fair corrective action in
42+
response to any behavior that they deem inappropriate, threatening, offensive,
43+
or harmful.
44+
45+
## Scope
46+
47+
This Code of Conduct applies within all community spaces and also applies when
48+
an individual is officially representing the community in public spaces.
49+
50+
## Enforcement
51+
52+
Instances of abusive, harassing, or otherwise unacceptable behavior may be
53+
reported to the project maintainer.
54+
55+
## Attribution
56+
57+
This Code of Conduct is adapted from the Contributor Covenant, version 2.1,
58+
available at https://www.contributor-covenant.org/version/2/1/code_of_conduct.html.

CONTRIBUTING.md

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
# Contributing
2+
3+
Thanks for contributing to Network Error Reporter.
4+
5+
## Development setup
6+
7+
1. Clone the repository.
8+
2. Open `chrome://extensions`.
9+
3. Enable Developer Mode.
10+
4. Click `Load unpacked`.
11+
5. Select this project directory.
12+
6. Open any page's DevTools and switch to the `Error Report` panel.
13+
14+
## Project structure
15+
16+
- `panel/main.js`: panel interaction and rendering
17+
- `panel/report.js`: request normalization and report generation
18+
- `panel.html` / `panel.css`: panel UI
19+
- `scripts/`: packaging and asset generation helpers
20+
21+
## Before submitting a PR
22+
23+
1. Reload the extension in Chrome.
24+
2. Verify the core flow:
25+
- request list loads
26+
- `Fetch/XHR` filtering works
27+
- selecting a request updates the report preview
28+
- `复制 Markdown` works
29+
- `导出图片` can copy or download successfully
30+
3. Run syntax checks:
31+
32+
```powershell
33+
node --check .\panel\main.js
34+
node --check .\panel\report.js
35+
```
36+
37+
## Pull request expectations
38+
39+
- Keep changes focused.
40+
- Explain the user-facing impact.
41+
- Include verification steps.
42+
- Add screenshots for UI changes when relevant.
43+
44+
## Discussions
45+
46+
- Use Issues for bugs and feature requests.
47+
- Use pull requests for implementation proposals.

DATA_DISCLOSURE.md

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
# Data Disclosure Draft
2+
3+
Use this when filling Chrome Web Store privacy and data usage questions.
4+
5+
## Does the extension collect or transmit user data?
6+
7+
No remote collection or transmission is designed into the extension.
8+
9+
## What data does the extension process locally?
10+
11+
- network request metadata visible in Chrome DevTools
12+
- request and response headers
13+
- query params
14+
- request payloads
15+
- response bodies or summaries
16+
- current page URL
17+
- user-entered notes such as repro steps and remarks
18+
19+
## Is data sold to third parties?
20+
21+
No.
22+
23+
## Is data used for purposes unrelated to the extension's single purpose?
24+
25+
No.
26+
27+
## Is data used for creditworthiness or lending purposes?
28+
29+
No.
30+
31+
## Notes for reviewer / listing consistency
32+
33+
- the extension runs entirely inside Chrome DevTools
34+
- reports are generated locally
35+
- markdown copy and image export are local user-triggered actions
36+
- no analytics, telemetry, account system, or cloud sync is included

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2026 Rayner
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

0 commit comments

Comments
 (0)