Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Code owners are requested for review on every pull request that touches their paths.
# Later rules take precedence over earlier ones.

# Default: everything in this repository
* @dwikiriyadi

# Documentation sites
/docs/ @dwikiriyadi

# CI, repository settings and community files
/.github/ @dwikiriyadi

# Submodule pointers (normally moved by Dependabot)
/kotlin-lib @dwikiriyadi
/dart-lib @dwikiriyadi
81 changes: 81 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
# Contributor Covenant Code of Conduct

## Our Pledge

We as members, contributors, and leaders pledge to make participation in our community a harassment‑free experience for everyone, regardless of age, body size, visible or invisible disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio‑economic status, nationality, personal appearance, race, religion, or sexual identity and orientation.

We pledge to act and interact in ways that contribute to an open, welcoming, diverse, inclusive, and healthy community.

## Our Standards

Examples of behavior that contributes to a positive environment for our community include:

- Demonstrating empathy and kindness toward other people
- Being respectful of differing opinions, viewpoints, and experiences
- Giving and gracefully accepting constructive feedback
- Accepting responsibility and apologizing to those affected by our mistakes, and learning from the experience
- Focusing on what is best not just for us as individuals, but for the overall community

Examples of unacceptable behavior include:

- The use of sexualized language or imagery, and sexual attention or advances of any kind
- Trolling, insulting or derogatory comments, and personal or political attacks
- Public or private harassment
- Publishing others’ private information, such as a physical or email address, without their explicit permission
- Other conduct which could reasonably be considered inappropriate in a professional setting

## Enforcement Responsibilities

Community leaders are responsible for clarifying and enforcing our standards of acceptable behavior and will take appropriate and fair corrective action in response to any behavior that they deem inappropriate, threatening, offensive, or harmful.

Community leaders have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, and will communicate reasons for moderation decisions when appropriate.

## Scope

This Code of Conduct applies within all community spaces, and also applies when an individual is officially representing the community in public spaces. Examples of representing our community include using an official e‑mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event.

## Enforcement

If you experience or witness unacceptable behavior, report it to the project team at contact@srctool.com.

When reporting, please include (if possible):
- A description of what happened and why it is unacceptable
- Links, issue numbers, commit references, or screenshots (if available)
- Date/time and location (repository, issue/PR link, chat, etc.)
- Your preferred contact information for follow-up

For non-sensitive concerns, you may also open an issue referencing "Code of Conduct" for transparency.

We will review and investigate all reports promptly and fairly. You can expect an initial response within 72 hours. We may ask for additional information to aid the investigation.

We will keep reports confidential to the extent possible and share details only with individuals who need the information to resolve the issue. All community leaders must respect the privacy and security of reporters.

If you are in immediate danger, contact local emergency services first.

## Enforcement Guidelines

Community leaders will follow these Community Impact Guidelines in determining the consequences for any action they deem in violation of this Code of Conduct:

1. Correction
- Community Impact: Use of inappropriate language or other behavior deemed unprofessional or unwelcome in the community.
- Consequence: A private, written warning from community leaders, providing clarity around the nature of the violation and an explanation of why the behavior was inappropriate. A public apology may be requested.

2. Warning
- Community Impact: A violation through a single incident or series of actions.
- Consequence: A warning with consequences for continued behavior. No interaction with the people involved, including unsolicited interaction with those enforcing the Code of Conduct, for a specified period of time. This includes avoiding interactions in community spaces as well as external channels like social media. Violating these terms may lead to a temporary or permanent ban.

3. Temporary Ban
- Community Impact: A serious violation of community standards, including sustained inappropriate behavior.
- Consequence: A temporary ban from any sort of interaction or public communication with the community for a specified period of time. No public or private interaction with the people involved, including unsolicited interaction with those enforcing the Code of Conduct, is allowed during this period. Violating these terms may lead to a permanent ban.

4. Permanent Ban
- Community Impact: Demonstrating a pattern of violation of community standards, including sustained inappropriate behavior, harassment of an individual, or aggression toward or disparagement of classes of individuals.
- Consequence: A permanent ban from any sort of public interaction within the community.

## Attribution

This Code of Conduct is adapted from the Contributor Covenant, version 2.1, available at https://www.contributor-covenant.org/version/2/1/code_of_conduct.html

Community Impact Guidelines were inspired by Mozilla’s code of conduct enforcement ladder.

For answers to common questions about this code of conduct, see the FAQ at https://www.contributor-covenant.org/faq. Translations are available at https://www.contributor-covenant.org/translations.
21 changes: 17 additions & 4 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,20 @@ Run a site locally (Node 20+), from `docs/internal/` or `docs/usage/`:
- Start dev server: `npm run start`
- Build static site: `npm run build`

The contributor site runs on port 3000 and the usage site on 3001. The usage site's Contributing link goes to the contributor site: set `SINEW_INTERNAL_URL` (default `http://localhost:3000`) when building it, and each site's own address with `SINEW_INTERNAL_URL` / `SINEW_USAGE_URL`. VS Code launch configurations for both are in `.vscode/`.

Regenerate the Guide after editing the design notes (from `docs/internal/`): `python3 scripts/sync_vault.py <path-to-sinew-design-notes>`.

### Deployment
Both sites are deployed to Cloudflare Pages by `.github/workflows/docs.yml` when `docs/` changes on `main` in `srctool/sinew`. Pull requests (including from forks) only build them.

| Site | Folder | Cloudflare Pages project | Domain |
|---|---|---|---|
| Contributor docs | `docs/internal/` | `sinew-dev` | https://sinew-dev.srctool.com |
| Usage docs | `docs/usage/` | `sinew` | https://sinew.srctool.com |

The workflow needs two repository secrets: `CLOUDFLARE_API_TOKEN` (a token with *Account → Cloudflare Pages → Edit*) and `CLOUDFLARE_ACCOUNT_ID`.

## Workflow
Sinew is trunk-based: `main` is the only long-lived branch, and every change reaches it through a squash-merged PR. The full guide is the [Git workflow](https://sinew-dev.srctool.com/contributing/git-workflow) page.

Expand Down Expand Up @@ -66,11 +80,10 @@ Tip for GitKraken users: GitKraken uses the first line of the commit message as
- Keep the PR title in Conventional Commits format and ensure the description explains the "what" and "why`. Maintainers may edit the final message for clarity.

## Code of Conduct
Participation in this project is governed by the Code of Conduct in each submodule:
- Kotlin: `kotlin-lib/CODE_OF_CONDUCT.md`
- Dart: `dart-lib/CODE_OF_CONDUCT.md`
Participation in this project is governed by the [Code of Conduct](CODE_OF_CONDUCT.md). The same code applies in `sinew-kotlin` and `sinew-dart`. To report a conduct issue, email contact@srctool.com.

For sensitive reports, email contact@srctool.com.
## Security
Please don't report a vulnerability in a public issue. See [SECURITY.md](SECURITY.md) for how to report one privately.

## License
- Root repo (docs & concepts): MIT (see LICENSE)
Expand Down
Loading
Loading