Skip to content

Commit 1efec63

Browse files
authored
chore(community): add code of conduct, contributing guide, issue and PR templates (#84)
Closes all open items on GitHub's Community Standards checklist. README contributing section links to CONTRIBUTING.md.
1 parent 9fef48e commit 1efec63

6 files changed

Lines changed: 152 additions & 1 deletion

File tree

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
---
2+
name: Bug report
3+
about: Something decoded incorrectly or the tool broke
4+
labels: bug
5+
---
6+
7+
**What happened?**
8+
A clear description of the bug.
9+
10+
**Input type**
11+
- [ ] SAMLRequest
12+
- [ ] SAMLResponse
13+
- [ ] JWT
14+
- [ ] Other
15+
16+
**Steps to reproduce**
17+
1. Paste ...
18+
2. See ...
19+
20+
**Expected behavior**
21+
What did you expect to see?
22+
23+
**Actual behavior**
24+
What did you see instead?
25+
26+
**Environment**
27+
- Browser:
28+
- OS:
29+
30+
**Additional context**
31+
If you can share a sanitized/redacted example of the input that triggers the bug, that helps a lot. Remove any real credentials, user data, or sensitive attribute values before pasting.
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
---
2+
name: Feature request
3+
about: Suggest something for the identity community
4+
labels: enhancement
5+
---
6+
7+
**What problem does this solve?**
8+
Describe the IAM/identity workflow or use case this would improve.
9+
10+
**Proposed solution**
11+
What would you like to see?
12+
13+
**Alternatives considered**
14+
Any other approaches you thought about?
15+
16+
**Additional context**
17+
Links to relevant specs (SAML, OIDC, etc.), screenshots, or examples welcome.

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
## What does this PR do?
2+
3+
<!-- A short description of the change and why it's needed. -->
4+
5+
## Type of change
6+
7+
- [ ] Bug fix
8+
- [ ] New feature
9+
- [ ] Documentation update
10+
- [ ] Refactor / cleanup
11+
- [ ] Security improvement
12+
13+
## Checklist
14+
15+
- [ ] `npx tsc --noEmit` passes
16+
- [ ] `npm run lint` passes
17+
- [ ] `npm run coverage` passes with 100% coverage
18+
- [ ] Tests added or updated for any changed behavior
19+
- [ ] SECURITY.md updated if this affects security controls
20+
21+
## Notes for reviewer
22+
23+
<!-- Anything that would help the reviewer understand the change, trade-offs made, or areas to focus on. -->

CODE_OF_CONDUCT.md

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Code of Conduct
2+
3+
## Our pledge
4+
5+
In the interest of fostering an open and welcoming environment, contributors and maintainers pledge to make participation in this project a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.
6+
7+
## Our standards
8+
9+
Examples of behavior that contributes to a positive environment:
10+
11+
- Using welcoming and inclusive language
12+
- Being respectful of differing viewpoints and experience
13+
- Gracefully accepting constructive criticism
14+
- Focusing on what is best for the community
15+
- Showing empathy towards other community members
16+
17+
Examples of unacceptable behavior:
18+
19+
- The use of sexualized language or imagery and unwelcome sexual attention or advances
20+
- Trolling, insulting or derogatory comments, and personal or political attacks
21+
- Public or private harassment
22+
- Publishing others' private information without explicit permission
23+
- Other conduct which could reasonably be considered inappropriate in a professional setting
24+
25+
## Enforcement
26+
27+
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the maintainer at **me@kellenmurphy.com**. All complaints will be reviewed and investigated and will result in a response that is deemed necessary and appropriate to the circumstances.
28+
29+
## Attribution
30+
31+
This Code of Conduct is adapted from the [Contributor Covenant](https://www.contributor-covenant.org), version 2.1.

CONTRIBUTING.md

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
# Contributing to samlguy
2+
3+
Thanks for your interest. samlguy is a focused tool for the IAM/identity community, so contributions that serve that audience are most welcome.
4+
5+
## Before you start
6+
7+
For anything beyond a small bug fix, open an issue first to discuss the change. This avoids wasted effort if the direction doesn't fit the project's scope.
8+
9+
**Security vulnerabilities:** do not open a public issue. See [SECURITY.md](SECURITY.md) for the disclosure process.
10+
11+
## Development setup
12+
13+
```bash
14+
git clone https://github.com/kellenmurphy/samlguy.git
15+
cd samlguy
16+
npm install
17+
npm run dev
18+
```
19+
20+
Requires Node 20+.
21+
22+
## Standards
23+
24+
- **TypeScript strict mode** — no `any`, no type assertions without justification
25+
- **Test coverage** — all `src/lib/` and `src/routes/api/` modules must maintain 100% statement, branch, function, and line coverage; run `npm run coverage` to check
26+
- **Lint**`npm run lint` must pass with no errors
27+
- **Commit messages** — follow [Conventional Commits](https://www.conventionalcommits.org/): `feat:`, `fix:`, `docs:`, `chore:`, etc. Release notes are generated from commit messages.
28+
29+
## Submitting a PR
30+
31+
1. Fork the repo and create a branch from `main`
32+
2. Make your changes, add or update tests
33+
3. Run `npx tsc --noEmit && npm run lint && npm run coverage` — all must pass
34+
4. Open a pull request with a clear description of what changed and why
35+
5. All CI checks must pass before review
36+
37+
## What fits this project
38+
39+
- Improvements to SAML, JWT, or X.509 parsing accuracy
40+
- New identity protocol support (OIDC, WS-Fed, SCIM, etc.)
41+
- Accessibility and usability improvements
42+
- Documentation improvements
43+
- Bug fixes
44+
45+
## What probably doesn't fit
46+
47+
- General-purpose web app features unrelated to identity
48+
- External service integrations that require sending token data off-device
49+
- Changes that weaken the client-side-only privacy guarantee

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ src/
111111

112112
## Contributing
113113

114-
This started as a personal passion project for [The SAML Guy](https://kellenmurphy.com) to mess with a nifty tech stack (Svelte). Bug reports and suggestions are welcome via [GitHub Issues](https://github.com/kellenmurphy/samlguy/issues). For security vulnerabilities, please follow the [responsible disclosure process](SECURITY.md) rather than opening a public issue.
114+
This started as a personal passion project for [The SAML Guy](https://kellenmurphy.com) to mess with a nifty tech stack (Svelte). Bug reports and suggestions are welcome via [GitHub Issues](https://github.com/kellenmurphy/samlguy/issues). See [CONTRIBUTING.md](CONTRIBUTING.md) for development setup and contribution guidelines. For security vulnerabilities, please follow the [responsible disclosure process](SECURITY.md) rather than opening a public issue.
115115

116116

117117
## License

0 commit comments

Comments
 (0)