31 Commits

Author SHA1 Message Date
minori 514af3b3f5 deps: update astro-mermaid to 1.3.1
Node.js CI / CI (pull_request) Successful in 1m15s
Security Scan and Upload / Security & DefectDojo Upload (pull_request) Successful in 1m28s
2026-02-03 19:11:19 -08:00
naomi ddaeb72638 feat: new theme
Node.js CI / CI (push) Successful in 1m40s
Security Scan and Upload / Security & DefectDojo Upload (push) Successful in 1m46s
2026-01-29 17:35:10 -08:00
naomi 0ece797eee feat: add documentation for our support forum (#21)
Security Scan and Upload / Security & DefectDojo Upload (push) Successful in 1m45s
Node.js CI / CI (push) Successful in 1m50s
### Explanation

_No response_

### Issue

_No response_

### Attestations

- [ ] I have read and agree to the [Code of Conduct](https://docs.nhcarrigan.com/community/coc/)
- [ ] I have read and agree to the [Community Guidelines](https://docs.nhcarrigan.com/community/guide/).
- [ ] My contribution complies with the [Contributor Covenant](https://docs.nhcarrigan.com/dev/covenant/).

### Dependencies

- [ ] I have pinned the dependencies to a specific patch version.

### Style

- [ ] I have run the linter and resolved any errors.
- [ ] My pull request uses an appropriate title, matching the conventional commit standards.
- [ ] My scope of feat/fix/chore/etc. correctly matches the nature of changes in my pull request.

### Tests

- [ ] My contribution adds new code, and I have added tests to cover it.
- [ ] My contribution modifies existing code, and I have updated the tests to reflect these changes.
- [ ] All new and existing tests pass locally with my changes.
- [ ] Code coverage remains at or above the configured threshold.

### Documentation

_No response_

### Versioning

_No response_

Reviewed-on: #21
Co-authored-by: Naomi Carrigan <commits@nhcarrigan.com>
Co-committed-by: Naomi Carrigan <commits@nhcarrigan.com>
2026-01-26 13:50:28 -08:00
hikari caffb14deb docs: update README to standard template
Node.js CI / CI (push) Failing after 23s
Security Scan and Upload / Security & DefectDojo Upload (push) Successful in 1m3s
2026-01-26 12:42:36 -08:00
naomi 9bdd7b8fa9 feat: add fan art policy
Node.js CI / CI (push) Failing after 20s
Security Scan and Upload / Security & DefectDojo Upload (push) Successful in 1m36s
2025-12-30 16:51:06 -08:00
naomi 5116bca086 feat: automated upload of .gitea/workflows/ci.yml
Node.js CI / CI (push) Successful in 1m0s
Security Scan and Upload / Security & DefectDojo Upload (push) Successful in 1m1s
2025-12-22 19:41:36 +01:00
naomi cc28f94a7a feat: automated upload of .gitea/workflows/ci.yml
Node.js CI / CI (push) Failing after 9s
Security Scan and Upload / Security & DefectDojo Upload (push) Successful in 1m10s
2025-12-22 19:35:05 +01:00
naomi 9013d181b4 feat: automated upload of .gitea/workflows/ci.yml
Node.js CI / Lint and Test (push) Failing after 2s
Security Scan and Upload / Security & DefectDojo Upload (push) Successful in 1m0s
2025-12-22 19:24:57 +01:00
naomi c2e25035e2 feat: automated upload of .npmrc
Node.js CI / Lint and Test (push) Successful in 58s
Security Scan and Upload / Security & DefectDojo Upload (push) Successful in 1m6s
2025-12-22 19:15:54 +01:00
naomi c5a329d104 feat: we do even more things (#20)
Node.js CI / Lint and Test (push) Successful in 57s
Security Scan and Upload / Security & DefectDojo Upload (push) Successful in 1m23s
### Explanation

_No response_

### Issue

Closes #18

### Attestations

- [ ] I have read and agree to the [Code of Conduct](https://docs.nhcarrigan.com/community/coc/)
- [ ] I have read and agree to the [Community Guidelines](https://docs.nhcarrigan.com/community/guide/).
- [ ] My contribution complies with the [Contributor Covenant](https://docs.nhcarrigan.com/dev/covenant/).

### Dependencies

- [ ] I have pinned the dependencies to a specific patch version.

### Style

- [ ] I have run the linter and resolved any errors.
- [ ] My pull request uses an appropriate title, matching the conventional commit standards.
- [ ] My scope of feat/fix/chore/etc. correctly matches the nature of changes in my pull request.

### Tests

- [ ] My contribution adds new code, and I have added tests to cover it.
- [ ] My contribution modifies existing code, and I have updated the tests to reflect these changes.
- [ ] All new and existing tests pass locally with my changes.
- [ ] Code coverage remains at or above the configured threshold.

### Documentation

_No response_

### Versioning

_No response_

Reviewed-on: #20
Co-authored-by: Naomi Carrigan <commits@nhcarrigan.com>
Co-committed-by: Naomi Carrigan <commits@nhcarrigan.com>
2025-12-18 05:21:22 +01:00
naomi d0401ad611 feat: automated upload of .gitea/workflows/security.yml
Node.js CI / Lint and Test (push) Successful in 1m0s
Security Scan and Upload / Security & DefectDojo Upload (push) Successful in 1m23s
2025-12-18 03:07:49 +01:00
naomi 6b55719c04 feat: automated upload of .gitea/workflows/security.yml
Node.js CI / Lint and Test (push) Successful in 1m12s
Security Scan and Upload / Security & DefectDojo Upload (push) Successful in 1m17s
2025-12-17 23:25:47 +01:00
naomi b718aa650b feat: overhaul many things (#17)
Node.js CI / Lint and Test (push) Successful in 58s
Security Scan / Security Audit (push) Failing after 5m2s
### Explanation

_No response_

### Issue

_No response_

### Attestations

- [ ] I have read and agree to the [Code of Conduct](https://docs.nhcarrigan.com/community/coc/)
- [ ] I have read and agree to the [Community Guidelines](https://docs.nhcarrigan.com/community/guide/).
- [ ] My contribution complies with the [Contributor Covenant](https://docs.nhcarrigan.com/dev/covenant/).

### Dependencies

- [ ] I have pinned the dependencies to a specific patch version.

### Style

- [ ] I have run the linter and resolved any errors.
- [ ] My pull request uses an appropriate title, matching the conventional commit standards.
- [ ] My scope of feat/fix/chore/etc. correctly matches the nature of changes in my pull request.

### Tests

- [ ] My contribution adds new code, and I have added tests to cover it.
- [ ] My contribution modifies existing code, and I have updated the tests to reflect these changes.
- [ ] All new and existing tests pass locally with my changes.
- [ ] Code coverage remains at or above the configured threshold.

### Documentation

_No response_

### Versioning

_No response_

Reviewed-on: #17
Co-authored-by: Naomi Carrigan <commits@nhcarrigan.com>
Co-committed-by: Naomi Carrigan <commits@nhcarrigan.com>
2025-12-16 06:15:26 +01:00
naomi b1cc9800b3 feat: launch four new services (#16)
Node.js CI / Lint and Test (push) Successful in 53s
Security Scan / Security Audit (push) Failing after 5m15s
### Explanation

_No response_

### Issue

_No response_

### Attestations

- [ ] I have read and agree to the [Code of Conduct](https://docs.nhcarrigan.com/community/coc/)
- [ ] I have read and agree to the [Community Guidelines](https://docs.nhcarrigan.com/community/guide/).
- [ ] My contribution complies with the [Contributor Covenant](https://docs.nhcarrigan.com/dev/covenant/).

### Dependencies

- [ ] I have pinned the dependencies to a specific patch version.

### Style

- [ ] I have run the linter and resolved any errors.
- [ ] My pull request uses an appropriate title, matching the conventional commit standards.
- [ ] My scope of feat/fix/chore/etc. correctly matches the nature of changes in my pull request.

### Tests

- [ ] My contribution adds new code, and I have added tests to cover it.
- [ ] My contribution modifies existing code, and I have updated the tests to reflect these changes.
- [ ] All new and existing tests pass locally with my changes.
- [ ] Code coverage remains at or above the configured threshold.

### Documentation

_No response_

### Versioning

_No response_

Reviewed-on: #16
Co-authored-by: Naomi Carrigan <commits@nhcarrigan.com>
Co-committed-by: Naomi Carrigan <commits@nhcarrigan.com>
2025-12-13 05:42:46 +01:00
naomi 010653545c feat: automated upload of .gitea/workflows/security.yml
Node.js CI / Lint and Test (push) Successful in 56s
Security Scan / Security Audit (push) Failing after 5m25s
2025-12-12 03:37:35 +01:00
naomi 8692d866fc feat: automated upload of .gitea/workflows/security.yml
Node.js CI / Lint and Test (push) Successful in 58s
Security Scan / Trivy Security Scan (push) Failing after 4m46s
2025-12-11 20:11:50 +01:00
naomi 4fc00b36a8 feat: new analytics version
Node.js CI / Lint and Test (push) Successful in 51s
2025-12-10 19:27:29 -08:00
naomi 457354e52b feat: update all forms, tweak some policies (#15)
Node.js CI / Lint and Test (push) Successful in 54s
### Explanation

_No response_

### Issue

_No response_

### Attestations

- [x] I have read and agree to the [Code of Conduct](https://docs.nhcarrigan.com/community/coc/)
- [x] I have read and agree to the [Community Guidelines](https://docs.nhcarrigan.com/community/guide/).
- [x] My contribution complies with the [Contributor Covenant](https://docs.nhcarrigan.com/dev/covenant/).

### Dependencies

- [ ] I have pinned the dependencies to a specific patch version.

### Style

- [x] I have run the linter and resolved any errors.
- [x] My pull request uses an appropriate title, matching the conventional commit standards.
- [x] My scope of feat/fix/chore/etc. correctly matches the nature of changes in my pull request.

### Tests

- [ ] My contribution adds new code, and I have added tests to cover it.
- [ ] My contribution modifies existing code, and I have updated the tests to reflect these changes.
- [ ] All new and existing tests pass locally with my changes.
- [ ] Code coverage remains at or above the configured threshold.

### Documentation

_No response_

### Versioning

_No response_

Reviewed-on: #15
Co-authored-by: Naomi Carrigan <commits@nhcarrigan.com>
Co-committed-by: Naomi Carrigan <commits@nhcarrigan.com>
2025-12-10 02:23:03 +01:00
Naomi Carrigan ff0383788c chore: icon
Node.js CI / Lint and Test (push) Failing after 2m43s
2025-11-15 20:37:59 -08:00
naomi f587ef2506 chore: remove guild wars 2 from staff training and hierarchy
Node.js CI / Lint and Test (push) Failing after 1m48s
2025-11-15 09:30:07 -08:00
naomi 7bfff6a4f0 feat: overhaul mentorship programme
Node.js CI / Lint and Test (push) Successful in 1m42s
2025-11-14 15:32:19 -08:00
naomi f8f787bde9 feat: time for another audit/overhaul/revamp (#13)
Node.js CI / Lint and Test (push) Successful in 1m56s
### Explanation

_No response_

### Issue

Closes #11

### Attestations

- [ ] I have read and agree to the [Code of Conduct](https://docs.nhcarrigan.com/community/coc/)
- [ ] I have read and agree to the [Community Guidelines](https://docs.nhcarrigan.com/community/guide/).
- [ ] My contribution complies with the [Contributor Covenant](https://docs.nhcarrigan.com/dev/covenant/).

### Dependencies

- [ ] I have pinned the dependencies to a specific patch version.

### Style

- [ ] I have run the linter and resolved any errors.
- [ ] My pull request uses an appropriate title, matching the conventional commit standards.
- [ ] My scope of feat/fix/chore/etc. correctly matches the nature of changes in my pull request.

### Tests

- [ ] My contribution adds new code, and I have added tests to cover it.
- [ ] My contribution modifies existing code, and I have updated the tests to reflect these changes.
- [ ] All new and existing tests pass locally with my changes.
- [ ] Code coverage remains at or above the configured threshold.

### Documentation

_No response_

### Versioning

_No response_

Reviewed-on: #13
Co-authored-by: Naomi Carrigan <commits@nhcarrigan.com>
Co-committed-by: Naomi Carrigan <commits@nhcarrigan.com>
2025-11-13 21:59:23 -08:00
naomi 78ea7cc209 fix: spelling
Node.js CI / Lint and Test (push) Successful in 1m46s
2025-11-12 20:31:35 -08:00
naomi 6b482ec567 feat: add project documentation for Saisoku, Tyche, and Vivicrea
Node.js CI / Lint and Test (push) Failing after 33s
2025-11-12 20:27:00 -08:00
naomi fd1f3ff7bc feat: revert font size change 2025-11-12 20:11:52 -08:00
naomi 0daef2fdc6 feat: increase font size
Node.js CI / Lint and Test (push) Failing after 35s
2025-11-10 09:50:11 -08:00
naomi 1ad784344c feat: add new projects to documentation
Node.js CI / Lint and Test (push) Failing after 34s
2025-10-31 21:27:00 -07:00
naomi cee172a5d6 feat: port over random docs that can be public now
Node.js CI / Lint and Test (push) Successful in 1m41s
2025-10-29 20:11:13 -07:00
naomi 2d3d684894 feat: migrate mentorship wiki 2025-10-29 19:53:22 -07:00
naomi 4298548347 feat: nav styling
Node.js CI / Lint and Test (push) Successful in 1m41s
2025-10-29 18:59:00 -07:00
naomi b754503317 feat: document all products, write tests (#12)
Node.js CI / Lint and Test (push) Successful in 1m43s
### Explanation

_No response_

### Issue

_No response_

### Attestations

- [x] I have read and agree to the [Code of Conduct](https://docs.nhcarrigan.com/community/coc/)
- [x] I have read and agree to the [Community Guidelines](https://docs.nhcarrigan.com/community/guide/).
- [x] My contribution complies with the [Contributor Covenant](https://docs.nhcarrigan.com/dev/covenant/).

### Dependencies

- [x] I have pinned the dependencies to a specific patch version.

### Style

- [x] I have run the linter and resolved any errors.
- [x] My pull request uses an appropriate title, matching the conventional commit standards.
- [x] My scope of feat/fix/chore/etc. correctly matches the nature of changes in my pull request.

### Tests

- [x] My contribution adds new code, and I have added tests to cover it.
- [x] My contribution modifies existing code, and I have updated the tests to reflect these changes.
- [x] All new and existing tests pass locally with my changes.
- [x] Code coverage remains at or above the configured threshold.

### Documentation

_No response_

### Versioning

_No response_

Reviewed-on: #12
Co-authored-by: Naomi Carrigan <commits@nhcarrigan.com>
Co-committed-by: Naomi Carrigan <commits@nhcarrigan.com>
2025-10-29 18:55:38 -07:00
194 changed files with 118662 additions and 12425 deletions
+53 -3
View File
@@ -12,8 +12,8 @@
"bash"
],
"ignoreRegExpList": [
"```[\\s\\S]*?```", // Ignores multi-line code blocks in Markdown
"`[^`\n]+`" // Ignores inline code blocks
"```[\\s\\S]*?```",
"`[^`\n]+`"
],
"ignoreWords": [
"nhcarrigan",
@@ -32,22 +32,39 @@
"Ghostty",
"Amberol",
"Musicolet",
"wifi"
"wifi",
"neopronouns",
"linters",
"misgendered"
],
"words": [
"Abalise",
"Aeris",
"Alouette",
"Amari",
"Amirei",
"atproto",
"Aurelia",
"Aureline",
"bannable",
"Becca",
"Beccalia",
"Caelia",
"Calenelle",
"Callista",
"CCPA",
"Celestine",
"Čeština",
"CFAA",
"Chibika",
"CPACC",
"cuda",
"Dansk",
"Eclaire",
"Eirene",
"Elaria",
"Elowyn",
"Elunara",
"equivalencies",
"escalatory",
"excludable",
@@ -55,20 +72,42 @@
"faers",
"Fediverse",
"Français",
"genai",
"Gitea",
"Godot",
"Heroku",
"Hikari",
"incentivising",
"Isolda",
"Italiano",
"ITAR",
"Iuvo",
"Jessara",
"KADOKAWA",
"Keiko",
"LGBTQ",
"Lietuvių",
"Liora",
"Lyria",
"Maribelle",
"Meliora",
"Meridia",
"MERN",
"MEVN",
"minimis",
"Mommy",
"NAMI",
"NCMEC",
"Nederlands",
"Neurodivergence",
"Nomena",
"NSFW",
"Nymira",
"OFAC",
"Ollama",
"Oriana",
"Pavelle",
"PERN",
"PIPEDA",
"Polski",
"polycule",
@@ -77,16 +116,27 @@
"Reddiquette",
"Română",
"Rosalia",
"Saisoku",
"Sakura",
"Serenya",
"Sorielle",
"Suomi",
"Svenska",
"Sylvara",
"Taryne",
"Tessara",
"Thalassa",
"Thessalia",
"Türkçe",
"Umbrelle",
"Veluna",
"Verena",
"Vitalia",
"Vivicrea",
"Vivienne",
"vtubing",
"WCAG",
"Zephra",
"zirs",
"Ελληνικά",
"Български",
+14 -5
View File
@@ -8,22 +8,31 @@ on:
- main
jobs:
lint:
name: Lint and Test
ci:
name: CI
runs-on: ubuntu-latest
steps:
- name: Checkout Source Files
uses: actions/checkout@v4
- name: Use Node.js v22
- name: Use Node.js v24
uses: actions/setup-node@v4
with:
node-version: 22
node-version: 24
- name: Setup pnpm
uses: pnpm/action-setup@v2
with:
version: 9
version: 10
- name: Ensure Dependencies are Pinned
uses: naomi-lgbt/dependency-pin-check@main
with:
language: javascript
dev-dependencies: true
peer-dependencies: true
optional-dependencies: true
- name: Install Dependencies
run: pnpm install
+177
View File
@@ -0,0 +1,177 @@
name: Security Scan and Upload
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
schedule:
- cron: '0 0 * * 1'
workflow_dispatch:
jobs:
security-audit:
name: Security & DefectDojo Upload
runs-on: ubuntu-latest
continue-on-error: true
steps:
- name: Checkout code
uses: actions/checkout@v4
# --- AUTO-SETUP PROJECT ---
- name: Ensure DefectDojo Product Exists
env:
DD_URL: ${{ secrets.DD_URL }}
DD_TOKEN: ${{ secrets.DD_TOKEN }}
PRODUCT_NAME: ${{ github.repository }}
PRODUCT_TYPE_ID: 1
run: |
sudo apt-get install jq -y > /dev/null
echo "Checking connection to $DD_URL..."
# Check if product exists - capture HTTP code to debug connection issues
RESPONSE=$(curl --write-out "%{http_code}" --silent --output /tmp/response.json \
-H "Authorization: Token $DD_TOKEN" \
"$DD_URL/api/v2/products/?name=$PRODUCT_NAME")
# If response is not 200, print error
if [ "$RESPONSE" != "200" ]; then
echo "::error::Failed to query DefectDojo. HTTP Code: $RESPONSE"
cat /tmp/response.json
exit 1
fi
COUNT=$(cat /tmp/response.json | jq -r '.count')
if [ "$COUNT" = "0" ]; then
echo "Creating product '$PRODUCT_NAME'..."
curl -s -X POST "$DD_URL/api/v2/products/" \
-H "Authorization: Token $DD_TOKEN" \
-H "Content-Type: application/json" \
-d '{ "name": "'"$PRODUCT_NAME"'", "description": "Auto-created by Gitea Actions", "prod_type": '$PRODUCT_TYPE_ID' }'
else
echo "Product '$PRODUCT_NAME' already exists."
fi
# --- 1. TRIVY (Dependencies & Misconfig) ---
- name: Install Trivy
run: |
sudo apt-get install wget apt-transport-https gnupg lsb-release -y
wget -qO - https://aquasecurity.github.io/trivy-repo/deb/public.key | sudo apt-key add -
echo "deb https://aquasecurity.github.io/trivy-repo/deb $(lsb_release -sc) main" | sudo tee -a /etc/apt/sources.list.d/trivy.list
sudo apt-get update && sudo apt-get install trivy -y
- name: Run Trivy (FS Scan)
run: |
trivy fs . --scanners vuln,misconfig --format json --output trivy-results.json --exit-code 0
- name: Upload Trivy to DefectDojo
env:
DD_URL: ${{ secrets.DD_URL }}
DD_TOKEN: ${{ secrets.DD_TOKEN }}
run: |
echo "Uploading Trivy results..."
# Generate today's date in YYYY-MM-DD format
TODAY=$(date +%Y-%m-%d)
HTTP_CODE=$(curl --write-out "%{http_code}" --output response.txt --silent -X POST "$DD_URL/api/v2/import-scan/" \
-H "Authorization: Token $DD_TOKEN" \
-F "active=true" \
-F "verified=true" \
-F "scan_type=Trivy Scan" \
-F "engagement_name=CI/CD Pipeline" \
-F "product_name=${{ github.repository }}" \
-F "scan_date=$TODAY" \
-F "auto_create_context=true" \
-F "file=@trivy-results.json")
if [[ "$HTTP_CODE" != "200" && "$HTTP_CODE" != "201" ]]; then
echo "::error::Upload Failed with HTTP $HTTP_CODE"
echo "--- SERVER RESPONSE ---"
cat response.txt
echo "-----------------------"
exit 1
else
echo "Upload Success!"
fi
# --- 2. GITLEAKS (Secrets) ---
- name: Install Gitleaks
run: |
wget -qO gitleaks.tar.gz https://github.com/gitleaks/gitleaks/releases/download/v8.18.0/gitleaks_8.18.0_linux_x64.tar.gz
tar -xzf gitleaks.tar.gz
sudo mv gitleaks /usr/local/bin/ && chmod +x /usr/local/bin/gitleaks
- name: Run Gitleaks
run: gitleaks detect --source . -v --report-path gitleaks-results.json --report-format json --no-git || true
- name: Upload Gitleaks to DefectDojo
env:
DD_URL: ${{ secrets.DD_URL }}
DD_TOKEN: ${{ secrets.DD_TOKEN }}
run: |
echo "Uploading Gitleaks results..."
TODAY=$(date +%Y-%m-%d)
HTTP_CODE=$(curl --write-out "%{http_code}" --output response.txt --silent -X POST "$DD_URL/api/v2/import-scan/" \
-H "Authorization: Token $DD_TOKEN" \
-F "active=true" \
-F "verified=true" \
-F "scan_type=Gitleaks Scan" \
-F "engagement_name=CI/CD Pipeline" \
-F "product_name=${{ github.repository }}" \
-F "scan_date=$TODAY" \
-F "auto_create_context=true" \
-F "file=@gitleaks-results.json")
if [[ "$HTTP_CODE" != "200" && "$HTTP_CODE" != "201" ]]; then
echo "::error::Upload Failed with HTTP $HTTP_CODE"
echo "--- SERVER RESPONSE ---"
cat response.txt
echo "-----------------------"
exit 1
else
echo "Upload Success!"
fi
# --- 3. SEMGREP (SAST) ---
- name: Install Semgrep (via pipx)
run: |
sudo apt-get install pipx -y
pipx install semgrep
# Add pipx binary path to GITHUB_PATH so next steps can see 'semgrep'
echo "$HOME/.local/bin" >> $GITHUB_PATH
- name: Run Semgrep
run: semgrep scan --config=p/security-audit --config=p/owasp-top-ten --json --output semgrep-results.json . || true
- name: Upload Semgrep to DefectDojo
env:
DD_URL: ${{ secrets.DD_URL }}
DD_TOKEN: ${{ secrets.DD_TOKEN }}
run: |
echo "Uploading Semgrep results..."
TODAY=$(date +%Y-%m-%d)
HTTP_CODE=$(curl --write-out "%{http_code}" --output response.txt --silent -X POST "$DD_URL/api/v2/import-scan/" \
-H "Authorization: Token $DD_TOKEN" \
-F "active=true" \
-F "verified=true" \
-F "scan_type=Semgrep JSON Report" \
-F "engagement_name=CI/CD Pipeline" \
-F "product_name=${{ github.repository }}" \
-F "scan_date=$TODAY" \
-F "auto_create_context=true" \
-F "file=@semgrep-results.json")
if [[ "$HTTP_CODE" != "200" && "$HTTP_CODE" != "201" ]]; then
echo "::error::Upload Failed with HTTP $HTTP_CODE"
echo "--- SERVER RESPONSE ---"
cat response.txt
echo "-----------------------"
exit 1
else
echo "Upload Success!"
fi
+25
View File
@@ -0,0 +1,25 @@
# Package Manager Configuration
# Force pnpm usage - breaks npm/yarn intentionally
node-linker=pnpm
# Security: Disable all lifecycle scripts
ignore-scripts=true
enable-pre-post-scripts=false
# Security: Require packages to be 10+ days old before installation
minimum-release-age=14400
# Security: Verify package integrity hashes
verify-store-integrity=true
# Security: Enforce strict trust policies
trust-policy=strict
# Security: Strict peer dependency resolution
strict-peer-dependencies=true
# Performance: Use symlinks for node_modules
symlink=true
# Lockfile: Ensure lockfile is not modified during install
frozen-lockfile=false
+15 -33
View File
@@ -1,47 +1,29 @@
# Astro Starter Kit: Minimal
# docs
```sh
npm create astro@latest -- --template minimal
```
Documentation for NHCarrigan projects.
[![Open in StackBlitz](https://developer.stackblitz.com/img/open_in_stackblitz.svg)](https://stackblitz.com/github/withastro/astro/tree/latest/examples/minimal)
[![Open with CodeSandbox](https://assets.codesandbox.io/github/button-edit-lime.svg)](https://codesandbox.io/p/sandbox/github/withastro/astro/tree/latest/examples/minimal)
[![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/withastro/astro?devcontainer_path=.devcontainer/minimal/devcontainer.json)
## Live Version
> 🧑‍🚀 **Seasoned astronaut?** Delete this file. Have fun!
This page is currently deployed. [View the live website.](https://docs.nhcarrigan.com)
## 🚀 Project Structure
## Feedback and Bugs
Inside of your Astro project, you'll see the following folders and files:
If you have feedback or a bug report, please [log a ticket on our forum](https://support.nhcarrigan.com).
```text
/
├── public/
├── src/
│ └── pages/
│ └── index.astro
└── package.json
```
## Contributing
Astro looks for `.astro` or `.md` files in the `src/pages/` directory. Each page is exposed as a route based on its file name.
If you would like to contribute to the project, you may create a Pull Request containing your proposed changes and we will review it as soon as we are able! Please review our [contributing guidelines](CONTRIBUTING.md) first.
There's nothing special about `src/components/`, but that's where we like to put any Astro/React/Vue/Svelte/Preact components.
## Code of Conduct
Any static assets, like images, can be placed in the `public/` directory.
Before interacting with our community, please read our [Code of Conduct](CODE_OF_CONDUCT.md).
## 🧞 Commands
## License
All commands are run from the root of the project, from a terminal:
This software is licensed under our [global software license](https://docs.nhcarrigan.com/#/license).
| Command | Action |
| :------------------------ | :----------------------------------------------- |
| `npm install` | Installs dependencies |
| `npm run dev` | Starts local dev server at `localhost:4321` |
| `npm run build` | Build your production site to `./dist/` |
| `npm run preview` | Preview your build locally, before deploying |
| `npm run astro ...` | Run CLI commands like `astro add`, `astro check` |
| `npm run astro -- --help` | Get help using the Astro CLI |
Copyright held by Naomi Carrigan.
## 👀 Want to learn more?
## Contact
Feel free to check [our documentation](https://docs.astro.build) or jump into our [Discord server](https://astro.build/chat).
We may be contacted through our [Chat Server](http://chat.nhcarrigan.com) or via email at `contact@nhcarrigan.com`
+19 -13
View File
@@ -33,14 +33,14 @@ export default defineConfig({
label: "Edit this page on Naomi's Self-hosted Git instance",
},
lastUpdated: true,
social: {
github: "https://git.nhcarrigan.com",
discourse: "https://forum.nhcarrigan.com",
mastodon: "https://fedi.nhcarrigan.com/@naomi",
matrix: "https://matrix.nhcarrigan.com",
rss: "https://irc.nhcarrigan.com",
email: "mailto:contact@nhcarrigan.com",
},
social: [
{ icon: 'github', label: 'GitHub', href: 'https://git.nhcarrigan.com' },
{ icon: 'discord', label: 'Discord', href: 'https://chat.nhcarrigan.com' },
{ icon: 'blueSky', label: 'Bluesky', href: 'https://bsky.app/profile/nhcarrigan.com' },
{ icon: 'linkedin', label: 'LinkedIn', href: 'https://www.linkedin.com/company/nhcarrigan/' },
{ icon: 'twitter', label: 'Twitter', href: 'https://x.com/nhcarrigan1' },
{ icon: 'email', label: 'Email', href: 'mailto:contact@nhcarrigan.com' },
],
logo: {
src: "./public/logo.png",
alt: "NHCarrigan Logo",
@@ -52,16 +52,22 @@ export default defineConfig({
attrs: {
type: "text/javascript",
id: "analytics",
src: "https://analytics.nhcarrigan.com/js/script.file-downloads.outbound-links.js",
src: "https://analytics.nhcarrigan.com/js/pa-YUXAn1vhhRttySUAw_LMN.js",
defer: true,
"data-domain": "nhcarrigan.com",
"event-domain": "docs.nhcarrigan.com",
},
},
{
tag: "script",
content:
"window.plausible = window.plausible || function() { (window.plausible.q = window.plausible.q || []).push(arguments) }",
content:`
window.plausible=window.plausible||function(){(plausible.q=plausible.q||[]).push(arguments)},plausible.init=plausible.init||function(i){plausible.o=i||{}};
plausible.init({
customProperties: {
domain: "docs.nhcarrigan.com",
page: document.querySelector("title")?.innerText ?? "Unknown Docs Page",
path: window.location.pathname,
},
})
`
},
{
tag: "script",
+10 -9
View File
@@ -9,18 +9,19 @@
"build": "astro build",
"preview": "astro preview",
"astro": "astro",
"scan": "SONAR_TOKEN='op://Environment Variables - Development/SonarCloud/docs' op run -- sonar-scanner -Dsonar.organization=nhcarrigan -Dsonar.projectKey=nhcarrigan_docs -Dsonar.sources=. -Dsonar.host.url=https://sonarcloud.io",
"test": "echo 'No tests yet!' && exit 0"
"test": "vitest --run"
},
"dependencies": {
"@astrojs/check": "^0.9.4",
"@astrojs/starlight": "^0.32.0",
"astro": "^5.3.0",
"astro-mermaid": "1.0.4",
"mermaid": "11.11.0",
"typescript": "^5.7.3"
"@astrojs/check": "0.9.6",
"@astrojs/starlight": "0.37.1",
"astro": "5.16.5",
"astro-mermaid": "1.3.1",
"mermaid": "11.12.2",
"typescript": "5.9.3"
},
"devDependencies": {
"cspell": "8.17.3"
"cspell": "9.4.0",
"gray-matter": "4.0.3",
"vitest": "4.0.15"
}
}
+2028 -1703
View File
File diff suppressed because it is too large Load Diff
+86506 -4587
View File
File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 2.1 MiB

After

Width:  |  Height:  |  Size: 4.9 MiB

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 MiB

After

Width:  |  Height:  |  Size: 6.0 MiB

+512 -30
View File
@@ -1,6 +1,8 @@
export const navigation = [
{
// #region About Us
label: "About Us",
collapsed: true,
items: [
{
label: "Mission Statement",
@@ -11,11 +13,11 @@ export const navigation = [
link: "/about/sustainability",
},
{
label: "Hire us!",
label: "Professional Services and Commission Policy",
link: "/about/hire",
},
{
label: "Support Our Work 💜",
label: "Donation and Support Policy",
link: "/about/donate",
},
{
@@ -26,10 +28,33 @@ export const navigation = [
label: "Mentorship Programme Terms and Conditions",
link: "/about/mentorship",
},
],
{
label: "Development Review Policy",
link: "/about/development-reviews",
},
{
label: "Mock Interview Policy",
link: "/about/mock-interviews",
},
{
label: "Portfolio Review Policy",
link: "/about/portfolio-reviews",
},
{
label: "Letter of Recommendation and Character Reference Policy",
link: "/about/recommendations",
},
{
label: "Community Membership Eligibility",
link: "/about/community-membership-eligibility",
},
].sort((a, b) => a.label.localeCompare(b.label)),
},
// #endregion
// #region Legal Information
{
label: "Legal Information",
collapsed: true,
items: [
{
label: "Limitation of Liability and Indemnification Policy",
@@ -44,7 +69,7 @@ export const navigation = [
link: "/legal/privacy",
},
{
label: "Naomi's Public License",
label: "Naomi's Public Licence",
link: "/legal/license",
},
{
@@ -90,11 +115,14 @@ export const navigation = [
{
label: "Crisis and Mental Health Management Policy",
link: "/legal/crisis-mental-health",
}
],
},
].sort((a, b) => a.label.localeCompare(b.label)),
},
// #endregion
// #region Community Policies
{
label: "Community Policies",
collapsed: true,
items: [
{
label: "Community Code of Conduct",
@@ -120,13 +148,20 @@ export const navigation = [
label: "Community Feedback and Participation Policy",
link: "/community/feedback",
},
],
{
label: "Fan Art Guidelines",
link: "/community/fan-art",
}
].sort((a, b) => a.label.localeCompare(b.label)),
},
// #endregion
// #region Development Documentation
{
label: "Development Documentation",
collapsed: true,
items: [
{
label: "Contributing Guide",
label: "Contributing Documentation",
link: "/dev/contributing",
},
{
@@ -150,13 +185,118 @@ export const navigation = [
link: "/dev/servers",
},
{
label: "VTubing Setup",
label: "Naomi's VTubing Setup",
link: "/dev/vtubing",
},
],
{
label: "Security Hall of Fame",
link: "/dev/hall-of-fame",
}
].sort((a, b) => a.label.localeCompare(b.label)),
},
// #endregion
// #region Mentorship Programme
{
label: "Mentorship Programme",
collapsed: true,
items: [
{
label: "00. Frequently Asked Questions",
link: "/mentorship/00-faq",
},
{
label: "01. Onboarding",
link: "/mentorship/01-onboarding",
},
{
label: "02. Goal Setting",
link: "/mentorship/02-goal-setting",
},
{
label: "03. Project Planning",
link: "/mentorship/03-project-plan",
},
{
label: "04. User Stories",
link: "/mentorship/04-user-stories",
},
{
label: "05. Technical Breakdown",
link: "/mentorship/05-technical-breakdown",
},
{
label: "06. Priority and Effort",
link: "/mentorship/06-priority-and-effort",
},
{
label: "07. Writing Code",
link: "/mentorship/07-writing-code",
},
{
label: "08. Final Polish",
link: "/mentorship/08-final-polish",
},
{
label: "09. Career Prep",
link: "/mentorship/09-career-prep",
},
{
label: "10. Graduation",
link: "/mentorship/10-graduation",
},
{
label: "Resources",
collapsed: true,
items: [
{
label: "Goal Setting Resources",
link: "/mentorship/resources/goal-setting",
},
{
label: "Project Planning Resources",
link: "/mentorship/resources/project-planning",
},
{
label: "User Story Resources",
link: "/mentorship/resources/user-stories",
},
{
label: "Technical Breakdown Resources",
link: "/mentorship/resources/technical-breakdown",
},
{
label: "Priority and Effort Resources",
link: "/mentorship/resources/priority-effort",
},
{
label: "Code Development Resources",
link: "/mentorship/resources/code-development",
},
{
label: "Code Review Checklist",
link: "/mentorship/resources/code-review-checklist",
},
{
label: "Final Polish Resources",
link: "/mentorship/resources/final-polish",
},
{
label: "Final Polish Checklist",
link: "/mentorship/resources/final-polish-checklist",
},
{
label: "Career Preparation Resources",
link: "/mentorship/resources/career-prep",
},
].sort((a, b) => a.label.localeCompare(b.label)),
}
].sort((a, b) => a.label.localeCompare(b.label)),
},
// #endregion
// #region Project Documentation
{
label: "Project Documentation",
collapsed: true,
items: [
{
label: "ESLint Config",
@@ -176,7 +316,7 @@ export const navigation = [
{
label: "Naomi's Blog",
link: "/projects/blog",
badge: { text: "v0.1.0", variant: "caution" },
badge: { text: "v1.0.0", variant: "tip" },
},
{
label: "Celestine",
@@ -196,7 +336,7 @@ export const navigation = [
{
label: "Hikari",
link: "/projects/hikari",
badge: { text: "v0.0.0", variant: "danger" },
badge: { text: "v0.0.0", variant: "caution" },
},
{
label: "Maylin Taryne",
@@ -211,15 +351,15 @@ export const navigation = [
{
label: "Mommy Bot",
link: "/projects/mommy-bot",
badge: { text: "v0.0.0", variant: "danger" },
badge: { text: "v0.0.0", variant: "caution" },
},
{
label: "Mommy",
link: "/projects/mommy",
badge: { text: "v0.0.0", variant: "danger" },
badge: { text: "v0.0.0", variant: "caution" },
},
{
label: "NHCarrigan Portfolio",
label: "Portfolio",
link: "/projects/portfolio",
badge: { text: "unversioned", variant: "success" },
},
@@ -299,14 +439,302 @@ export const navigation = [
badge: { text: "v1.0.0", variant: "tip" },
},
{
label: "Documentation Site",
label: "NHCarrigan Documentation",
link: "/projects/docs",
badge: { text: "v1.0.0", variant: "tip" },
}
].sort((a, b) => a.label.localeCompare(b.label)),
},
{
label: "Data API",
link: "/projects/data-api",
badge: { text: "v1.0.0", variant: "tip" },
},
{
label: "Nymira",
link: "/projects/nymira",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Vitalia",
link: "/projects/vitalia",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Octavia",
link: "/projects/octavia",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Maribelle",
link: "/projects/maribelle",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Verena",
link: "/projects/verena",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Thalassa",
link: "/projects/thalassa",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Aeris",
link: "/projects/aeris",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Thessalia",
link: "/projects/thessalia",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Isolda",
link: "/projects/isolda",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Meliora",
link: "/projects/meliora",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Aurelia",
link: "/projects/aurelia",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Eirene",
link: "/projects/eirene",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Amirei",
link: "/projects/amirei",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Zephra",
link: "/projects/zephra",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Oriana",
link: "/projects/oriana",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Lyra",
link: "/projects/lyra",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Selene",
link: "/projects/selene",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Sybil",
link: "/projects/sybil",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Calenelle",
link: "/projects/calenelle",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Rowena",
link: "/projects/rowena",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Alouette",
link: "/projects/alouette",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Clarion",
link: "/projects/clarion",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Elowyn",
link: "/projects/elowyn",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Evangeline",
link: "/projects/evangeline",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Theodora",
link: "/projects/theodora",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Vivienne",
link: "/projects/vivienne",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Elysium",
link: "/projects/elysium",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Elaria",
link: "/projects/elaria",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Elunara",
link: "/projects/elunara",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Aureline",
link: "/projects/aureline",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Tessara",
link: "/projects/tessara",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Hacksmiths",
link: "/projects/hacksmiths",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Meridia",
link: "/projects/meridia",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Lucinda",
link: "/projects/lucinda",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Liora",
link: "/projects/liora",
badge: { text: "1.0.0", variant: "tip" },
},
{
label: "Beccalia: Origins",
link: "/projects/beccalia-origins",
badge: { text: "v0.0.0", variant: "caution" },
},
{
label: "Beccalia: Prologue",
link: "/projects/beccalia-prologue",
badge: { text: "v1.0.1", variant: "tip" },
},
{
label: "Life of a Naomi",
link: "/projects/life-of-a-naomi",
badge: { text: "v1.0.0", variant: "tip" },
},
{
label: "Ruu's Goblin Quest",
link: "/projects/ruus-goblin-quest",
badge: { text: "v1.0.0", variant: "tip" },
},
{
label: "Naomi's Adventure I: An Isekai Story",
link: "/projects/naomis-adventure-i",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Amari",
link: "/projects/amari",
badge: { text: "v1.0.0", variant: "tip" },
},
{
label: "Artists4Palestine Bot",
link: "/projects/a4p-bot",
badge: { text: "v1.0.0", variant: "tip" },
},
{
label: "Naomi's VSCode Themes",
link: "/projects/vscode-themes",
badge: { text: "v2.2.0", variant: "tip" },
},
{
label: "Boost Monitor",
link: "/projects/boost-monitor",
badge: { text: "v1.0.1", variant: "tip" },
},
{
label: "TypeScript Config",
link: "/projects/typescript-config",
badge: { text: "v4.0.0", variant: "tip" },
},
{
label: "Discord Analytics",
link: "/projects/discord-analytics",
badge: { text: "v1.0.0", variant: "tip" },
},
{
label: "Eclaire",
link: "/projects/eclaire",
badge: { text: "v1.0.0", variant: "tip" },
},
{
label: "freeCodeCamp Review Generator",
link: "/projects/freecodecamp-review-generator",
badge: { text: "v1.0.0", variant: "tip" },
},
{
label: "Keiko",
link: "/projects/keiko",
badge: { text: "v1.0.0", variant: "tip" },
},
{
label: "Meeting Minutes",
link: "/projects/meeting-minutes",
badge: { text: "v1.0.0", variant: "tip" },
},
{
label: "Nomena",
link: "/projects/nomena",
badge: { text: "v1.0.0", variant: "tip" },
},
{
label: "Scripts",
link: "/projects/scripts",
badge: { text: "v1.0.0", variant: "tip" },
},
{
label: "Sylvara",
link: "/projects/sylvara",
badge: { text: "unreleased", variant: "danger" },
},
{
label: "Saisoku",
link: "/projects/saisoku",
badge: { text: "v1.0.0", variant: "tip" },
},
{
label: "Tyche",
link: "/projects/tyche",
badge: { text: "v1.0.0", variant: "tip" },
},
{
label: "Vivicrea",
link: "/projects/vivicrea",
badge: { text: "v1.0.0", variant: "tip" },
},
].sort((a, b) => a.label.localeCompare(b.label)),
},
// #endregion
// #region Staff Guidelines
{
label: "Staff Guidelines",
collapsed: true,
items: [
{
label: "Staff Handbook",
@@ -328,17 +756,30 @@ export const navigation = [
label: "Join Our Volunteer Team",
link: "/staff/apply",
},
{
label: "Self-Care Resources for Staff",
link: "/staff/self-care-resources",
},
{
label: "Staff Application Evaluation Rubric",
link: "/staff/rubric",
},
{
label: "Additional Trainings",
collapsed: true,
items: [
{
label: "Accessibility Coordination Training for Staff",
link: "/staff/training/accessibility-coordination",
},
{
label: "Bias Recognition and Mitigation Training for Staff",
link: "/staff/training/bias-recognition-mitigation",
},
{
label: "Child Safety Training for Staff",
link: "/staff/training/child-safety",
},
{
label: "Community Growth Specialist Training for Staff",
link: "/staff/training/community-growth-specialist",
@@ -351,6 +792,14 @@ export const navigation = [
label: "Conflict Resolution Training for Staff",
link: "/staff/training/conflict-resolution",
},
{
label: "Content Moderation Fundamentals Training for Staff",
link: "/staff/training/content-moderation-fundamentals",
},
{
label: "Criminal Activity Training for Staff",
link: "/staff/training/criminal-activity",
},
{
label: "Crisis Response Training for Staff",
link: "/staff/training/crisis-response",
@@ -363,13 +812,25 @@ export const navigation = [
label: "Data Analytics and Reporting Training for Staff",
link: "/staff/training/data-analytics-reporting",
},
{
label: "Data Privacy and GDPR Compliance Training for Staff",
link: "/staff/training/data-privacy-gdpr",
},
{
label: "De-escalation Techniques Training for Staff",
link: "/staff/training/de-escalation-techniques",
},
{
label: "Documentation and Transparency Training for Staff",
link: "/staff/training/documentation-transparency",
},
{
label: "Guild Wars 2 Leadership Training for Staff",
link: "/staff/training/guild-wars-2-leadership",
label: "Support Forum Moderation Training for Staff",
link: "/staff/training/forum-moderation",
},
{
label: "Harassment and Bullying Response Training for Staff",
link: "/staff/training/harassment-bullying-response",
},
{
label: "Inclusive Moderation Training for Staff",
@@ -386,29 +847,50 @@ export const navigation = [
{
label: "Technical Contributor Training for Staff",
link: "/staff/training/technical-contributor",
}
]
},
{
label: "Trauma-Informed Moderation Training for Staff",
link: "/staff/training/trauma-informed-moderation",
},
].sort((a, b) => a.label.localeCompare(b.label)),
},
{
label: "Staff Policy Self-Assessment",
link: "/staff/policy-self-assessment",
}
],
].sort((a, b) => a.label.localeCompare(b.label)),
},
// #endregion
// #region Miscellaneous Documents
{
label: "Miscellaneous Documents",
collapsed: true,
items: [
{
label: "Managing Local Music",
link: "/misc/music",
},
],
{
label: "Templates",
link: "/misc/templates",
},
{
label: "AI Prompts",
link: "/misc/prompts",
}
].sort((a, b) => a.label.localeCompare(b.label)),
},
// #endregion
// #region External Links
{
label: "Sitemap",
link: "https://sitemap.nhcarrigan.com",
label: "Discord",
link: "https://chat.nhcarrigan.com",
attrs: {
target: "_blank",
},
},
{
label: "Support Forum",
link: "https://support.nhcarrigan.com",
attrs: {
target: "_blank",
},
}
// #endregion
];
@@ -0,0 +1,83 @@
---
title: Community Membership Eligibility
---
**ELIGIBILITY REQUIREMENTS FOR FREE SERVICES**
## 1. INTRODUCTION AND SCOPE
### 1.1. Policy Overview
This Community Membership Eligibility Policy ("Policy") establishes the eligibility requirements for accessing free services provided by NHCarrigan ("we," "us," "our," or "the Company"). This Policy operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, and all applicable legal protections by reference.
### 1.2. Scope of Application
This Policy applies to eligibility requirements for the following free services:
**(a)** Letters of recommendation and character references;
**(b)** Mock interviews and interview preparation;
**(c)** Portfolio reviews (resume, LinkedIn, GitHub, portfolio website reviews);
**(d)** Development reviews (code reviews, project planning consultations, technical writing reviews);
**(e)** Any other free services that require active community membership as a prerequisite.
## 2. ELIGIBILITY REQUIREMENT - ACTIVE COMMUNITY MEMBERSHIP
### 2.1. General Eligibility Standard
**IMPORTANT: Free services are provided EXCLUSIVELY to active members of our community. These services are NOT available to the general public or individuals who are not actively engaged in our community.**
### 2.2. Eligibility Criteria
**REQUIRED**: Requesters MUST be active, engaged members of our community with demonstrated participation, such as:
**(a)** Active participation in our mentorship programme;
**(b)** Regular, ongoing community engagement in our Discord server or other community platforms;
**(c)** Active volunteer work or contribution to community projects;
**(d)** Sustained, meaningful interaction demonstrating active community membership;
**(e)** Professional collaboration or work relationship within our community context (where applicable).
### 2.3. Verification and Discretion
**(a)** We will verify community membership and activity before accepting any service request;
**(b)** We reserve the right to decline requests from individuals who are not active community members, regardless of other factors;
**(c)** Casual acquaintanceship or minimal interaction does NOT qualify as active membership;
**(d)** We will not provide services for individuals we have not directly interacted with or who lack active community connection;
**(e)** Priority may be given to individuals from underrepresented groups in technology who are active community members.
## 3. NOT AN ACTIVE COMMUNITY MEMBER?
### 3.1. Becoming an Active Community Member
If you are not currently an active member of our community but are interested in accessing our free services, we encourage you to join our Discord community and become an active participant. Active community membership involves regular engagement, participation in discussions, and meaningful contribution to our community.
**Join our Discord community:** [https://chat.nhcarrigan.com](https://chat.nhcarrigan.com)
Once you have established active community membership through regular participation and engagement, you will be eligible to request our free services. We look forward to welcoming you to our community!
### 3.2. What Constitutes Active Membership
Active community membership is demonstrated through:
**(a)** Regular participation in community discussions and activities;
**(b)** Meaningful contributions to community projects or initiatives;
**(c)** Consistent engagement over a period of time (not just a single interaction);
**(d)** Positive, constructive participation that aligns with our community values;
**(e)** Building relationships with other community members through genuine interaction.
## 4. LIMITATION OF LIABILITY AND DISCLAIMERS
### 4.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, and maximum liability caps are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 4.2. Eligibility Disclaimers
**(a)** Meeting eligibility criteria does not guarantee service provision;
**(b)** We reserve the right to decline service requests at our sole discretion;
**(c)** Eligibility determinations are final and not subject to appeal;
**(d)** This Policy may be updated at any time, and eligibility requirements may change.
---
*For questions about community membership eligibility or our free services, please contact us through our [Contact Policy](/about/contact).*
+203 -65
View File
@@ -2,11 +2,25 @@
title: Contact Policy
---
## Introduction and Legal Framework
**ESTABLISHING COMMUNICATION STANDARDS AND CHANNELS FOR ORGANISATIONAL INTERACTIONS**
This Contact Policy establishes our communication standards, channels, and expectations for all interactions with our organisation. This Policy operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, and all applicable legal protections by reference.
## 1. INTRODUCTION AND LEGAL FRAMEWORK
**IMPORTANT: All communications are subject to our Limitation of Liability and Indemnification Policy, Community Code of Conduct, and applicable legal frameworks. By engaging in communication with us, you acknowledge and agree to comply with all relevant policies.**
### 1.1. Policy Overview
This Contact Policy ("Policy") establishes our communication standards, channels, and expectations for all interactions with our organisation. This Policy operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, and all applicable legal protections by reference.
### 1.2. Legal Framework Integration
**IMPORTANT: All communications are subject to our Limitation of Liability and Indemnification Policy, Community Code of Conduct, and applicable legal frameworks. By engaging in communication with us, you acknowledge and agree to comply with all relevant policies. Comprehensive warranty disclaimers and liability limitations are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 1.3. Scope of Application
This Policy applies to:
**(a)** All communications with NHCarrigan ("we," "us," "our," or "the Company");
**(b)** All communication channels, platforms, and methods used to contact our organisation;
**(c)** All support requests, inquiries, and interactions with our team;
**(d)** All public and private communication channels operated by our organisation.
---
@@ -60,7 +74,7 @@ ssh-keygen -Y verify -f /path/to/saved/key -I naomi@nhcarrigan.com -n socials -s
## 1. Support and Communication Channels
### 1.1 Public Support Channels
### 1.1. Public Support Channels
We offer FREE support through several PUBLIC channels, including:
@@ -74,7 +88,7 @@ These channels are ideal for:
- Community discussions and knowledge sharing
- Open-source collaboration opportunities
### 1.2 Private Support Options
### 1.2. Private Support Options
While we encourage the use of public channels, we understand that some situations may require private communication. Please note:
@@ -85,7 +99,7 @@ While we encourage the use of public channels, we understand that some situation
To request private support, please contact us through `support@nhcarrigan.com`.
### 1.3 Engagement Opportunities
### 1.3. Engagement Opportunities
Our platforms offer various ways to engage with our projects and community:
@@ -94,13 +108,13 @@ Our platforms offer various ways to engage with our projects and community:
- Seek mentorship in software development
- Participate in casual discussions with our team and community members
### 1.4 Contact Form
### 1.4. Contact Form
We offer a [contact form](https://forms.nhcarrigan.com/form/HyqoJ9Th5QDiOn_GPLNIRhe1a5ON7mDQf-O_ukM6R4g) for direct, low-priority communication requests.
We offer a [contact form](https://forms.nhcarrigan.com/o/docs/forms/8XTPmbrFtvDJAKSPgBgsvA/4) for direct, low-priority communication requests.
It is often faster to reach out through one of the below platforms, and best to consider this contact form as a backup in the event of a severe outage.
## 2. Communication Platforms
## 2. COMMUNICATION PLATFORMS
### 2.1. Discord
@@ -114,13 +128,16 @@ Our Discord server allows for both quick and in-depth communication.
### 2.2. Code Repositories
Our code repositories are all self-hosted. You will need to request an account via our form: https://forms.nhcarrigan.com/form/c0_N5hb-VcmC2ClzaGOvDxVirMN_coiWG7eoPhDPsZ0
Our code repositories are all self-hosted. Git accounts are only granted to Team members (volunteers) and Staff (paid employees).
- Link: https://git.nhcarrigan.com
- Features:
- Issue tracking
- Source code for all of our products
- Best for: Filing tickets on our software.
- Best for: Viewing source code and documentation
- **Bug Reports and Feature Requests**: To report bugs or request features, please use our support forum:
- [Bug Reports](https://support.nhcarrigan.com/c/bug-reports/6) for bug reports
- [Feature Requests](https://support.nhcarrigan.com/c/feature-requests/7) for feature requests
### 2.3. Etiquette and Best Practices
@@ -129,9 +146,9 @@ Our code repositories are all self-hosted. You will need to request an account v
- Before asking a question, check if it has been answered in pinned messages or FAQs.
- When seeking help, provide as much relevant information as possible.
## 3. Announcements and Updates
## 3. ANNOUNCEMENTS AND UPDATES
### 3.1 Announcements Page
### 3.1. Announcements Page
We have a dedicated page where we post all of our organisational updates.
@@ -144,7 +161,7 @@ We have a dedicated page where we post all of our organisational updates.
- Major policy changes
- Best for: Comprehensive, detailed announcements and long-form updates
### 3.2 Blog
### 3.2. Blog
Our blog contains more personal posts and updates.
@@ -156,17 +173,17 @@ Our blog contains more personal posts and updates.
- Cool insights into our decision making processes
- Best for: People who want more insight into the team behind NHCarrigan.
### 3.3 Interacting with Announcements
### 3.3. Interacting with Announcements
All of our announcements are read-only, but you can discuss them in any of our platforms mentioned in Section 2!
All of our announcements are read-only, but you can discuss them in any of our platforms mentioned in Section 2.
### 3.6 Historical Announcements
### 3.4. Historical Announcements
All announcements on our board are archived and remain accessible for future reference.
## 4. Professional Engagement and Portfolio
## 4. PROFESSIONAL ENGAGEMENT AND PORTFOLIO
### 4.1 LinkedIn Profile
### 4.1. LinkedIn Profile
LinkedIn serves as our primary professional networking platform.
@@ -180,11 +197,11 @@ LinkedIn serves as our primary professional networking platform.
- Professional collaborators
- Industry peers
#### 4.1.1 Connecting on LinkedIn
#### 4.1.1. Connecting on LinkedIn
When sending a connection request, please include a brief message explaining your interest. We typically respond to LinkedIn messages within 2-3 business days.
When sending a connection request, please include a brief message explaining your interest. We typically respond to LinkedIn messages within 7-10 business days.
### 4.2 Professional Inquiries
### 4.2. Professional Inquiries
When reaching out for professional reasons, please consider the following:
@@ -192,23 +209,23 @@ When reaching out for professional reasons, please consider the following:
- Relevant Background: Provide brief context about yourself or your company.
- Specific Questions: If you have particular queries, include them in your initial message.
### 4.3 Services
### 4.3. Services
If you're interested in hiring us to perform some work for you, fill out the form at https://forms.nhcarrigan.com/form/XRlQjeu8CbMrTA-v0IPOxlUPEPitLKXTWg70UUCIORA.
If you're interested in hiring us to perform some work for you, fill out the form at https://forms.nhcarrigan.com/o/docs/forms/a9K6uzJkpnTfnKgo19b4Rp/4.
### 4.4 Speaking Engagements and Events
### 4.4. Speaking Engagements and Events
If you're interested in having us speak at your event or contribute to your publication, fill out the form at https://forms.nhcarrigan.com/form/Xqap3Q8hazzJd4Rrp9OOs9ip8Pa7C9zOVThlyFoPCbU.
If you're interested in having us speak at your event or contribute to your publication, fill out the form at https://forms.nhcarrigan.com/o/docs/forms/3xEKnDEbqQKG8GJp4kXRCs/4.
### 4.5 Keeping Professional Connections Updated
### 4.5. Keeping Professional Connections Updated
We regularly update our professional profiles with new projects, skills, and achievements. Follow us on these platforms to stay informed about our professional journey and potential opportunities for collaboration.
## 5. Email Communication
## 5. EMAIL COMMUNICATION
We offer several email addresses for specific types of inquiries. Please use the appropriate email address to ensure your message reaches the right team and receives the most efficient response.
### 5.1 General Inquiries
### 5.1. General Inquiries
- Email: contact@nhcarrigan.com
- Use for:
@@ -217,67 +234,113 @@ We offer several email addresses for specific types of inquiries. Please use the
- Media or press inquiries
- Any queries that don't fit other categories
### 5.2 Billing and Financial Matters
### 5.2. Billing and Financial Matters
- Email: billing@nhcarrigan.com
:::tip[Preferred Method]{icon=message}
We encourage you to use the [**Billing Questions**](https://support.nhcarrigan.com/c/billing-questions/13) category on our support forum for billing inquiries. This allows for public discussion and faster responses. If you need to share sensitive financial information, you can ask staff to make your thread private, or contact us via email for complete confidentiality.
:::
- **Support Forum:** [Billing Questions](https://support.nhcarrigan.com/c/billing-questions/13) (preferred for most inquiries)
- Email: billing@nhcarrigan.com (for highly sensitive financial information requiring complete confidentiality)
- Use for:
- Questions about payments or invoices
- Inquiries about outstanding balances
- Refund requests
- Updating billing information
### 5.3 Technical Support
### 5.3. Technical Support
:::tip[Preferred Method]{icon=message}
We encourage you to use the [**Technical Support**](https://support.nhcarrigan.com/c/technical-support/5) category on our support forum for support inquiries. This allows for public discussion and faster responses. If you need to share sensitive information, you can ask staff to make your thread private, or contact us via email for complete confidentiality.
:::
- **Support Forum:** [Technical Support](https://support.nhcarrigan.com/c/technical-support/5) (preferred for most inquiries)
- Email: support@nhcarrigan.com
- Use for:
- Assistance with using our software or services
- Reporting bugs or technical issues
- Documentation clarifications
### 5.4 Privacy Concerns
### 5.4. Privacy Concerns
- Email: privacy@nhcarrigan.com
:::tip[Preferred Method]{icon=message}
We encourage you to use our **Privacy Request Form** for privacy-related requests: https://forms.nhcarrigan.com/o/docs/forms/qEJgBWGDfyHv6x51VU9aVX/4
This form helps ensure we collect all necessary information to process your request efficiently and in compliance with applicable data protection laws.
:::
- **Privacy Request Form** (Preferred): https://forms.nhcarrigan.com/o/docs/forms/qEJgBWGDfyHv6x51VU9aVX/4
- Email: privacy@nhcarrigan.com (for general privacy questions or if you prefer email)
- Use for:
- Questions about our privacy policy
- Requests for data access or deletion
- Reporting potential privacy breaches
- Opting out of data collection (where applicable)
### 5.5 Security Matters
### 5.5. Security Matters
- Email: security@nhcarrigan.com
:::tip[Preferred Method]{icon=message}
We encourage you to use our **Security Vulnerability Report Form** for reporting security vulnerabilities: https://forms.nhcarrigan.com/o/docs/forms/wgdbBkS4tjCGoVZTqtmMNx/4
This form helps ensure we collect all necessary information to investigate and address security issues efficiently and securely.
:::
- **Security Vulnerability Report Form** (Preferred): https://forms.nhcarrigan.com/o/docs/forms/wgdbBkS4tjCGoVZTqtmMNx/4
- **Public Security Reports:** View aggregated and sanitized security vulnerability reports for all our products at: https://security.nhcarrigan.com/report/
- Email: security@nhcarrigan.com (for general security questions or if you prefer email)
- Use for:
- Reporting security vulnerabilities
- Questions about our security practices
- Concerns about potential security breaches
### 5.6 Legal Inquiries
### 5.6. Legal Inquiries
- Email: legal@nhcarrigan.com
:::tip[Preferred Method]{icon=message}
We encourage you to use the [**Legal Notices**](https://support.nhcarrigan.com/c/legal-notices/12) category on our support forum for legal inquiries. This allows for public discussion and transparency. If you need to share sensitive legal information, you can ask staff to make your thread private, or contact us via email for urgent matters requiring immediate confidentiality.
:::
- **Support Forum:** [Legal Notices](https://support.nhcarrigan.com/c/legal-notices/12) (preferred for most inquiries)
- Email: legal@nhcarrigan.com (for urgent legal matters requiring immediate confidentiality)
- Use for:
- Legal questions or concerns
- Copyright or trademark issues
- Requests for legal documentation
- Formal notices or communications
### 5.7 Feedback and Suggestions
### 5.7. Feedback and Suggestions
- Email: feedback@nhcarrigan.com
:::tip[Preferred Method]{icon=message}
We encourage you to use our support forum for different types of feedback:
- [**Community Feedback**](https://support.nhcarrigan.com/c/community-feedback/8) for general feedback about our community, services, events, and initiatives
- [**Policy Ideation**](https://support.nhcarrigan.com/c/policy-ideation/9) for suggestions about community policies and governance
- [**Accessibility Feedback**](https://support.nhcarrigan.com/c/accessibility-feedback/10) for reporting accessibility barriers and improvement suggestions
:::
- **Support Forum:**
- [Community Feedback](https://support.nhcarrigan.com/c/community-feedback/8) (preferred for general feedback)
- [Policy Ideation](https://support.nhcarrigan.com/c/policy-ideation/9) (preferred for policy suggestions)
- [Accessibility Feedback](https://support.nhcarrigan.com/c/accessibility-feedback/10) (preferred for accessibility matters)
- Email: feedback@nhcarrigan.com (if you prefer email communication)
- Use for:
- Providing feedback on our work or projects
- Suggesting improvements or new features
- Sharing your experience with our services
- Offering ideas for future developments
### 5.8 Press/Media Inquiries
### 5.8. Press/Media Inquiries
- Email: press@nhcarrigan.com
:::tip[Preferred Method]{icon=message}
We encourage you to use the [**Press Inquiries**](https://support.nhcarrigan.com/c/press-inquiries/14) category on our support forum for media inquiries. This allows for public discussion and community visibility. If you need to share sensitive information, you can ask staff to make your thread private, or contact us via email for highly sensitive media matters requiring complete confidentiality.
:::
- **Support Forum:** [Press Inquiries](https://support.nhcarrigan.com/c/press-inquiries/14) (preferred for most inquiries)
- Email: press@nhcarrigan.com (for highly sensitive media matters requiring complete confidentiality)
- Use for:
- Requesting comment regarding news
- Scheduling interviews for your media outlet
- Attribution requests in academic articles
### 5.9 Event Requests
### 5.9. Event Requests
- Email: events@nhcarrigan.com
- Use for:
@@ -286,16 +349,21 @@ We offer several email addresses for specific types of inquiries. Please use the
- Workshop or training session requests
- Event sponsorship inquiries
### 5.10 Marketing Inquiries
### 5.10. Marketing Inquiries
- Email: marketing@nhcarrigan.com
:::tip[Preferred Method]{icon=message}
We encourage you to use the [**Marketing Proposals**](https://support.nhcarrigan.com/c/marketing-proposals/15) category on our support forum for marketing inquiries. This allows for public discussion and community input. If you need to share highly confidential business information, you can ask staff to make your thread private, or contact us via email for proposals requiring complete privacy.
:::
- **Support Forum:** [Marketing Proposals](https://support.nhcarrigan.com/c/marketing-proposals/15) (preferred for most inquiries)
- Email: marketing@nhcarrigan.com (for highly confidential business proposals requiring complete privacy)
- Use for:
- Marketing collaboration proposals
- Brand partnership opportunities
- Advertising inquiries
- Content licensing requests
### 5.11 Career Information
### 5.11. Career Information
- Email: careers@nhcarrigan.com
- Use for:
@@ -304,24 +372,29 @@ We offer several email addresses for specific types of inquiries. Please use the
- Inquiries
- Following up on job applications
### 5.12 Partnerships
### 5.12. Partnerships
- Email: partners@nhcarrigan.com
:::tip[Preferred Method]{icon=message}
We encourage you to use the [**Partnership Requests**](https://support.nhcarrigan.com/c/partnership-requests/11) category on our support forum for partnership inquiries. This allows for public discussion and community input on potential partnerships. If you need to share sensitive business information, you can ask staff to make your thread private, or contact us via email if you need complete confidentiality from the start.
:::
- **Support Forum:** [Partnership Requests](https://support.nhcarrigan.com/c/partnership-requests/11) (preferred for most inquiries)
- Email: partners@nhcarrigan.com (if you need complete confidentiality from the start)
- Use for:
- Requesting a collaboration between our organisation and yours
- Sponsorship opportunities for our work
- Brand ambassador programmes
- Product placement or sponsored content inquiries
### 5.13 Email Communication Guidelines
### 5.13. Email Communication Guidelines
- Subject Line: Please use a clear, concise subject line that summarizes your inquiry.
- Content: Provide all relevant details in your initial email to expedite the response process.
- Attachments: If sending attachments, please mention them in the email body and ensure they are in common file formats.
- Response Time: We aim to respond to all emails within 2 business days. Complex inquiries may require additional time.
- Follow-ups: If you haven't received a response after 3 business days, feel free to send a polite follow-up.
- Response Time: We aim to respond to all emails within 7-10 business days. Complex inquiries may require additional time.
- Follow-ups: If you haven't received a response after 10 business days, feel free to send a polite follow-up.
### 5.14 Email Privacy and Security
### 5.14. Email Privacy and Security
**Reference to Comprehensive Privacy Framework**: Detailed privacy protections, data handling procedures, and security measures are set forth in our Privacy Policy, which is incorporated herein by reference.
@@ -333,13 +406,13 @@ We do not share your email address or the content of your messages with third pa
- As part of public safety measures related to Code of Conduct violations
- As necessary for service provision and technical operations
### 5.15 Spam and Unsolicited Emails
### 5.15. Spam and Unsolicited Emails
We have a strict no-spam policy. If you receive any unsolicited emails claiming to be from us, please report them to security@nhcarrigan.com.
By using the appropriate email address for your inquiry, you help us provide you with the most efficient and accurate response possible. If you're unsure which email to use, feel free to send your inquiry to contact@nhcarrigan.com, and we'll direct it to the appropriate team.
### 5.16 Acceptable Use and Consequences
### 5.16. Acceptable Use and Consequences
We are committed to maintaining a respectful and productive communication environment. To ensure this:
@@ -358,13 +431,13 @@ We reserve the right to report serious abuses to relevant authorities if necessa
By communicating with us via email, you agree to adhere to these guidelines and understand the consequences of misuse.
## 6. Direct Messages
## 6. DIRECT MESSAGES
### 6.1 Direct Message Policy
### 6.1. Direct Message Policy
We offer direct messaging as a private, personalized communication channel. However, to manage our time effectively and ensure the highest quality of service, direct messages are the lowest priority of communication. Instead, we strongly encourage you to reach out via our Discord community.
We offer direct messaging as a private, personalised communication channel. However, to manage our time effectively and ensure the highest quality of service, direct messages are the lowest priority of communication. Instead, we strongly encourage you to reach out via our Discord community.
### 6.2 Purpose and Use
### 6.2. Purpose and Use
Direct messages should be used for:
@@ -372,26 +445,91 @@ Direct messages should be used for:
- Sensitive information that shouldn't be shared publicly
- Personalized support or consultation requests
### 6.3 Response Time
### 6.3. Response Time
- We aim to respond to direct messages within 5-7 business days.
- Complex inquiries may require additional time, which will be communicated to you.
### 6.4 Appropriate Use
### 6.4. Appropriate Use
- Direct messages should be used responsibly and for legitimate purposes only.
- Abusive, harassing, or spam messages will not be tolerated and may result in blocking or reporting to the platform.
### 6.5 Alternatives
### 6.5. Alternatives
We encourage users to consider the following alternatives before sending a direct message:
- Use our public support channels for general inquiries (see Section 1.1)
- Check our FAQ or documentation for commonly asked questions
- Post in our community forums for non-urgent matters
- Post in our Discord community forum channels for non-urgent matters
### 6.7 Consent and Acknowledgment
### 6.6. Consent and Acknowledgment
By sending a direct message, you acknowledge that you have read and agreed to this policy.
By sending a direct message, you acknowledge that you have read and agreed to this Policy.
Remember, while we value direct communication, we encourage the use of our public channels whenever possible to foster community engagement and shared learning.
**IMPORTANT: While we value direct communication, we strongly encourage the use of our public channels whenever possible to foster community engagement and shared learning. Direct messages are the lowest priority communication channel and may experience significant response delays.**
## 7. RESPONSE TIME GUIDELINES
### 7.1. Standard Response Times
All inquiries and communications are handled with a standard response time of **7-10 business days**. This applies to:
- General inquiries and questions
- Support requests
- Policy clarification requests
- Programme-related inquiries
- Technical support requests
- Security reports
- Content reports and moderation appeals
- All other communications
### 7.2. Business Days Definition
Business days are defined as Monday through Friday, excluding weekends and holidays. Response times are calculated from the time your message is received during business hours.
### 7.3. Complex Inquiries
Complex inquiries may require additional time beyond the standard 7-10 business days. In such cases, we will acknowledge your inquiry within the standard timeframe and provide an estimated completion date.
### 7.4. Follow-Up Communications
If you have not received a response after 10 business days, you may send a polite follow-up. Please avoid sending multiple follow-ups at shorter intervals, as this may delay response processing.
## 8. LIMITATION OF LIABILITY AND DISCLAIMERS
### 7.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, and maximum liability caps are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference and governs all matters related to communications and contact with our organisation.**
### 7.2. Communication-Specific Disclaimers
**Additional Limitations:**
**(a)** We are not liable for delays, failures, or errors in communication delivery or processing;
**(b)** We do not guarantee response times or availability of any communication channel;
**(c)** We are not responsible for third-party platform failures or communication service interruptions;
**(d)** Our liability is limited to the maximum extent permitted by applicable law.
## 8. CONTACT INFORMATION AND SUPPORT
### 8.1. General Contact
For general inquiries about this Policy or our communication channels:
**Email:** contact@nhcarrigan.com
**Discord Community:** https://chat.nhcarrigan.com
**Response Time:** Within 7-10 business days for general inquiries
### 8.2. Policy Questions
For questions about this Contact Policy:
**Email:** contact@nhcarrigan.com
**Subject Line:** Contact Policy Inquiry - [Brief Description]
---
*This Contact Policy establishes the terms and standards governing all communications with our organisation. By engaging in communication with us, you acknowledge that you have read, understood, and agree to comply with this Policy and all incorporated legal frameworks. For questions about this Policy, please contact us at contact@nhcarrigan.com.*
@@ -0,0 +1,291 @@
---
title: Development Review Policy
---
**POLICY GOVERNING REQUESTS FOR CODE REVIEWS, PROJECT PLANNING CONSULTATIONS, AND TECHNICAL WRITING REVIEWS**
## 1. INTRODUCTION AND SCOPE
### 1.1. Policy Overview
This Development Review Policy ("Policy") establishes the terms, conditions, and procedures governing requests for code reviews, project planning consultations, and technical writing reviews from NHCarrigan ("we," "us," "our," or "the Company"). This Policy operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, and all applicable legal protections by reference.
### 1.2. Service Availability and Eligibility
**IMPORTANT: Development reviews are provided as a FREE service EXCLUSIVELY to active members of our community. These services are NOT available to the general public. To be eligible, you MUST be an active, engaged member of our community with demonstrated participation and engagement. We reserve the right to verify community membership and activity before accepting any development review request.**
### 1.3. Legal Framework Integration
**IMPORTANT: This Policy does not create any binding obligations to provide development reviews or feedback. All development review requests are subject to our sole discretion and assessment of our relationship with the requester. Comprehensive disclaimers, warranty limitations, and liability protections are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 1.4. Scope of Application
This Policy applies to:
**(a)** All requests for code reviews and feedback;
**(b)** All requests for project planning consultations;
**(c)** All requests for technical writing reviews;
**(d)** All development review-related communications and interactions.
## 2. TYPES OF DEVELOPMENT REVIEWS AVAILABLE
### 2.1. Code Reviews
**Code Review Services:**
**(a)** Review of specific code submissions, pull requests, or codebase sections;
**(b)** Feedback on code quality, best practices, and potential improvements;
**(c)** Suggestions for code organisation, structure, and maintainability;
**(d)** Recommendations for performance optimisation, security considerations, and testing;
**(e)** Code reviews are provided based on industry best practices and professional standards;
**(f)** We reserve the right to decline code reviews if code is incomplete, inaccessible, or exceeds reasonable scope;
**(g)** Code reviews focus on specific, bounded submissions rather than entire codebases.
### 2.2. Project Planning Consultations
**Project Planning Consultation Services:**
**(a)** Written consultation responses to plan new projects or side projects;
**(b)** Guidance on project architecture, technology stack selection, and technical decisions;
**(c)** Assistance with project scope definition, milestone planning, and timeline estimation;
**(d)** Recommendations for project structure, development workflows, and best practices;
**(e)** Project planning consultations are provided in WRITTEN FORMAT ONLY; we do NOT schedule calls or video meetings for consultations;
**(f)** Project planning consultations are provided based on industry best practices and professional experience;
**(g)** We reserve the right to decline project planning consultations if projects exceed our expertise or if we cannot provide meaningful guidance;
**(h)** Consultations are one-time written responses focused on planning rather than ongoing project management.
### 2.3. Technical Writing Reviews
**Technical Writing Review Services:**
**(a)** Review of technical blog posts, articles, documentation, README files, or other technical writing;
**(b)** Feedback on clarity, structure, technical accuracy, and audience appropriateness;
**(c)** Suggestions for improving readability, organisation, and presentation of technical content;
**(d)** Recommendations for formatting, code examples, and visual aids;
**(e)** Technical writing reviews are provided based on technical communication best practices and professional standards;
**(f)** We reserve the right to decline technical writing reviews if content is incomplete, inaccessible, or exceeds reasonable scope;
**(g)** Reviews focus on specific pieces of writing rather than ongoing content creation.
### 2.4. Development Review Limitations
**IMPORTANT DISCLAIMERS:**
**(a)** Development reviews are provided for educational and improvement purposes only;
**(b)** We provide constructive feedback based on industry best practices and professional standards;
**(c)** We reserve the right to decline any development review request at our sole discretion;
**(d)** We are not obligated to provide reasons for declining development review requests;
**(e)** Development reviews do not guarantee improved outcomes, project success, or publication acceptance;
**(f)** Reviews are provided as one-off services and do not include ongoing support or follow-up consultations.
## 3. REQUEST ELIGIBILITY AND REQUIREMENTS
### 3.1. Relationship Requirements
**ELIGIBILITY REQUIREMENT - ACTIVE COMMUNITY MEMBERSHIP:**
**IMPORTANT: Development reviews are FREE services provided EXCLUSIVELY to active members of our community. These services are NOT available to the general public or individuals who are not actively engaged in our community.**
For comprehensive eligibility requirements, eligibility criteria, and information about becoming an active community member, please refer to our [Community Membership Eligibility Policy](/about/community-membership-eligibility).
### 3.2. Request Information Requirements
**Required Information:**
**(a)** **Review Type**: Specify which type of development review is requested (code review, project planning consultation, or technical writing review);
**(b)** **Materials Access**: Provide access links, attachments, or materials to be reviewed;
**(c)** **Review Purpose**: Clear explanation of why the review is needed and what you hope to achieve;
**(d)** **Specific Focus Areas**: Any particular areas, concerns, or questions you'd like addressed;
**(e)** **Deadline Information**: Specific deadline for when feedback is needed, if applicable;
**(f)** **Relationship Context**: Brief summary of connection to our community or organisation.
### 3.3. Material Submission Requirements
**Submission Standards:**
**(a)** **Code Reviews**: Code must be accessible via GitHub, GitLab, or similar platform, or provided as files; code should be substantially complete and ready for review;
**(b)** **Project Planning**: Project ideas or proposals should be clearly described; existing project materials may be provided for context;
**(c)** **Technical Writing**: Writing must be substantially complete and accessible; documents should be provided via web URL;
**(d)** Materials must be substantially complete and ready for review;
**(e)** Incomplete or inaccessible materials may result in request decline or delay;
**(f)** We reserve the right to request additional information or clarification before accepting a development review request.
### 3.4. Request Submission Process
**Submission Requirements:**
**(a)** All development review requests must be submitted through our official development review request form;
**(b)** Requests submitted through other channels may not be processed or may experience delays;
**(c)** Incomplete requests may be returned for additional information before processing;
**(d)** We reserve the right to request additional information or clarification before accepting a development review request.
## 4. DEVELOPMENT REVIEW PROCESS AND TIMELINES
### 4.1. Request Review and Acceptance
**Review Process:**
**(a)** We review all development review requests to assess eligibility, material completeness, and our ability to provide meaningful feedback;
**(b)** Request review typically occurs within five (5) business days of submission;
**(c)** We will notify requesters of acceptance or decline within five (5) business days;
**(d)** Request acceptance does not guarantee review completion if materials are later determined to be incomplete or inaccessible.
### 4.2. Review Preparation Timeline
**Timeline Expectations:**
**(a)** Accepted code reviews and technical writing reviews are typically completed within seven (7) to ten (10) business days of acceptance;
**(b)** Project planning consultations are typically completed within seven (7) to fourteen (14) business days of acceptance;
**(c)** Rush requests may be accommodated at our sole discretion but are not guaranteed;
**(d)** Requesters should provide a minimum of two (2) weeks advance notice for development review requests;
**(e)** Requests with less than two (2) weeks notice may be declined or may not be completed by the requested deadline;
**(f)** We are not liable for missed deadlines if insufficient notice is provided or if requesters fail to provide required materials in a timely manner.
### 4.3. Review Delivery
**Delivery Methods:**
**(a)** All development reviews are provided in WRITTEN FORMAT ONLY and are delivered via email to the requester;
**(b)** We do NOT schedule calls or video meetings to conduct development reviews; all feedback is provided in written format;
**(c)** Review content includes written comments, suggestions, and recommendations;
**(d)** Requesters are responsible for providing accurate contact information;
**(e)** We are not responsible for delivery failures caused by incorrect contact information or email system failures;
**(f)** Requesters will be notified when reviews have been completed and delivered.
## 5. REVIEW CONTENT AND STANDARDS
### 5.1. Review Accuracy and Honesty
**Content Standards:**
**(a)** All development reviews are provided honestly and constructively based on industry best practices and professional standards;
**(b)** We will provide actionable feedback and specific recommendations for improvement;
**(c)** Reviews reflect our genuine assessment of materials based on professional standards and best practices;
**(d)** We reserve the right to decline requests if we cannot provide constructive feedback in good faith.
### 5.2. Review Scope
**Content Limitations:**
**(a)** Reviews address materials submitted and focus on professional best practices and improvement opportunities;
**(b)** We will not verify all factual claims or test all code functionality in detail;
**(c)** Reviews focus on quality, best practices, structure, and professional presentation;
**(d)** We are not obligated to address every aspect requested if it falls outside our expertise or review scope;
**(e)** Reviews do not include rewriting code, creating content, or implementing changes; feedback is provided for requester implementation.
### 5.3. Confidentiality and Privacy
**Privacy Protections:**
**(a)** Review content and submitted materials are confidential and shared only with designated reviewers;
**(b)** Review content and materials are subject to our Privacy Policy and data protection practices;
**(c)** We maintain confidentiality of development review requests and materials except as necessary for review provision or as required by law.
## 6. LIMITATIONS AND RESTRICTIONS
### 6.1. Development Review Limitations
**Service Limitations:**
**(a)** We reserve the right to decline any development review request at our sole discretion;
**(b)** We will not provide reviews if we cannot do so constructively and helpfully;
**(c)** We are not obligated to provide reasons for declining development review requests;
**(d)** Development review provision does not guarantee any specific outcome or result for the requester;
**(e)** Development reviews are provided for educational purposes and do not guarantee project success, code acceptance, or publication.
### 6.2. Frequency Limitations
**Request Frequency:**
**(a)** We may limit the number of development reviews provided to the same requester within a specified time period;
**(b)** Multiple simultaneous requests from the same requester may be consolidated or prioritised at our discretion;
**(c)** We reserve the right to decline requests if we determine development review provision would be excessive or burdensome;
**(d)** Requesters should coordinate multiple review needs to minimise burden and ensure timely completion;
**(e)** Updated materials may be submitted for re-review after implementing previous feedback.
### 6.3. Scope Limitations
**Review Scope Restrictions:**
**(a)** **Code Reviews**: Limited to specific, bounded code submissions (e.g., single pull requests, specific features, or codebase sections); entire codebase reviews are a separate paid service;
**(b)** **Project Planning Consultations**: Limited to planning sessions; ongoing project management or implementation support is a separate paid service;
**(c)** **Technical Writing Reviews**: Limited to specific pieces of writing; ongoing content creation or editing services are a separate paid service;
**(d)** Development reviews are one-off services and do not include ongoing support, follow-up consultations, or iterative review cycles.
If you require long-term review, consider [hiring us as a consultant](/about/hire).
### 6.4. Prohibited Uses
**Restrictions:**
**(a)** Development reviews may not be used for purposes other than professional development and improvement;
**(b)** Requesters may not misrepresent review feedback or claim endorsements that were not provided;
**(c)** Development reviews may not be used to support fraudulent, illegal, or unethical activities;
**(d)** Violation of these restrictions may result in refusal of future requests.
## 7. LIMITATION OF LIABILITY AND DISCLAIMERS
### 7.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, maximum liability caps, and all related legal protections are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference and governs all matters related to development review requests and provision.**
### 7.2. Development Review-Specific Disclaimers
**Additional Limitations:**
**(a)** Development reviews are provided as FREE services offered in good faith, to the best of our ability and knowledge;
**(b)** We are NOT liable for ANY outcomes, decisions, or results that arise from development reviews we provide, including but not limited to project success, code acceptance, publication, professional opportunities, or any consequences of implementing our feedback;
**(c)** What you do with the information, feedback, and recommendations provided in development reviews is YOUR OWN RESPONSIBILITY;
**(d)** We do not guarantee project success, code acceptance, publication, or professional opportunities based on our reviews;
**(e)** We are not responsible for third-party decisions, evaluation criteria, or acceptance processes;
**(f)** Our liability is limited to the maximum extent permitted by applicable law;
**(g)** Development reviews are provided "as is" without warranties of any kind;
**(h)** We are not responsible for requester implementation of feedback or changes made to materials based on our reviews.
## 8. REQUEST FORM AND SUBMISSION
### 8.1. Official Request Form
**Submission Channel:**
**(a)** All development review requests must be submitted through our official development review request form;
**(b)** The development review request form is available at: [Development Review Request Form](https://forms.nhcarrigan.com/o/docs/forms/3s8FCSwo4YtpMoptRmWxgU/4);
**(c)** Requests submitted through other channels may not be processed or may experience significant delays;
**(d)** The form collects all required information for development review request processing and preparation.
### 8.2. Form Completion Requirements
**Form Requirements:**
**(a)** Requesters must complete all required fields in the development review request form;
**(b)** Incomplete forms may be returned for additional information before processing;
**(c)** Requesters should provide accurate, complete information to ensure timely and accurate development review preparation;
**(d)** False or misleading information in request forms may result in request denial or review refusal.
## 9. CONTACT INFORMATION AND INQUIRIES
### 9.1. Development Review Inquiries
For questions about this Policy or development review requests:
**Email:** contact@nhcarrigan.com
**Subject Line:** Development Review Policy Inquiry - [Brief Description]
**Response Time:** See our [Contact Policy](/about/contact) for response time expectations.
### 9.2. Request Status Inquiries
For questions about the status of submitted development review requests:
**Email:** contact@nhcarrigan.com
**Subject Line:** Development Review Request Status - [Your Name]
**Response Time:** See our [Contact Policy](/about/contact) for response time expectations.
### 9.3. General Contact
For general inquiries about our organisation or services:
**Email:** contact@nhcarrigan.com
**Discord Community:** https://chat.nhcarrigan.com
## 10. ACKNOWLEDGEMENT AND AGREEMENT
### 10.1. Policy Acceptance
By submitting a development review request, you acknowledge that you have:
**(a)** Read, understood, and agree to comply with this Policy;
**(b)** Understood that development review provision is at our sole discretion;
**(c)** Provided accurate and complete information in your request;
**(d)** Acknowledged all disclaimers, limitations, and legal protections incorporated by reference.
### 10.2. Request Accuracy
**IMPORTANT: By submitting a development review request, you represent and warrant that all information provided is accurate, complete, and truthful. False or misleading information may result in request denial or refusal of future requests.**
---
*This Development Review Policy establishes the terms and procedures governing development review requests. This Policy does not create binding obligations to provide development reviews. All development review requests are subject to our sole discretion and assessment of our relationship with requesters. For questions about this Policy or to submit a development review request, please use the official development review request form or contact us at contact@nhcarrigan.com.*
+218 -36
View File
@@ -1,55 +1,237 @@
---
title: Support Our Work 💜
title: Donation and Support Policy
---
:::tip
We have started tracking our organisation's income and expenses publicly, through our [OpenCollective](https://opencollective.com/nhcarrigan) account!
**SUPPORTING OUR MISSION THROUGH VOLUNTARY CONTRIBUTIONS**
You can also donate there directly.
:::
## 1. INTRODUCTION AND PURPOSE
We are passionate about creating and maintaining free-to-use projects and providing guidance in various programming communities. Your support helps us continue this mission and expand our efforts.
### 1.1. Policy Overview
## 1. Why Support Us?
This Donation and Support Policy ("Policy") establishes the terms, conditions, and procedures governing voluntary financial contributions and other forms of support to NHCarrigan ("we," "us," "our," or "the Company"). This Policy operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, and all applicable legal protections by reference.
- **Free Resources**: We offer numerous projects that are free for everyone to use and learn from.
- **Community Guidance**: We actively participate in programming communities, offering help and mentorship.
- **Open Source Contributions**: Your support enables us to dedicate more time to open source development.
- **Continuous Improvement**: Donations help us improve existing projects and create new ones.
### 1.2. Legal Framework Integration
## 2. How Your Support Helps
**IMPORTANT: All donations and support are voluntary contributions. This Policy does not create any contractual obligations, warranties, or guarantees regarding the use of donated funds or the provision of any services or benefits. Comprehensive disclaimers and liability limitations are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
- Covers hosting and infrastructure costs
- Allows us to dedicate more time to project development and community support
- Enables us to invest in better tools and resources
- Supports our ongoing education and skill development
### 1.3. Scope of Application
## 3. Ways to Support
This Policy applies to:
**(a)** All voluntary financial contributions made to NHCarrigan;
**(b)** All forms of non-financial support and contributions;
**(c)** All donation platforms and payment processors used for contributions;
**(d)** All benefits, recognition, or acknowledgements associated with contributions.
We offer a few options for donations!
## 2. DONATION PURPOSE AND USE
- You can donate on our [OpenCollective](https://opencollective.com/nhcarrigan) page
- You can donate via a monthly subscription in our [Discord community](https://chat.nhcarrigan.com)
- You can donate via a monthly membership on our [Patreon](https://patreon.com/nhcarrigan)
- You can make monthly or one-time donations on [Ko-Fi](https://ko-fi.com/nhcarrigan)
- You can suggest and purchase gifts for us on [Throne](https://throne.com/naomilgbt)
- You can subscribe to our [Twitch streams](https://twitch.tv/naomilgbt)
- You can send direct donations via [PayPal](https://paypal.me/nhcarrigan) or [CashApp](https://cash.app/$nhcarrigan)
- You can sponsor us directly through our [GitHub organisation](https://github.com/sponsors/nhcarrigan) or [Naomi's account](https://github.com/sponsors/naomi-lgbt)
- Want to keep it simple? Make [monthly](https://buy.stripe.com/cN24iTfqu1j6b3afZ2) or [one-time](https://donate.stripe.com/8wMcPp1zE8Ly2wEcMR) donations directly through Stripe!
### 2.1. Mission and Objectives
## 4. Other Ways to Help
We are committed to creating and maintaining free-to-use projects and providing guidance in various programming communities. Voluntary contributions support our mission to:
- **Spread the Word**: Share our projects and resources with others who might benefit.
- **Contribute**: If you have skills to offer, consider contributing to our open source projects.
- **Provide Feedback**: Your input helps us improve and refine our work.
**(a)** **Free Resource Development**: Create and maintain projects that are free for everyone to use and learn from;
**(b)** **Community Guidance**: Provide active participation in programming communities, offering help and mentorship;
**(c)** **Open Source Contributions**: Enable dedicated time to open source development and community support;
**(d)** **Continuous Improvement**: Improve existing projects and create new resources for the community.
## 5. Thank You!
### 2.2. Use of Donated Funds
Every contribution, no matter the size, makes a significant impact. We deeply appreciate your support and are committed to using it to benefit the wider programming community.
Donated funds may be used for:
For any questions about donations or to discuss other support options, please contact us at donors@nhcarrigan.com.
**(a)** **Infrastructure Costs**: Hosting, servers, and technical infrastructure necessary for service provision;
**(b)** **Development Resources**: Tools, software licences, and resources necessary for project development;
**(c)** **Community Support**: Time and resources dedicated to community support and mentorship activities;
**(d)** **Educational Development**: Ongoing education and skill development to enhance service quality;
**(e)** **Organisational Operations**: Reasonable operational expenses necessary for organisational functioning.
## 6. Perks
### 2.3. Financial Transparency
Once you have donated, make sure to join our [Discord](https://chat.nhcarrigan.com)! Once there, ping Naomi to request access to our special supporters channel and role!
We maintain transparency regarding our organisation's income and expenses through our publicly accessible [OpenCollective](https://opencollective.com/NHCarrigan) account, where donors may review financial information and contribute directly.
**IMPORTANT DISCLAIMER:**
The ledger is updated as our workload allows. We make no guarantee of timely accuracy.
### 2.4. No Guarantees or Obligations
**IMPORTANT DISCLAIMER:**
**(a)** Donations do not create any contractual obligations or guarantees regarding specific project outcomes or service levels;
**(b)** We reserve the right to allocate donated funds at our sole discretion in furtherance of our mission;
**(c)** Donations do not entitle donors to any ownership interest, voting rights, or control over organisational decisions;
**(d)** We are not obligated to provide any specific services, features, or benefits in exchange for donations.
## 3. DONATION METHODS AND PLATFORMS
### 3.1. Available Donation Platforms
We accept voluntary contributions through the following platforms:
**(a)** **OpenCollective**: [https://opencollective.com/NHCarrigan](https://opencollective.com/NHCarrigan) - Primary platform for organisational donations and financial transparency;
**(b)** **Discord Community**: Monthly subscription options available within our [Discord community](https://chat.nhcarrigan.com);
**(c)** **Patreon**: Monthly membership options available at [https://patreon.com/NHCarrigan](https://patreon.com/NHCarrigan);
**(d)** **Ko-Fi**: Monthly or one-time donations available at [https://ko-fi.com/NHCarrigan](https://ko-fi.com/NHCarrigan);
**(e)** **Throne**: Gift suggestions and purchases available at [https://throne.com/naomilgbt](https://throne.com/naomilgbt);
**(f)** **Twitch**: Subscription options available through our [Twitch streams](https://twitch.tv/naomilgbt);
**(g)** **PayPal**: Direct donations via [https://paypal.me/NHCarrigan](https://paypal.me/NHCarrigan);
**(h)** **CashApp**: Direct donations via [https://cash.app/$NHCarrigan](https://cash.app/$NHCarrigan);
**(i)** **GitHub Sponsors**: Sponsorship options through our [GitHub organisation](https://github.com/sponsors/NHCarrigan) or [Naomi's account](https://github.com/sponsors/naomi-lgbt);
**(j)** **Stripe**: Direct [monthly](https://buy.stripe.com/cN24iTfqu1j6b3afZ2) or [one-time](https://donate.stripe.com/8wMcPp1zE8Ly2wEcMR) donations.
### 3.2. Third-Party Platform Terms
All donations processed through third-party platforms are subject to:
**(a)** The terms of service and privacy policies of the respective platform;
**(b)** Platform-specific fees, processing charges, and payment terms;
**(c)** Platform security measures and data handling practices;
**(d)** Our Privacy Policy regarding collection and processing of donor information.
### 3.3. Payment Processing
**(a)** All payment processing is handled by third-party payment processors;
**(b)** We do not directly process or store payment card information;
**(c)** Payment security is the responsibility of the respective payment platform;
**(d)** We are not liable for any issues arising from third-party payment processing.
## 4. DONOR RECOGNITION AND BENEFITS
### 4.1. Recognition Programmes
We may provide recognition to donors through:
**(a)** Public acknowledgement in donor recognition lists (with explicit consent);
**(b)** Special roles or channels in our community platforms;
**(c)** Access to supporter-exclusive content or features;
**(d)** Other forms of recognition as determined at our sole discretion.
### 4.2. Supporter Benefits
Donors may be eligible for certain benefits, including:
**(a)** **Discord Community Access**: Access to special supporters channels and roles within our [Discord community](https://chat.nhcarrigan.com);
**(b)** **Early Access**: Early access to new features or content where applicable;
**(c)** **Recognition**: Public recognition in donor lists or supporter acknowledgements (with consent);
**(d)** **Community Engagement**: Enhanced engagement opportunities within our community platforms.
### 4.3. Benefit Limitations
**IMPORTANT:**
**(a)** Benefits are provided at our sole discretion and may be modified or discontinued at any time;
**(b)** Benefits do not create any contractual rights or obligations;
**(c)** We reserve the right to revoke benefits for violations of our Terms of Service or Community Code of Conduct;
**(d)** Benefits may vary based on donation amount, platform, or other factors determined by us.
### 4.4. Benefit Activation
To activate supporter benefits:
**(a)** Join our [Discord community](https://chat.nhcarrigan.com);
**(b)** Contact community leadership to request access to supporter channels and roles;
**(c)** Provide verification of donation if requested;
**(d)** Comply with all community standards and policies.
## 5. ALTERNATIVE FORMS OF SUPPORT
### 5.1. Non-Financial Contributions
We value and appreciate various forms of non-financial support:
**(a)** **Community Engagement**: Active participation in our community platforms and discussions;
**(b)** **Project Contributions**: Contributing code, documentation, or other resources to our open source projects;
**(c)** **Promotion and Advocacy**: Sharing our projects and resources with others who might benefit;
**(d)** **Feedback and Input**: Providing constructive feedback to help us improve and refine our work.
### 5.2. Contribution Guidelines
All non-financial contributions are subject to:
**(a)** Our Terms of Service and Acceptable Use Policy;
**(b)** Our Community Code of Conduct;
**(c)** Our Contributing Documentation for code and technical contributions;
**(d)** All applicable legal and policy frameworks.
## 6. DONATION TERMS AND CONDITIONS
### 6.1. Voluntary Nature
**(a)** All donations are strictly voluntary and non-refundable;
**(b)** Donations do not create any employment, partnership, or business relationship;
**(c)** Donations are not investments and do not provide any financial return or equity interest;
**(d)** We are not obligated to accept any donation and may refuse donations at our sole discretion.
### 6.2. Refund Policy
**(a)** Donations are generally non-refundable;
**(b)** Refund requests will be considered on a case-by-case basis for exceptional circumstances;
**(c)** Refund requests must be submitted within thirty (30) days of the donation date;
**(d)** Processing fees charged by payment platforms are non-refundable.
### 6.3. Tax Considerations
**(a)** We are not a tax-exempt organisation and cannot provide tax deduction documentation;
**(b)** Donors are responsible for determining the tax implications of their contributions;
**(c)** We recommend consulting with a tax professional regarding donation tax treatment;
**(d)** We do not provide tax advice or tax-related documentation.
### 6.4. Donation Modifications and Cancellations
**(a)** Recurring donations may be cancelled through the respective payment platform;
**(b)** We are not responsible for cancellation processes managed by third-party platforms;
**(c)** Cancellation of recurring donations does not affect benefits already provided;
**(d)** We reserve the right to modify or discontinue donation programmes at any time.
## 7. PRIVACY AND DATA PROTECTION
### 7.1. Donor Information
Donor information is handled in accordance with our Privacy Policy:
**(a)** We collect only information necessary for processing donations and providing benefits;
**(b)** Donor information is not sold or shared with third parties except as necessary for payment processing;
**(c)** Donors may request access to or deletion of their personal information;
**(d)** Public recognition requires explicit consent from donors.
### 7.2. Payment Information
**(a)** We do not directly process or store payment card information;
**(b)** Payment information is handled by third-party payment processors in accordance with their privacy policies;
**(c)** We are not responsible for data breaches or security incidents affecting third-party payment platforms;
**(d)** Donors should review payment platform privacy policies before making contributions.
## 8. LIMITATION OF LIABILITY AND DISCLAIMERS
### 8.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, and maximum liability caps are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference and governs all matters related to donations and support.**
### 8.2. Donation-Specific Disclaimers
In addition to comprehensive liability limitations:
**(a)** We are not liable for any issues arising from third-party payment platform failures or errors;
**(b)** We are not responsible for benefits or recognition that cannot be provided due to technical or operational limitations;
**(c)** We do not guarantee that donations will result in specific project outcomes or service improvements;
**(d)** We are not liable for any tax consequences or legal implications of donations.
## 9. CONTACT INFORMATION
### 9.1. Donation Inquiries
For questions about donations or support options:
**Email:** donors@nhcarrigan.com
**Response Time:** Within 7-10 business days for donation-related inquiries
### 9.2. General Contact
For general inquiries about our organisation or services:
**Email:** contact@nhcarrigan.com
**Discord Community:** https://chat.nhcarrigan.com
## 10. ACKNOWLEDGEMENT AND GRATITUDE
### 10.1. Appreciation Statement
We extend our sincere gratitude to all individuals and organisations who support our mission through voluntary contributions. Every contribution, regardless of size, makes a significant impact on our ability to serve the programming community and maintain free, accessible resources.
### 10.2. Commitment to Mission
We are committed to using all contributions responsibly and effectively to further our mission of creating inclusive, accessible technology resources and supporting programming communities worldwide.
---
*This Donation and Support Policy establishes the terms governing voluntary contributions to our organisation. By making a donation, you acknowledge that you have read, understood, and agree to the terms set forth in this Policy. For questions about donations, please contact us at donors@nhcarrigan.com.*
+243 -33
View File
@@ -1,55 +1,265 @@
---
title: Hire us!
title: Professional Services and Commission Policy
---
We're excited about the opportunity to collaborate with you and contribute to the success of your goals. Our team brings a wealth of experience and a passion for delivering high-quality solutions tailored to your specific needs.
**PROFESSIONAL SERVICES, CONSULTING, AND COMMISSION ENGAGEMENTS**
!["If you knew I was so unstable, why'd you hire me?"](https://cdn.nhcarrigan.com/hire.jpeg)
## 1. INTRODUCTION AND SCOPE
## 1. Our Services
### 1.1. Policy Overview
- **Discord Bot Development**: Custom bots to enhance your server's functionality
- **Web Development**: From simple websites to complex web applications
- **Community Management**: Strategies to grow and maintain thriving online communities
- **Technical Consulting**: Expert advice on your tech-related projects and decisions
This Professional Services and Commission Policy ("Policy") establishes the terms, conditions, and procedures governing professional services, consulting engagements, and commission-based work provided by NHCarrigan ("we," "us," "our," or "the Company"). This Policy operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, and all applicable legal protections by reference.
## 2. Engagement Options
### 1.2. Legal Framework Integration
We offer flexible ways to work together, catering to projects of all sizes and complexities:
**IMPORTANT: This Policy does not create any binding service agreements. All professional services engagements require separate written agreements that supersede this Policy. Comprehensive disclaimers, warranty limitations, and liability protections are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 2.1. Quick Sync (15 minutes)
### 1.3. Scope of Application
For those with a well-defined product idea or seeking a quick review of their community plan, book a quick sync.
This Policy applies to:
**(a)** All professional services and consulting engagements;
**(b)** All commission-based development and technical work;
**(c)** All mentorship and training services;
**(d)** All initial consultations and project discussions.
- Ideal for: Initial project discussions, quick advice, or community plan reviews
- Duration: 15 minutes
- Outcome: Rapid insights and direction for your project
## 2. AVAILABLE SERVICES
### 2.2. In-Depth Consultation (30 minutes)
### 2.1. Service Categories
For more complex, long-term, or in-depth projects, we recommend booking an in-depth consultation.
We offer professional services in the following categories:
- Ideal for: Detailed project planning, technical strategy discussions, or exploring long-term collaborations
- Duration: 30 minutes
- Outcome: Comprehensive project assessment and tailored recommendations
**(a)** **Discord Bot Development**: Custom bot development to enhance server functionality, including feature implementation, integration services, and ongoing maintenance;
**(b)** **Web Development**: Website and web application development services, ranging from simple websites to complex web applications, including front-end and back-end development;
**(c)** **Community Management**: Strategic consulting and services for growing and maintaining thriving online communities, including moderation strategies, engagement programmes, and community growth planning;
**(d)** **Technical Consulting**: Expert technical advice and consultation on technology-related projects, decisions, and strategic planning.
### 2.3. Mentorship Session (60 minutes)
### 2.2. Service Limitations
For those seeking personalized guidance and skill development, we offer a full mentorship session.
**IMPORTANT DISCLAIMERS:**
**(a)** Services are provided subject to availability and our sole discretion to accept or decline engagements;
**(b)** Service scope, deliverables, and timelines are determined through separate written agreements;
**(c)** We reserve the right to refuse service for any reason, including conflicts of interest, resource constraints, or project incompatibility;
**(d)** All services are subject to our Terms of Service, Acceptable Use Policy, and applicable legal frameworks.
- Ideal for: Individuals looking to enhance their skills in development, community management, or related areas
- Duration: 60 minutes
- Outcome: Personalized learning path, hands-on projects, and ongoing support
## 3. ENGAGEMENT OPTIONS AND CONSULTATION SERVICES
## 3. Why Choose Us?
### 3.1. Initial Consultation Services
- **Expertise**: Years of experience in development and community management
- **Flexibility**: Multiple engagement options to suit your needs and preferences
- **Personalized Approach**: Tailored solutions for your unique challenges
- **Commitment to Quality**: Delivering high-value insights and solutions in every interaction
We offer structured consultation services to assess project needs and determine appropriate engagement approaches:
## 4. Ready to Get Started?
### 3.2. Quick Sync Consultation (15 Minutes)
Submit a [commission request](https://forms.nhcarrigan.com/form/XRlQjeu8CbMrTA-v0IPOxlUPEPitLKXTWg70UUCIORA)!
**Purpose and Scope:**
**(a)** **Intended Use**: Initial project discussions, quick advice, or community plan reviews for well-defined product ideas;
**(b)** **Duration**: Fifteen (15) minutes;
**(c)** **Outcome**: Rapid insights and directional guidance for project planning;
**(d)** **Limitations**: Quick sync consultations provide preliminary guidance only and do not constitute comprehensive project planning or binding service commitments.
Not sure which option is right for you? Feel free to contact us with any questions. We're excited to explore how we can help bring your ideas to life and contribute to your success!
### 3.3. In-Depth Consultation (30 Minutes)
**Purpose and Scope:**
**(a)** **Intended Use**: Detailed project planning, technical strategy discussions, or exploration of long-term collaboration opportunities for complex, long-term, or in-depth projects;
**(b)** **Duration**: Thirty (30) minutes;
**(c)** **Outcome**: Comprehensive project assessment and tailored recommendations;
**(d)** **Limitations**: In-depth consultations provide strategic guidance but do not constitute binding service agreements or guarantee project acceptance.
### 3.4. Mentorship Session (60 Minutes)
**Purpose and Scope:**
**(a)** **Intended Use**: Personalized guidance and skill development for individuals seeking to enhance skills in development, community management, or related technical areas;
**(b)** **Duration**: Sixty (60) minutes;
**(c)** **Outcome**: Personalized learning path recommendations, hands-on project guidance, and ongoing support planning;
**(d)** **Limitations**: Mentorship sessions provide educational guidance and do not create ongoing mentorship relationships unless separately agreed.
### 3.5. Consultation Terms and Conditions
**IMPORTANT:**
**(a)** Consultation services are provided for informational and planning purposes only;
**(b)** Consultations do not create any binding service agreements or commitments;
**(c)** All consultation outcomes, recommendations, and advice are provided "as is" without warranties;
**(d)** Consultation fees, if applicable, are non-refundable and do not guarantee project acceptance or service provision.
## 4. SERVICE ENGAGEMENT PROCESS
### 4.1. Initial Inquiry and Assessment
**Engagement Process:**
**(a)** **Commission Request Submission**: Submit initial inquiries through our [commission request form](https://forms.nhcarrigan.com/o/docs/forms/a9K6uzJkpnTfnKgo19b4Rp/4);
**(b)** **Initial Review**: We review all commission requests to assess project scope, compatibility, and resource availability;
**(c)** **Consultation Scheduling**: Appropriate consultation services may be scheduled to discuss project requirements and engagement options;
**(d)** **Project Assessment**: Comprehensive assessment of project feasibility, timeline, and resource requirements.
### 4.2. Service Agreement Requirements
**Formal Engagement:**
**(a)** All professional service engagements require separate written service agreements;
**(b)** Service agreements specify project scope, deliverables, timelines, compensation, and terms;
**(c)** No services are provided until a written service agreement is executed by both parties;
**(d)** Service agreements supersede this Policy and establish binding terms for specific engagements.
### 4.3. Project Acceptance and Rejection
**Engagement Decisions:**
**(a)** We reserve the right to accept or decline any project at our sole discretion;
**(b)** Project acceptance is subject to resource availability, project compatibility, and our assessment of project feasibility;
**(c)** We are not obligated to provide reasons for project rejection;
**(d)** Consultation fees, if paid, are non-refundable regardless of project acceptance or rejection.
## 5. SERVICE QUALITY AND DELIVERABLES
### 5.1. Service Standards
We are committed to delivering high-quality professional services:
**(a)** **Expertise**: Years of experience in development, community management, and technical consulting;
**(b)** **Flexibility**: Multiple engagement options to accommodate diverse project needs and preferences;
**(c)** **Personalized Approach**: Tailored solutions addressing unique project challenges and requirements;
**(d)** **Quality Commitment**: Focus on delivering high-value insights and solutions in every engagement.
### 5.2. Deliverable Specifications
**Service Deliverables:**
**(a)** All deliverables are specified in individual service agreements;
**(b)** Deliverables are provided in accordance with agreed specifications and timelines;
**(c)** We reserve the right to modify deliverables with client consent and appropriate agreement amendments;
**(d)** Deliverable acceptance and approval processes are established in service agreements.
### 5.3. Service Limitations and Disclaimers
**IMPORTANT DISCLAIMERS:**
**(a)** Services are provided "as is" subject to the limitations and disclaimers in our Limitation of Liability and Indemnification Policy;
**(b)** We do not guarantee specific project outcomes, business results, or performance metrics;
**(c)** Service quality and outcomes may vary based on project complexity, client cooperation, and external factors;
**(d)** We are not responsible for client decisions made based on our services or recommendations.
## 6. COMPENSATION AND PAYMENT TERMS
### 6.1. Fee Structure
**Compensation Arrangements:**
**(a)** Consultation fees, if applicable, are specified at the time of consultation scheduling;
**(b)** Professional service fees are established in individual service agreements;
**(c)** Payment terms, schedules, and methods are specified in service agreements;
**(d)** All fees are non-refundable except as specifically provided in service agreements.
### 6.2. Payment Processing
**Payment Methods:**
**(a)** Payments are processed through secure third-party payment processors;
**(b)** Payment processing is subject to third-party platform terms and conditions;
**(c)** We are not responsible for payment processing delays or issues caused by third-party platforms;
**(d)** Payment information is handled in accordance with our Privacy Policy and applicable data protection laws.
### 6.3. Refund Policy
**Refund Terms:**
**(a)** Consultation fees are non-refundable;
**(b)** Professional service refunds are governed by individual service agreements;
**(c)** Refund requests must be submitted in writing and are subject to our review and approval;
**(d)** We reserve the right to refuse refunds for services already provided or work already completed.
## 7. INTELLECTUAL PROPERTY AND OWNERSHIP
### 7.1. Work Product Ownership
**Intellectual Property Rights:**
**(a)** Work product ownership is specified in individual service agreements;
**(b)** Unless otherwise agreed, we retain ownership of pre-existing intellectual property, tools, and methodologies;
**(c)** Client-specific work product ownership is determined by service agreement terms;
**(d)** All intellectual property terms are subject to applicable laws and our Terms of Service.
### 7.2. License and Usage Rights
**Usage Rights:**
**(a)** Usage rights for work product are established in service agreements;
**(b)** We may retain rights to use anonymised work product for portfolio and marketing purposes;
**(c)** Client usage rights are limited to the scope specified in service agreements;
**(d)** Unauthorised use of work product may constitute intellectual property infringement.
## 8. CONFIDENTIALITY AND PRIVACY
### 8.1. Confidential Information
**Confidentiality Obligations:**
**(a)** Confidentiality terms are established in individual service agreements;
**(b)** We maintain confidentiality of client information in accordance with our Privacy Policy and service agreements;
**(c)** Client information is not shared with third parties except as necessary for service provision or as required by law;
**(d)** Confidentiality obligations survive termination of service agreements.
### 8.2. Data Protection
**Privacy and Data Security:**
**(a)** Client data is handled in accordance with our Privacy Policy and applicable data protection laws;
**(b)** We implement reasonable security measures to protect client information;
**(c)** We are not liable for data breaches caused by third-party systems or client security failures;
**(d)** Data retention and deletion policies are specified in service agreements.
## 9. LIMITATION OF LIABILITY AND DISCLAIMERS
### 9.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, maximum liability caps, and all related legal protections are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference and governs all matters related to professional services and consulting engagements.**
### 9.2. Service-Specific Disclaimers
**Additional Limitations:**
**(a)** We are not liable for business decisions, outcomes, or results based on our services or recommendations;
**(b)** We do not guarantee specific project outcomes, performance metrics, or business results;
**(c)** We are not responsible for third-party services, platforms, or tools used in connection with our services;
**(d)** Our liability is limited to the maximum extent permitted by applicable law and service agreements.
## 10. TERMINATION AND CANCELLATION
### 10.1. Service Termination
**Termination Rights:**
**(a)** Termination rights and procedures are specified in individual service agreements;
**(b)** We reserve the right to terminate services for violations of our Terms of Service or service agreements;
**(c)** Clients may terminate services in accordance with service agreement terms;
**(d)** Termination does not affect accrued obligations or rights established prior to termination.
### 10.2. Cancellation Policy
**Cancellation Terms:**
**(a)** Consultation cancellations are subject to our cancellation policy specified at the time of scheduling;
**(b)** Service engagement cancellations are governed by individual service agreements;
**(c)** Cancellation fees may apply as specified in service agreements;
**(d)** We reserve the right to refuse future services following cancellation or termination.
## 11. CONTACT INFORMATION AND INQUIRIES
### 11.1. Commission and Service Inquiries
For inquiries about professional services or to submit commission requests:
**Commission Request Form:** [https://forms.nhcarrigan.com/o/docs/forms/a9K6uzJkpnTfnKgo19b4Rp/4](https://forms.nhcarrigan.com/o/docs/forms/a9K6uzJkpnTfnKgo19b4Rp/4)
**Email:** contact@nhcarrigan.com
**Response Time:** Within 7-10 business days for service inquiries
### 11.2. General Contact
For general inquiries about our organisation or services:
**Email:** contact@nhcarrigan.com
**Discord Community:** https://chat.nhcarrigan.com
## 12. ACKNOWLEDGEMENT AND AGREEMENT
### 12.1. Policy Acceptance
By engaging our professional services or submitting commission requests, you acknowledge that you have:
**(a)** Read, understood, and agree to comply with this Policy;
**(b)** Understood that this Policy does not create binding service agreements;
**(c)** Agreed that all professional services require separate written service agreements;
**(d)** Acknowledged all disclaimers, limitations, and legal protections incorporated by reference.
### 12.2. Service Agreement Supremacy
**IMPORTANT: This Policy provides general information about our professional services. All actual service engagements are governed by separate written service agreements that supersede this Policy and establish binding terms for specific projects.**
---
*This Professional Services and Commission Policy establishes general terms and information about our professional services offerings. This Policy does not create binding service agreements. All professional service engagements require separate written agreements. For questions about our services, please contact us through the commission request form or at contact@nhcarrigan.com.*
+245 -25
View File
@@ -2,52 +2,272 @@
title: Mentorship Programme Terms and Conditions
---
Here at NHCarrigan, we are dedicated to lowering the barriers of entry into tech and helping underprivileged/under-represented classes reach their goals. As part of this mission, we offer a mentorship programme ("Programme"). This Programme operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Community Policies, and all applicable legal protections by reference.
**COMPREHENSIVE TERMS AND CONDITIONS FOR MENTORSHIP PROGRAMME PARTICIPATION**
## 1. Introduction
## 1. INTRODUCTION AND SCOPE
These Terms and Conditions (“Terms”) outline the Programme provided by NHCarrigan (“Company”) and apply to all participants enrolled in the Programme. By enrolling, you (the "Mentee") agree to abide by these Terms. The Programme cost is $200 USD per month.
### 1.1. Policy Overview
### 1.1. Enrolment
This Mentorship Programme Terms and Conditions ("Terms" or "Agreement") establishes the terms, conditions, and procedures governing participation in the mentorship programme ("Programme") provided by NHCarrigan ("we," "us," "our," or "the Company"). This Agreement operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, and all applicable legal protections by reference.
To enrol in the Programme, [fill out the application](https://forms.nhcarrigan.com/form/gNv4NYZmdiMWpkUcnknII2yYCvnYNGAmabG5O5He9Mo).
### 1.2. Mission and Purpose
## 2. Programme Services
We are dedicated to lowering barriers of entry into technology and helping underprivileged and under-represented individuals reach their professional goals. The Programme is designed to provide structured mentorship, educational support, and career development opportunities to participants ("Mentees") who enrol in the Programme.
Upon successful enrolment, the Mentee receives the following benefits:
### 1.3. Legal Framework Integration
### 2.1 Dedicated Discord Channels
**IMPORTANT: Comprehensive warranty disclaimers, liability limitations, and all related legal protections are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference and governs all matters related to Programme participation. The Programme is provided "as is" without warranties of any kind.**
Participants will have access to private Discord channels exclusively for Mentees. These channels get priority response times from the NHCarrigan team. All participants must adhere to our [Code of Conduct](/community/coc).
### 1.4. Scope of Application
### 2.3 Group Meetings
This Agreement applies to:
**(a)** All Mentees enrolled in the Programme;
**(b)** All Programme services, benefits, and resources provided to Mentees;
**(c)** All interactions between Mentees and Programme staff, mentors, and resources;
**(d)** All Programme-related activities, projects, and collaborations.
If the Programme enrols five (5) or more participants within a given month, all Mentees will be invited to a weekly monthly group meeting. This meeting will provide opportunities for group discussions, shared experiences, and networking.
## 2. ENROLMENT AND PARTICIPATION
### 2.4 Flagship Project
### 2.1. Enrolment Requirements
Participants will gain maintainer-level access to a repository under our [Mentorship GitHub organisation](https://github.com/nhcarrigan-mentorship), which they will use to build their flagship project under the tutelage of our team.
**Enrolment Process:**
**(a)** Enrolment in the Programme requires joining our [Discord community](https://chat.nhcarrigan.com/) and selecting the mentorship role through our self-selectable role system;
**(b)** We reserve the right to remove access for violations of community standards or Programme terms;
**(c)** Enrolment is subject to Programme capacity and resource availability;
**(d)** We are not obligated to provide reasons for access removal.
### 2.5 Career Prep and Resume Building
### 2.2. Agreement Acceptance
Participants will have the opportunity to build their resumes through an internship with NHCarrigan. This includes eligibility for project contributions and collaboration with the NHCarrigan team.
By enrolling in the Programme, Mentees acknowledge and agree that they have:
**(a)** Read, understood, and agree to be bound by these Terms;
**(b)** Reviewed and agree to comply with our Community Code of Conduct and all applicable policies;
**(c)** Acknowledged all disclaimers, limitations, and legal protections incorporated by reference.
### 2.6 Ongoing Support and Resources
## 3. PROGRAMME SERVICES AND BENEFITS
Mentees will receive continuous resume reviews, personalized learning roadmaps, and dedicated guidance for the duration of their membership. Additional resources and Programme updates will be provided as part of this lifetime membership support.
### 3.1. Dedicated Discord Channels
## 3. Code of Conduct
**Channel Access:**
**(a)** Mentees receive access to private Discord channels exclusively for Programme participants;
**(b)** These channels provide a space for peer support, questions, and community engagement;
**(c)** All participants must adhere to our [Community Code of Conduct](/community/coc) and Programme-specific guidelines;
**(d)** We reserve the right to restrict or revoke channel access for violations of community standards or Programme terms;
**(e)** Response times from programme leadership vary based on availability; the programme is designed to be self-guided.
Participants agree to uphold the Company's Code of Conduct and other policies, as outlined in the [NHCarrigan Documentation](https://docs.nhcarrigan.com/community/coc).
### 3.2. Flagship Project Development
## 4 Programme Modifications
**Project Access and Support:**
**(a)** Mentees gain maintainer-level access to a repository under our [Mentorship GitHub organisation](https://github.com/NHCarrigan-mentorship);
**(b)** Mentees use this repository to build their flagship project using self-guided documentation and resources;
**(c)** Project support and guidance are available upon request, subject to mentor availability and Programme resources;
**(d)** The programme is designed to be self-guided with comprehensive documentation, templates, and examples;
**(e)** We do not guarantee specific project outcomes, completion, or success.
NHCarrigan reserves the right to modify Programme features, benefits, and terms at any time. Notification of such changes will be provided to participants with as much advance notice as possible.
### 3.3. Career Preparation and Resume Building
## 5. Termination and Cancellation
**Career Development Resources:**
**(a)** Mentees have access to comprehensive career preparation resources including resume templates, LinkedIn guides, application examples, and interview preparation materials;
**(b)** Career preparation is primarily self-guided using provided resources and templates;
**(c)** Optional support and feedback are available upon request, subject to mentor availability;
**(d)** Career preparation resources are provided for educational and development purposes;
**(e)** We do not guarantee employment, job placement, or specific career outcomes.
Participants may cancel their membership at any time, by providing written notice to our team indicating their desire to drop-out and the reason for leaving.
### 3.4. Ongoing Resources and Support
## 6. Contact Information
**Resource Library and Support:**
**(a)** Mentees have access to a comprehensive resource library including templates, examples, guides, and checklists for all programme stages;
**(b)** The programme is designed to be self-guided with participants working at their own pace;
**(c)** Optional support, reviews, and feedback are available upon request, subject to mentor availability and Programme capacity;
**(d)** Additional resources and Programme updates are provided as part of programme participation;
**(e)** We reserve the right to modify or discontinue specific resources or support services with reasonable notice.
For questions or further information, please contact the NHCarrigan team through the official support channels listed in the [documentation](/about/contact).
### 3.5. Self-Guided Programme Structure
**Programme Philosophy:**
**(a)** The programme is designed to be self-guided and self-managed;
**(b)** Participants work at their own pace with no mandatory deadlines or review requirements;
**(c)** Comprehensive documentation, templates, and resources are provided to support independent learning;
**(d)** Reviews, approvals, and support are optional and available upon request, not guaranteed;
**(e)** Programme leadership and mentors are not monitoring every participant action or progress;
**(f)** **IMPORTANT: To get the most value from the programme experience, participants should actively ask mentors questions as much as possible. Mentors are available to help, but they rely on participants to initiate contact and ask for assistance when needed.**
### 3.6. Service Limitations and Disclaimers
**IMPORTANT DISCLAIMERS:**
**(a)** Programme services and resources are provided "as is" without warranties of any kind;
**(b)** The programme is self-guided; participants are responsible for their own learning and progress;
**(c)** We do not guarantee specific learning outcomes, skill development, or career advancement;
**(d)** Programme benefits, resources, and support may vary based on mentor availability, resource constraints, and Programme capacity;
**(e)** Reviews, approvals, and support are optional and provided when requested and available, not guaranteed;
**(f)** We reserve the right to modify Programme features, benefits, and services at any time with reasonable notice.
## 4. CODE OF CONDUCT AND PARTICIPATION STANDARDS
### 4.1. Community Standards Compliance
**Code of Conduct Requirements:**
**(a)** All Mentees must comply with our [Community Code of Conduct](/community/coc) and all applicable community policies;
**(b)** Violations of community standards may result in Programme suspension or termination;
**(c)** We reserve the right to take disciplinary action for conduct that violates community standards or Programme terms;
**(d)** Programme participation does not exempt Mentees from community standards or disciplinary procedures.
### 4.2. Programme Participation Standards
**Participation Requirements:**
**(a)** Mentees are expected to actively engage with Programme resources and work through programme documentation at their own pace;
**(b)** Mentees must maintain respectful and professional conduct in all Programme interactions;
**(c)** Mentees are responsible for their own learning and development progress;
**(d)** The programme is self-guided; participants work independently using provided resources;
**(e)** We reserve the right to terminate Programme participation for failure to meet participation standards or violations of community standards.
## 5. PROGRAMME MODIFICATIONS AND CHANGES
### 5.1. Right to Modify Programme
**Modification Authority:**
**(a)** We reserve the right to modify Programme features, benefits, terms, and services at any time;
**(b)** Significant modifications will be communicated to enrolled Mentees with as much advance notice as possible;
**(c)** Modifications may include changes to Programme structure, benefits, fees, or participation requirements;
**(d)** Continued Programme participation following modifications constitutes acceptance of modified terms.
### 5.2. Programme Discontinuation
**Discontinuation Rights:**
**(a)** We reserve the right to discontinue the Programme at any time with reasonable notice to enrolled Mentees;
**(b)** In the event of Programme discontinuation, we will provide reasonable notice to participants;
**(c)** We are not liable for any consequences arising from Programme discontinuation;
**(d)** Programme discontinuation does not affect accrued obligations or rights established prior to discontinuation.
## 6. TERMINATION AND CANCELLATION
### 6.1. Mentee Cancellation Rights
**Cancellation Process:**
**(a)** Mentees may withdraw from the Programme at any time by providing written notice to our team;
**(b)** Withdrawal notices should indicate the Mentee's desire to withdraw and the reason for leaving;
**(c)** Withdrawal becomes effective immediately upon receipt of notice;
**(d)** No fees or penalties apply to voluntary withdrawal.
### 6.2. Company Termination Rights
**Termination Authority:**
**(a)** We reserve the right to terminate Programme participation for violations of these Terms, Community Code of Conduct, or applicable policies;
**(b)** We may terminate Programme participation for failure to meet participation standards or violations of community standards;
**(c)** Termination may be immediate for serious violations or with notice for other circumstances;
**(d)** We are not obligated to provide continued access following termination.
### 6.3. Effect of Termination
**Post-Termination:**
**(a)** Upon termination, Mentees lose access to Programme benefits, channels, and resources;
**(b)** Mentees retain ownership of work products created during Programme participation;
**(c)** Confidentiality and intellectual property obligations survive termination;
**(d)** We are not obligated to provide ongoing support or resources following termination.
## 7. INTELLECTUAL PROPERTY AND WORK PRODUCT
### 7.1. Mentee Work Product Ownership
**Ownership Rights:**
**(a)** Mentees retain ownership of work products, projects, and contributions created during Programme participation;
**(b)** Work products created in Programme repositories are subject to repository licensing terms;
**(c)** We may request permission to showcase Mentee work for Programme promotion and portfolio purposes;
**(d)** Mentees grant us a non-exclusive license to use anonymised work products for Programme improvement and promotion.
### 7.2. Programme Materials and Resources
**Company Intellectual Property:**
**(a)** All Programme materials, resources, and content remain our intellectual property;
**(b)** Mentees may use Programme materials for personal learning and development purposes;
**(c)** Programme materials may not be redistributed, sold, or used for commercial purposes without permission;
**(d)** Unauthorised use of Programme materials may constitute intellectual property infringement.
## 8. PRIVACY AND DATA PROTECTION
### 8.1. Information Collection and Use
**Data Handling:**
**(a)** Mentee information is collected and processed in accordance with our Privacy Policy;
**(b)** We collect information necessary for Programme administration, support, and improvement;
**(c)** Mentee information is not shared with third parties except as necessary for Programme provision or as required by law;
**(d)** Mentees may request access to or deletion of their personal information in accordance with our Privacy Policy.
### 8.2. Programme Communications
**Communication Practices:**
**(a)** Programme communications may include email, Discord messages, and other digital channels;
**(b)** Mentees consent to receive Programme-related communications;
**(c)** Communications are subject to our Privacy Policy and data protection practices;
**(d)** Mentees may opt out of non-essential communications while remaining enrolled in the Programme.
## 9. LIMITATION OF LIABILITY AND DISCLAIMERS
### 9.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, maximum liability caps, and all related legal protections are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference and governs all matters related to Programme participation.**
### 9.2. Programme-Specific Disclaimers
**Additional Limitations:**
**(a)** We are not liable for Mentee learning outcomes, career advancement, or professional success;
**(b)** We do not guarantee job placement, employment opportunities, or specific career outcomes;
**(c)** We are not responsible for Mentee decisions made based on Programme guidance or resources;
**(d)** Our liability is limited to the maximum extent permitted by applicable law.
## 10. PROGRAMME FEES
### 10.1. Free Programme
**No Fees:**
**(a)** The Mentorship Programme is offered entirely free of charge;
**(b)** We do not collect tuition fees, academic fees, or any other programme-related charges;
**(c)** Participants may incur costs for third-party services such as hosting for application deployment;
**(d)** All such costs are paid directly to third-party service providers;
**(e)** Our organisation does not collect, process, or receive any payments related to these third-party services.
### 10.2. Voluntary Donations
**Donation Policy:**
**(a)** We welcome voluntary donations to support programme operations;
**(b)** Donations are entirely optional and do not affect programme participation or outcomes;
**(c)** Information about donation options is available at: [https://donate.nhcarrigan.com/](https://donate.nhcarrigan.com/);
**(d)** Donations do not create any obligations or entitlements beyond those set forth in these Terms.
## 11. CONTACT INFORMATION AND SUPPORT
### 11.1. Programme Inquiries
For questions about the Programme or to submit cancellation notices:
**Email:** contact@nhcarrigan.com
**Response Time:** Within 7-10 business days for Programme-related inquiries
### 11.2. General Contact
For general inquiries about our organisation or services:
**Email:** contact@nhcarrigan.com
**Discord Community:** https://chat.nhcarrigan.com
**Support Channels:** As specified in our [Contact Policy](/about/contact)
## 12. ACKNOWLEDGEMENT AND AGREEMENT
### 12.1. Terms Acceptance
By enrolling in the Programme, Mentees acknowledge that they have:
**(a)** Read, understood, and agree to be bound by these Terms;
**(b)** Reviewed and agree to comply with all applicable policies and community standards;
**(c)** Understood that the Programme is free and self-guided;
**(d)** Acknowledged all disclaimers, limitations, and legal protections incorporated by reference.
### 12.2. Entire Agreement
These Terms, together with all incorporated policies and agreements, constitute the entire agreement between Mentees and the Company regarding Programme participation and supersede all prior agreements and understandings.
---
*This Mentorship Programme Terms and Conditions establishes the terms governing participation in our mentorship programme. By enrolling in the Programme, you acknowledge that you have read, understood, and agree to be bound by these Terms. For questions about the Programme, please contact us at contact@nhcarrigan.com.*
+8 -8
View File
@@ -2,17 +2,17 @@
title: Mission Statement
---
This Mission Statement ("Statement") articulates the core values and guiding principles of NHCarrigan ("The Company") in its efforts to build inclusive, ethical, and sustainable technology solutions and foster welcoming online communities. This Statement operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Community Policies, and all applicable legal protections by reference.
This Mission Statement ("Statement") articulates the core values and guiding principles of NHCarrigan ("The Company") in its efforts to build inclusive, ethical, and sustainable technology solutions and foster welcoming online communities. This Statement operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, and all applicable legal protections by reference.
## 1. Core Values
### 1.1. Commitment to Inclusivity
The Company shall actively work to dismantle barriers and promote diversity in all areas of its operations. We seek to create spaces where all individuals, particularly from marginalized communities, feel supported and valued.
The Company shall actively work to dismantle barriers and promote diversity in all areas of its operations. We seek to create spaces where all individuals, particularly from marginalised communities, feel supported and valued.
### 1.2. Sustainability as a Priority
Environmental sustainability is integral to the Company's mission. We shall consistently minimize our carbon footprint, use eco-friendly technologies, and ensure that every project aligns with our environmental goals.
Environmental sustainability is integral to the Company's mission. We shall consistently minimise our carbon footprint, use eco-friendly technologies, and ensure that every project aligns with our environmental goals.
### 1.3. Ethical Responsibility
@@ -30,17 +30,17 @@ Our projects are community-centric, encouraging collaboration and input from div
The Company is committed to tearing down the systemic and social barriers that exist in the tech industry. We actively work to make the field more accessible to individuals from all backgrounds, particularly those who have historically been excluded.
### 1.7. Challenging Toxic Behaviors
### 1.7. Challenging Toxic Behaviours
We recognize that toxic behaviors and exclusionary practices harm communities. The Company shall take a proactive stance in challenging these behaviors within our industry and within the tech communities we interact with, fostering spaces where collaboration, respect, and growth thrive.
We recognise that toxic behaviours and exclusionary practices harm communities. The Company shall take a proactive stance in challenging these behaviours within our industry and within the tech communities we interact with, fostering spaces where collaboration, respect, and growth thrive.
### 1.8. Comprehensive Community Support and Member Welfare
The Company is dedicated to providing comprehensive support systems for community members, including mentorship for new developers, recognition and appreciation programs, and robust member welfare frameworks. Through guided mentorship, educational resources, crisis response systems, and hands-on support, we help individuals thrive within our communities and succeed in the tech industry, particularly focusing on support for underrepresented groups.
The Company is dedicated to providing comprehensive support systems for community members, including mentorship for new developers, recognition and appreciation programmes, and robust member welfare frameworks. Through guided mentorship, educational resources, crisis response systems, and hands-on support, we help individuals thrive within our communities and succeed in the tech industry, particularly focusing on support for underrepresented groups.
## 2. Strategic Goals
### 2.1. Elevating Marginalized Voices
### 2.1. Elevating Marginalised Voices
The Company is committed to using its platform to elevate the voices and contributions of individuals from underrepresented communities in tech and beyond.
@@ -64,7 +64,7 @@ We will continue to build and expand initiatives aimed at mentoring and supporti
### 3.1. Right to Amend
The Company reserves the right to amend this Statement as necessary to reflect evolving best practices and organizational goals.
The Company reserves the right to amend this Statement as necessary to reflect evolving best practices and organisational goals.
### 3.2. Notification of Changes
+289
View File
@@ -0,0 +1,289 @@
---
title: Mock Interview Policy
---
**POLICY GOVERNING REQUESTS FOR MOCK INTERVIEWS AND INTERVIEW PREPARATION**
## 1. INTRODUCTION AND SCOPE
### 1.1. Policy Overview
This Mock Interview Policy ("Policy") establishes the terms, conditions, and procedures governing requests for mock interviews and interview preparation sessions from NHCarrigan ("we," "us," "our," or "the Company"). This Policy operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, and all applicable legal protections by reference.
### 1.2. Service Availability and Eligibility
**IMPORTANT: Mock interviews are provided as a FREE service EXCLUSIVELY to active members of our community. These services are NOT available to the general public. To be eligible, you MUST be an active, engaged member of our community with demonstrated participation and engagement. We reserve the right to verify community membership and activity before accepting any mock interview request.**
### 1.3. Legal Framework Integration
**IMPORTANT: This Policy does not create any binding obligations to provide mock interviews or interview preparation. All mock interview requests are subject to our sole discretion and assessment of our relationship with the requester. Comprehensive disclaimers, warranty limitations, and liability protections are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 1.4. Scope of Application
This Policy applies to:
**(a)** All requests for mock interview sessions;
**(b)** All requests for technical interview preparation;
**(c)** All requests for behavioural interview preparation;
**(d)** All requests for interview coaching and feedback;
**(e)** All interview preparation-related communications and interactions.
## 2. TYPES OF MOCK INTERVIEWS AVAILABLE
### 2.1. Technical Mock Interviews
**Technical Interview Services:**
**(a)** Mock interviews focused on technical skills, coding challenges, and problem-solving;
**(b)** Practice with algorithm and data structure questions;
**(c)** System design discussion and architecture questions;
**(d)** Technical deep-dives on specific technologies or frameworks;
**(e)** Technical interviews are provided based on industry-standard interview practices;
**(f)** We reserve the right to decline technical interviews if topics exceed our expertise or if we cannot provide meaningful practice.
### 2.2. Behavioural Mock Interviews
**Behavioural Interview Services:**
**(a)** Mock interviews focused on behavioural questions and situational scenarios;
**(b)** Practice with STAR (Situation, Task, Action, Result) method responses;
**(c)** Discussion of past experiences and project examples;
**(d)** Practice answering common behavioural questions;
**(e)** Behavioural interviews are provided based on professional interview best practices;
**(f)** We reserve the right to decline behavioural interviews if we cannot provide meaningful practice.
### 2.3. Combined Mock Interviews
**Combined Interview Services:**
**(a)** Mock interviews combining both technical and behavioural components;
**(b)** Full interview simulation matching real interview formats;
**(c)** Practice with mixed question types and interview styles;
**(d)** Comprehensive interview preparation covering multiple aspects;
**(e)** Combined interviews provide realistic interview experience;
**(f)** We reserve the right to decline combined interviews if scope exceeds our capacity or expertise.
### 2.4. Interview Preparation Limitations
**IMPORTANT DISCLAIMERS:**
**(a)** Mock interviews are provided for practice and preparation purposes only;
**(b)** We provide constructive feedback based on interview best practices and professional standards;
**(c)** We reserve the right to decline any mock interview request at our sole discretion;
**(d)** We are not obligated to provide reasons for declining mock interview requests;
**(e)** Mock interviews do not guarantee success in actual job interviews or job offers.
## 3. REQUEST ELIGIBILITY AND REQUIREMENTS
### 3.1. Relationship Requirements
**ELIGIBILITY REQUIREMENT - ACTIVE COMMUNITY MEMBERSHIP:**
**IMPORTANT: Mock interviews are FREE services provided EXCLUSIVELY to active members of our community. These services are NOT available to the general public or individuals who are not actively engaged in our community.**
For comprehensive eligibility requirements, eligibility criteria, and information about becoming an active community member, please refer to our [Community Membership Eligibility Policy](/about/community-membership-eligibility).
### 3.2. Request Information Requirements
**Required Information:**
**(a)** **Interview Type**: Specify which type of mock interview is requested (technical, behavioural, or combined);
**(b)** **Target Role**: Information about the position or type of role being interviewed for;
**(c)** **Company Information**: Name of company or type of company (if applicable and willing to share);
**(d)** **Interview Format**: Information about expected interview format (phone, video, in-person, panel, etc.);
**(e)** **Specific Focus Areas**: Any particular areas, topics, or concerns the requester would like addressed;
**(f)** **Interview Date**: Date of actual interview (if applicable) to determine preparation timeline;
**(g)** **Resume or Profile**: Link to resume, LinkedIn profile, or portfolio for interviewer context;
**(h)** **Relationship Context**: Brief summary of connection to our community or organisation.
### 3.3. Interview Session Requirements
**Session Standards:**
**(a)** Mock interviews are typically conducted via video call or voice call;
**(b)** Requesters must have reliable internet connection and appropriate technology for video/voice calls;
**(c)** Mock interviews typically last between thirty (30) and sixty (60) minutes;
**(d)** Requesters should be prepared to actively participate and engage in the mock interview;
**(e)** We reserve the right to reschedule or cancel sessions if technical issues prevent meaningful interaction.
### 3.4. Request Submission Process
**Submission Requirements:**
**(a)** All mock interview requests must be submitted through our official mock interview request form;
**(b)** Requests submitted through other channels may not be processed or may experience delays;
**(c)** Incomplete requests may be returned for additional information before processing;
**(d)** We reserve the right to request additional information or clarification before accepting a mock interview request.
## 4. MOCK INTERVIEW PROCESS AND TIMELINES
### 4.1. Request Review and Acceptance
**Review Process:**
**(a)** We review all mock interview requests to assess eligibility, interview type appropriateness, and our ability to provide meaningful practice;
**(b)** Request review typically occurs within five (5) business days of submission;
**(c)** We will notify requesters of acceptance or decline within five (5) business days;
**(d)** Request acceptance does not guarantee interview session if scheduling conflicts arise or if we later determine we cannot provide meaningful practice.
### 4.2. Interview Scheduling Timeline
**Timeline Expectations:**
**(a)** Accepted mock interview requests are typically scheduled within seven (7) to fourteen (14) business days of acceptance;
**(b)** Rush requests may be accommodated at our sole discretion but are not guaranteed;
**(c)** Requesters should provide a minimum of two (2) weeks advance notice for mock interview requests;
**(d)** Requests with less than two (2) weeks notice may be declined or may not be scheduled before the requester's actual interview date;
**(e)** We are not liable for missed scheduling if insufficient notice is provided or if requesters fail to respond to scheduling communications in a timely manner.
### 4.3. Interview Session Conduct
**Session Format:**
**(a)** Mock interviews are conducted in a professional, supportive environment;
**(b)** Sessions include interview questions, practice responses, and constructive feedback;
**(c)** Feedback is provided during and after the interview session;
**(d)** Requesters are expected to participate actively and engage authentically;
**(e)** Sessions may be recorded for feedback purposes with requester consent;
**(f)** We reserve the right to end sessions early if conduct becomes inappropriate or unprofessional.
### 4.4. Feedback Delivery
**Feedback Methods:**
**(a)** Feedback is typically provided verbally during and immediately after the interview session;
**(b)** Written feedback summaries may be provided via email following the session;
**(c)** Feedback includes strengths, areas for improvement, and specific recommendations;
**(d)** Requesters are responsible for providing accurate contact information for feedback delivery;
**(e)** We are not responsible for delivery failures caused by incorrect contact information or email system failures.
## 5. INTERVIEW CONTENT AND STANDARDS
### 5.1. Interview Accuracy and Realism
**Content Standards:**
**(a)** Mock interviews are designed to simulate real interview experiences based on industry standards;
**(b)** Questions and scenarios are based on common interview practices and professional standards;
**(c)** Interviews reflect realistic expectations and common interview formats;
**(d)** We reserve the right to decline requests if we cannot provide realistic interview practice in good faith.
### 5.2. Interview Scope
**Content Limitations:**
**(a)** Interviews address topics relevant to the requested interview type and target role;
**(b)** We will not provide actual interview questions from specific companies if we have insider knowledge;
**(c)** Interviews focus on general preparation, best practices, and skill demonstration;
**(d)** We are not obligated to address every topic requested if it falls outside our expertise or interview scope;
**(e)** Mock interviews do not guarantee coverage of all topics that may appear in actual interviews.
### 5.3. Confidentiality and Privacy
**Privacy Protections:**
**(a)** Mock interview content and discussions are confidential and shared only with designated interviewers;
**(b)** Requesters may request copies of feedback summaries in accordance with applicable laws and policies;
**(c)** Interview content and information are subject to our Privacy Policy and data protection practices;
**(d)** We maintain confidentiality of mock interview requests and sessions except as necessary for interview provision or as required by law;
**(e)** Recordings, if made, are used only for feedback purposes and are subject to our Privacy Policy.
## 6. LIMITATIONS AND RESTRICTIONS
### 6.1. Mock Interview Limitations
**Service Limitations:**
**(a)** We reserve the right to decline any mock interview request at our sole discretion;
**(b)** We will not provide mock interviews if we cannot do so constructively and helpfully;
**(c)** We are not obligated to provide reasons for declining mock interview requests;
**(d)** Mock interview provision does not guarantee any specific outcome or result for the requester;
**(e)** Mock interviews are provided for educational and preparation purposes and do not guarantee job offers, interview success, or professional opportunities.
### 6.2. Frequency Limitations
**Request Frequency:**
**(a)** We may limit the number of mock interviews provided to the same requester within a specified time period;
**(b)** Multiple simultaneous requests from the same requester may be consolidated or prioritized at our discretion;
**(c)** We reserve the right to decline requests if we determine mock interview provision would be excessive or burdensome;
**(d)** Requesters should coordinate multiple interview preparation needs to minimise burden and ensure timely scheduling;
**(e)** Follow-up mock interviews may be available after implementing previous feedback and additional preparation.
### 6.3. Prohibited Uses
**Restrictions:**
**(a)** Mock interviews may not be used for purposes other than professional interview preparation;
**(b)** Requesters may not record sessions without explicit consent and agreement;
**(c)** Mock interviews may not be used to support fraudulent, illegal, or unethical activities;
**(d)** Requesters may not share interview questions or content with others in ways that violate confidentiality;
**(e)** Violation of these restrictions may result in refusal of future requests.
## 7. LIMITATION OF LIABILITY AND DISCLAIMERS
### 7.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, maximum liability caps, and all related legal protections are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference and governs all matters related to mock interview requests and provision.**
### 7.2. Mock Interview-Specific Disclaimers
**Additional Limitations:**
**(a)** Mock interviews are provided as FREE services offered in good faith, to the best of our ability and knowledge;
**(b)** We are NOT liable for ANY outcomes, decisions, or results that arise from mock interviews we provide, including but not limited to job offers, interview success, hiring decisions, or professional opportunities;
**(c)** What you do with the information, feedback, and guidance provided during mock interviews is YOUR OWN RESPONSIBILITY;
**(d)** We do not guarantee job offers, interview success, or professional opportunities based on our mock interviews;
**(e)** We are not responsible for third-party interview decisions, evaluation criteria, or hiring processes;
**(f)** Our liability is limited to the maximum extent permitted by applicable law;
**(g)** Mock interviews are provided "as is" without warranties of any kind;
**(h)** We are not responsible for requester performance in actual interviews or implementation of feedback.
## 8. REQUEST FORM AND SUBMISSION
### 8.1. Official Request Form
**Submission Channel:**
**(a)** All mock interview requests must be submitted through our official mock interview request form;
**(b)** The mock interview request form is available at: [Mock Interview Request Form](https://forms.nhcarrigan.com/o/docs/forms/5eaR5UQ2nKYDT6vu3Ptdex/4);
**(c)** Requests submitted through other channels may not be processed or may experience significant delays;
**(d)** The form collects all required information for mock interview request processing and scheduling.
### 8.2. Form Completion Requirements
**Form Requirements:**
**(a)** Requesters must complete all required fields in the mock interview request form;
**(b)** Incomplete forms may be returned for additional information before processing;
**(c)** Requesters should provide accurate, complete information to ensure timely and appropriate mock interview preparation;
**(d)** False or misleading information in request forms may result in request denial or interview refusal.
## 9. CONTACT INFORMATION AND INQUIRIES
### 9.1. Mock Interview Inquiries
For questions about this Policy or mock interview requests:
**Email:** contact@nhcarrigan.com
**Subject Line:** Mock Interview Policy Inquiry - [Brief Description]
**Response Time:** See our [Contact Policy](/about/contact) for response time expectations.
### 9.2. Request Status Inquiries
For questions about the status of submitted mock interview requests:
**Email:** contact@nhcarrigan.com
**Subject Line:** Mock Interview Request Status - [Your Name]
**Response Time:** See our [Contact Policy](/about/contact) for response time expectations.
### 9.3. General Contact
For general inquiries about our organisation or services:
**Email:** contact@nhcarrigan.com
**Discord Community:** https://chat.nhcarrigan.com
## 10. ACKNOWLEDGEMENT AND AGREEMENT
### 10.1. Policy Acceptance
By submitting a mock interview request, you acknowledge that you have:
**(a)** Read, understood, and agree to comply with this Policy;
**(b)** Understood that mock interview provision is at our sole discretion;
**(c)** Provided accurate and complete information in your request;
**(d)** Acknowledged all disclaimers, limitations, and legal protections incorporated by reference.
### 10.2. Request Accuracy
**IMPORTANT: By submitting a mock interview request, you represent and warrant that all information provided is accurate, complete, and truthful. False or misleading information may result in request denial or refusal of future requests.**
---
*This Mock Interview Policy establishes the terms and procedures governing mock interview requests. This Policy does not create binding obligations to provide mock interviews. All mock interview requests are subject to our sole discretion and assessment of our relationship with requesters. For questions about this Policy or to submit a mock interview request, please use the official mock interview request form or contact us at contact@nhcarrigan.com.*
+291
View File
@@ -0,0 +1,291 @@
---
title: Portfolio Review Policy
---
**POLICY GOVERNING REQUESTS FOR RESUME, LINKEDIN, GITHUB, AND PORTFOLIO REVIEWS**
## 1. INTRODUCTION AND SCOPE
### 1.1. Policy Overview
This Portfolio Review Policy ("Policy") establishes the terms, conditions, and procedures governing requests for reviews of resumes, LinkedIn profiles, GitHub profiles, portfolios, and related professional materials from NHCarrigan ("we," "us," "our," or "the Company"). This Policy operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, and all applicable legal protections by reference.
### 1.2. Service Availability and Eligibility
**IMPORTANT: Portfolio reviews are provided as a FREE service EXCLUSIVELY to active members of our community. These services are NOT available to the general public. To be eligible, you MUST be an active, engaged member of our community with demonstrated participation and engagement. We reserve the right to verify community membership and activity before accepting any review request.**
### 1.3. Legal Framework Integration
**IMPORTANT: This Policy does not create any binding obligations to provide reviews or feedback. All review requests are subject to our sole discretion and assessment of our relationship with the requester. Comprehensive disclaimers, warranty limitations, and liability protections are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 1.4. Scope of Application
This Policy applies to:
**(a)** All requests for resume reviews and feedback;
**(b)** All requests for LinkedIn profile reviews and optimisation suggestions;
**(c)** All requests for GitHub profile reviews and improvement recommendations;
**(d)** All requests for portfolio website reviews and feedback;
**(e)** All requests for related professional profile materials reviews;
**(f)** All review-related communications and interactions.
## 2. TYPES OF REVIEWS AVAILABLE
### 2.1. Resume Reviews
**Resume Review Services:**
**(a)** Comprehensive review of resume content, formatting, and structure;
**(b)** Feedback on technical skills presentation and organisation;
**(c)** Suggestions for improving clarity, impact, and ATS (Applicant Tracking System) compatibility;
**(d)** Recommendations for highlighting relevant experience and projects;
**(e)** Resume reviews are provided based on industry best practices and professional standards;
**(f)** We reserve the right to decline resume reviews if materials are incomplete or if we cannot provide meaningful feedback.
### 2.2. LinkedIn Profile Reviews
**LinkedIn Profile Review Services:**
**(a)** Review of LinkedIn profile completeness and optimisation;
**(b)** Feedback on headline, summary, and experience sections;
**(c)** Suggestions for improving profile visibility and professional branding;
**(d)** Recommendations for skills, endorsements, and recommendations;
**(e)** LinkedIn reviews are provided based on professional networking best practices;
**(f)** We reserve the right to decline LinkedIn reviews if profiles are inaccessible or incomplete.
### 2.3. GitHub Profile Reviews
**GitHub Profile Review Services:**
**(a)** Review of GitHub profile README and pinned repositories;
**(b)** Feedback on repository organisation and documentation quality;
**(c)** Suggestions for improving contribution graph visibility and project presentation;
**(d)** Recommendations for profile optimisation and professional presentation;
**(e)** GitHub reviews are provided based on open source and developer community best practices;
**(f)** We reserve the right to decline GitHub reviews if profiles are private or inaccessible.
### 2.4. Portfolio Reviews
**Portfolio Review Services:**
**(a)** Review of portfolio website design, navigation, and user experience;
**(b)** Feedback on project presentation and case study quality;
**(c)** Suggestions for improving portfolio content and technical implementation;
**(d)** Recommendations for showcasing skills and achievements effectively;
**(e)** Portfolio reviews are provided based on web development and design best practices;
**(f)** We reserve the right to decline portfolio reviews if websites are inaccessible or incomplete.
### 2.5. Review Limitations
**IMPORTANT DISCLAIMERS:**
**(a)** Reviews are provided for educational and improvement purposes only;
**(b)** We provide constructive feedback based on industry best practices and professional standards;
**(c)** We reserve the right to decline any review request at our sole discretion;
**(d)** We are not obligated to provide reasons for declining review requests;
**(e)** Reviews do not guarantee improved outcomes in job applications, interviews, or professional opportunities.
## 3. REQUEST ELIGIBILITY AND REQUIREMENTS
### 3.1. Relationship Requirements
**ELIGIBILITY REQUIREMENT - ACTIVE COMMUNITY MEMBERSHIP:**
**IMPORTANT: Portfolio reviews are FREE services provided EXCLUSIVELY to active members of our community. These services are NOT available to the general public or individuals who are not actively engaged in our community.**
For comprehensive eligibility requirements, eligibility criteria, and information about becoming an active community member, please refer to our [Community Membership Eligibility Policy](/about/community-membership-eligibility).
### 3.2. Request Information Requirements
**Required Information:**
**(a)** **Review Type**: Specify which type of review is requested (resume, LinkedIn, GitHub, portfolio, or combination);
**(b)** **Materials Access**: Provide access links or attachments for materials to be reviewed;
**(c)** **Review Purpose**: Clear explanation of why the review is needed and what opportunity it supports;
**(d)** **Target Role or Industry**: Information about the type of positions or opportunities being pursued;
**(e)** **Specific Focus Areas**: Any particular areas or concerns the requester would like addressed;
**(f)** **Deadline Information**: Specific deadline for when feedback is needed, if applicable;
**(g)** **Relationship Context**: Brief summary of connection to our community or organisation.
### 3.3. Material Submission Requirements
**Submission Standards:**
**(a)** **Resumes**: Must be submitted as PDF files with current, accurate information;
**(b)** **LinkedIn Profiles**: Must be publicly accessible or access must be granted;
**(c)** **GitHub Profiles**: Must be publicly accessible or access must be granted;
**(d)** **Portfolios**: Must be accessible via URL and functional;
**(e)** Materials must be substantially complete and ready for review;
**(f)** Incomplete or inaccessible materials may result in request decline or delay;
**(g)** We reserve the right to request additional information or clarification before accepting a review request.
### 3.4. Request Submission Process
**Submission Requirements:**
**(a)** All review requests must be submitted through our official portfolio review request form;
**(b)** Requests submitted through other channels may not be processed or may experience delays;
**(c)** Incomplete requests may be returned for additional information before processing;
**(d)** We reserve the right to request additional information or clarification before accepting a review request.
## 4. REVIEW PROCESS AND TIMELINES
### 4.1. Request Review and Acceptance
**Review Process:**
**(a)** We review all portfolio review requests to assess eligibility, material completeness, and our ability to provide meaningful feedback;
**(b)** Request review typically occurs within five (5) business days of submission;
**(c)** We will notify requesters of acceptance or decline within five (5) business days;
**(d)** Request acceptance does not guarantee review completion if materials are later determined to be incomplete or inaccessible.
### 4.2. Review Preparation Timeline
**Timeline Expectations:**
**(a)** Accepted reviews are typically completed within seven (7) to ten (10) business days of acceptance;
**(b)** Rush requests may be accommodated at our sole discretion but are not guaranteed;
**(c)** Requesters should provide a minimum of two (2) weeks advance notice for review requests;
**(d)** Requests with less than two (2) weeks notice may be declined or may not be completed by the requested deadline;
**(e)** We are not liable for missed deadlines if insufficient notice is provided or if requesters fail to provide required materials in a timely manner.
### 4.3. Review Delivery
**Delivery Methods:**
**(a)** Reviews are provided in WRITTEN FORMAT ONLY and are delivered via email to the requester;
**(b)** We do NOT schedule calls or video meetings to conduct portfolio reviews; all feedback is provided in written format;
**(c)** Feedback includes written comments, suggestions, and recommendations;
**(d)** Reviews may reference specific sections or elements of submitted materials;
**(e)** Requesters are responsible for providing accurate contact information;
**(f)** We are not responsible for delivery failures caused by incorrect contact information or email system failures;
**(g)** Requesters will be notified when reviews have been completed and delivered.
## 5. REVIEW CONTENT AND STANDARDS
### 5.1. Review Accuracy and Honesty
**Content Standards:**
**(a)** All reviews are provided honestly and constructively based on industry best practices and professional standards;
**(b)** We will provide actionable feedback and specific recommendations for improvement;
**(c)** Reviews reflect our genuine assessment of materials based on professional standards and best practices;
**(d)** We reserve the right to decline requests if we cannot provide constructive feedback in good faith.
### 5.2. Review Scope
**Content Limitations:**
**(a)** Reviews address materials submitted and focus on professional presentation and best practices;
**(b)** We will not verify factual claims or verify accuracy of information presented;
**(c)** Reviews focus on formatting, structure, clarity, and professional presentation;
**(d)** We are not obligated to address every aspect requested if it falls outside our expertise or review scope;
**(e)** Reviews do not include rewriting or creating content; feedback is provided for requester implementation.
### 5.3. Confidentiality and Privacy
**Privacy Protections:**
**(a)** Review content and submitted materials are confidential and shared only with designated reviewers;
**(b)** Requesters may request copies of review feedback in accordance with applicable laws and policies;
**(c)** Review content and materials are subject to our Privacy Policy and data protection practices;
**(d)** We maintain confidentiality of review requests and materials except as necessary for review provision or as required by law.
## 6. LIMITATIONS AND RESTRICTIONS
### 6.1. Review Limitations
**Service Limitations:**
**(a)** We reserve the right to decline any review request at our sole discretion;
**(b)** We will not provide reviews if we cannot do so constructively and helpfully;
**(c)** We are not obligated to provide reasons for declining review requests;
**(d)** Review provision does not guarantee any specific outcome or result for the requester;
**(e)** Reviews are provided for educational purposes and do not guarantee job offers, interviews, or professional opportunities.
### 6.2. Frequency Limitations
**Request Frequency:**
**(a)** We may limit the number of reviews provided to the same requester within a specified time period;
**(b)** Multiple simultaneous requests from the same requester may be consolidated or prioritised at our discretion;
**(c)** We reserve the right to decline requests if we determine review provision would be excessive or burdensome;
**(d)** Requesters should coordinate multiple review needs to minimise burden and ensure timely completion;
**(e)** Updated materials may be submitted for re-review after implementing previous feedback.
### 6.3. Prohibited Uses
**Restrictions:**
**(a)** Reviews may not be used for purposes other than professional development and improvement;
**(b)** Requesters may not misrepresent review feedback or claim endorsements that were not provided;
**(c)** Reviews may not be used to support fraudulent, illegal, or unethical activities;
**(d)** Violation of these restrictions may result in refusal of future requests.
## 7. LIMITATION OF LIABILITY AND DISCLAIMERS
### 7.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, maximum liability caps, and all related legal protections are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference and governs all matters related to review requests and provision.**
### 7.2. Review-Specific Disclaimers
**Additional Limitations:**
**(a)** Portfolio reviews are provided as FREE services offered in good faith, to the best of our ability and knowledge;
**(b)** We are NOT liable for ANY outcomes, decisions, or results that arise from portfolio reviews we provide, including but not limited to job offers, interviews, hiring decisions, or professional opportunities;
**(c)** What you do with the information, feedback, and recommendations provided in portfolio reviews is YOUR OWN RESPONSIBILITY;
**(d)** We do not guarantee job offers, interviews, or professional opportunities based on our reviews;
**(e)** We are not responsible for third-party decisions, application processes, or evaluation criteria;
**(f)** Our liability is limited to the maximum extent permitted by applicable law;
**(g)** Reviews are provided "as is" without warranties of any kind;
**(h)** We are not responsible for requester implementation of feedback or changes made to materials.
## 8. REQUEST FORM AND SUBMISSION
### 8.1. Official Request Form
**Submission Channel:**
**(a)** All portfolio review requests must be submitted through our official portfolio review request form;
**(b)** The portfolio review request form is available at: [Portfolio Review Request Form](https://forms.nhcarrigan.com/o/docs/forms/5QTNipBUg9cbTwyDoPMxsQ/4);
**(c)** Requests submitted through other channels may not be processed or may experience significant delays;
**(d)** The form collects all required information for review request processing and preparation.
### 8.2. Form Completion Requirements
**Form Requirements:**
**(a)** Requesters must complete all required fields in the portfolio review request form;
**(b)** Incomplete forms may be returned for additional information before processing;
**(c)** Requesters should provide accurate, complete information to ensure timely and accurate review preparation;
**(d)** False or misleading information in request forms may result in request denial or review refusal.
## 9. CONTACT INFORMATION AND INQUIRIES
### 9.1. Review Inquiries
For questions about this Policy or portfolio review requests:
**Email:** contact@nhcarrigan.com
**Subject Line:** Portfolio Review Policy Inquiry - [Brief Description]
**Response Time:** See our [Contact Policy](/about/contact) for response time expectations.
### 9.2. Request Status Inquiries
For questions about the status of submitted portfolio review requests:
**Email:** contact@nhcarrigan.com
**Subject Line:** Portfolio Review Request Status - [Your Name]
**Response Time:** See our [Contact Policy](/about/contact) for response time expectations.
### 9.3. General Contact
For general inquiries about our organisation or services:
**Email:** contact@nhcarrigan.com
**Discord Community:** https://chat.nhcarrigan.com
## 10. ACKNOWLEDGEMENT AND AGREEMENT
### 10.1. Policy Acceptance
By submitting a portfolio review request, you acknowledge that you have:
**(a)** Read, understood, and agree to comply with this Policy;
**(b)** Understood that review provision is at our sole discretion;
**(c)** Provided accurate and complete information in your request;
**(d)** Acknowledged all disclaimers, limitations, and legal protections incorporated by reference.
### 10.2. Request Accuracy
**IMPORTANT: By submitting a portfolio review request, you represent and warrant that all information provided is accurate, complete, and truthful. False or misleading information may result in request denial or refusal of future requests.**
---
*This Portfolio Review Policy establishes the terms and procedures governing portfolio review requests. This Policy does not create binding obligations to provide reviews. All review requests are subject to our sole discretion and assessment of our relationship with requesters. For questions about this Policy or to submit a portfolio review request, please use the official portfolio review request form or contact us at contact@nhcarrigan.com.*
+260
View File
@@ -0,0 +1,260 @@
---
title: Letter of Recommendation and Character Reference Policy
---
**POLICY GOVERNING REQUESTS FOR LETTERS OF RECOMMENDATION AND CHARACTER REFERENCES**
## 1. INTRODUCTION AND SCOPE
### 1.1. Policy Overview
This Letter of Recommendation and Character Reference Policy ("Policy") establishes the terms, conditions, and procedures governing requests for letters of recommendation and character references from NHCarrigan ("we," "us," "our," or "the Company"). This Policy operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, and all applicable legal protections by reference.
### 1.2. Service Availability and Eligibility
**IMPORTANT: Letters of recommendation and character references are provided as a FREE service EXCLUSIVELY to active members of our community. These services are NOT available to the general public. To be eligible, you MUST be an active, engaged member of our community with demonstrated participation and engagement. We reserve the right to verify community membership and activity before accepting any recommendation request.**
### 1.3. Legal Framework Integration
**IMPORTANT: This Policy does not create any binding obligations to provide recommendations or references. All recommendation requests are subject to our sole discretion and assessment of our relationship with the requester. Comprehensive disclaimers, warranty limitations, and liability protections are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 1.4. Scope of Application
This Policy applies to:
**(a)** All requests for letters of recommendation for academic, professional, or other purposes;
**(b)** All requests for character references for employment, volunteer positions, or other opportunities;
**(c)** All requests for professional endorsements or testimonials;
**(d)** All recommendation-related communications and interactions.
## 2. TYPES OF RECOMMENDATIONS AND REFERENCES
### 2.1. Academic Recommendations
**Academic Recommendation Letters:**
**(a)** Letters supporting applications for academic programmes, scholarships, or educational opportunities;
**(b)** Letters addressing academic performance, potential, and suitability for educational programmes;
**(c)** Academic recommendations are provided based on our direct knowledge of the requester's academic work, performance, or collaboration;
**(d)** We reserve the right to decline academic recommendations if we lack sufficient knowledge of the requester's academic qualifications or performance.
### 2.2. Professional Recommendations
**Professional Recommendation Letters:**
**(a)** Letters supporting employment applications, job opportunities, or career advancement;
**(b)** Letters addressing professional skills, work performance, and professional character;
**(c)** Professional recommendations are provided based on our direct experience working with or supervising the requester;
**(d)** We reserve the right to decline professional recommendations if we lack sufficient professional relationship or direct work experience with the requester.
### 2.3. Character References
**Character Reference Letters:**
**(a)** Letters addressing personal character, integrity, and suitability for positions requiring trust or responsibility;
**(b)** Letters supporting applications for volunteer positions, community roles, or other opportunities requiring character assessment;
**(c)** Character references are provided based on our personal knowledge of the requester's character and conduct;
**(d)** We reserve the right to decline character references if we lack sufficient personal knowledge of the requester or cannot provide a positive reference in good faith.
### 2.4. Recommendation Limitations
**IMPORTANT DISCLAIMERS:**
**(a)** We only provide recommendations for individuals with whom we have a direct, meaningful relationship;
**(b)** We will not provide recommendations if we cannot do so honestly and positively;
**(c)** We reserve the right to decline any recommendation request at our sole discretion;
**(d)** We are not obligated to provide reasons for declining recommendation requests.
## 3. REQUEST ELIGIBILITY AND REQUIREMENTS
### 3.1. Relationship Requirements
**ELIGIBILITY REQUIREMENT - ACTIVE COMMUNITY MEMBERSHIP:**
**IMPORTANT: Letters of recommendation and character references are FREE services provided EXCLUSIVELY to active members of our community. These services are NOT available to the general public or individuals who are not actively engaged in our community.**
For comprehensive eligibility requirements, eligibility criteria, and information about becoming an active community member, please refer to our [Community Membership Eligibility Policy](/about/community-membership-eligibility).
### 3.2. Request Information Requirements
**Required Information:**
**(a)** **Request Purpose**: Clear explanation of why the recommendation is needed and what opportunity it supports;
**(b)** **Opportunity Details**: Information about the position, programme, or opportunity the recommendation supports;
**(c)** **Deadline Information**: Specific deadline for when the recommendation is needed;
**(d)** **Submission Instructions**: Detailed instructions for how and where to submit the recommendation;
**(e)** **Relevant Context**: Any specific points, skills, or experiences the requester would like us to address;
**(f)** **Relationship Context**: Brief summary of our relationship and how we know each other;
**(g)** **Additional Materials**: Any relevant materials such as resumes, portfolios, or application materials that may assist in writing the recommendation.
### 3.3. Request Submission Process
**Submission Requirements:**
**(a)** All recommendation requests must be submitted through our official recommendation request form;
**(b)** Requests submitted through other channels may not be processed or may experience delays;
**(c)** Incomplete requests may be returned for additional information before processing;
**(d)** We reserve the right to request additional information or clarification before accepting a recommendation request.
## 4. RECOMMENDATION PROCESS AND TIMELINES
### 4.1. Request Review and Acceptance
**Review Process:**
**(a)** We review all recommendation requests to assess eligibility, relationship sufficiency, and our ability to provide a meaningful recommendation;
**(b)** Request review typically occurs within five (5) business days of submission;
**(c)** We will notify requesters of acceptance or decline within five (5) business days;
**(d)** Request acceptance does not guarantee recommendation provision if we later determine we cannot provide a positive recommendation in good faith.
### 4.2. Recommendation Preparation Timeline
**Timeline Expectations:**
**(a)** Accepted recommendations are typically completed within ten (10) to fourteen (14) business days of acceptance;
**(b)** Rush requests may be accommodated at our sole discretion but are not guaranteed;
**(c)** Requesters must provide a minimum of three (3) weeks advance notice for recommendation requests;
**(d)** Requests with less than three (3) weeks notice may be declined or may not be completed by the requested deadline;
**(e)** We are not liable for missed deadlines if insufficient notice is provided or if requesters fail to provide required information in a timely manner.
### 4.3. Recommendation Delivery
**Delivery Methods:**
**(a)** Recommendations are provided in WRITTEN FORMAT ONLY;
**(b)** We do NOT schedule calls or video meetings to conduct recommendations; all recommendations are provided as written letters or documents;
**(c)** Recommendations may be delivered through methods specified in the request, including:
**(i)** Direct submission to the requesting organisation or institution;
**(ii)** Email delivery to the requester or designated recipient;
**(iii)** Physical letter delivery when required;
**(iv)** Online submission through designated portals or systems;
**(d)** Requesters are responsible for providing accurate submission instructions and contact information;
**(e)** We are not responsible for delivery failures caused by incorrect submission information or third-party system failures;
**(f)** Requesters will be notified when recommendations have been submitted or delivered.
## 5. RECOMMENDATION CONTENT AND STANDARDS
### 5.1. Recommendation Accuracy and Honesty
**Content Standards:**
**(a)** All recommendations are written honestly and accurately based on our direct knowledge and experience;
**(b)** We will not misrepresent facts, exaggerate qualifications, or provide false information in recommendations;
**(c)** Recommendations reflect our genuine assessment of the requester's qualifications, character, and suitability;
**(d)** We reserve the right to decline requests if we cannot provide a positive recommendation in good faith.
### 5.2. Recommendation Scope
**Content Limitations:**
**(a)** Recommendations address only matters within our direct knowledge and experience;
**(b)** We will not speculate about matters outside our direct knowledge;
**(c)** Recommendations focus on relevant qualifications, skills, and experiences related to the requested opportunity;
**(d)** We are not obligated to address every aspect requested if it falls outside our knowledge or experience.
### 5.3. Confidentiality and Privacy
**Privacy Protections:**
**(a)** Recommendation content is confidential and shared only with designated recipients;
**(b)** Requesters may request copies of recommendations in accordance with applicable laws and policies;
**(c)** Recommendation content is subject to our Privacy Policy and data protection practices;
**(d)** We maintain confidentiality of recommendation requests and content except as necessary for recommendation provision or as required by law.
## 6. LIMITATIONS AND RESTRICTIONS
### 6.1. Recommendation Limitations
**Service Limitations:**
**(a)** We reserve the right to decline any recommendation request at our sole discretion;
**(b)** We will not provide recommendations if we cannot do so honestly and positively;
**(c)** We are not obligated to provide reasons for declining recommendation requests;
**(d)** Recommendation provision does not guarantee any specific outcome or result for the requester.
### 6.2. Frequency Limitations
**Request Frequency:**
**(a)** We may limit the number of recommendations provided to the same requester within a specified time period;
**(b)** Multiple simultaneous requests from the same requester may be consolidated or prioritized at our discretion;
**(c)** We reserve the right to decline requests if we determine recommendation provision would be excessive or burdensome;
**(d)** Requesters should coordinate multiple recommendation needs to minimise burden and ensure timely completion.
### 6.3. Prohibited Uses
**Restrictions:**
**(a)** Recommendations may not be used for purposes other than those specified in the original request;
**(b)** Requesters may not alter, modify, or misrepresent recommendation content;
**(c)** Recommendations may not be used to support fraudulent, illegal, or unethical activities;
**(d)** Violation of these restrictions may result in revocation of recommendations and refusal of future requests.
## 7. LIMITATION OF LIABILITY AND DISCLAIMERS
### 7.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, maximum liability caps, and all related legal protections are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference and governs all matters related to recommendation requests and provision.**
### 7.2. Recommendation-Specific Disclaimers
**Additional Limitations:**
**(a)** Recommendations are provided as FREE services offered in good faith, to the best of our ability and knowledge;
**(b)** We are NOT liable for ANY outcomes, decisions, or results that arise from recommendations we provide, including but not limited to acceptance, approval, success, rejection, or any consequences related to opportunities supported by our recommendations;
**(c)** What you do with the information and recommendations provided is YOUR OWN RESPONSIBILITY;
**(d)** We do not guarantee acceptance, approval, or success in any opportunity supported by our recommendations;
**(e)** We are not responsible for third-party decisions, application processes, or evaluation criteria;
**(f)** Our liability is limited to the maximum extent permitted by applicable law;
**(g)** Recommendations are provided "as is" without warranties of any kind.
## 8. REQUEST FORM AND SUBMISSION
### 8.1. Official Request Form
**Submission Channel:**
**(a)** All recommendation requests must be submitted through our official recommendation request form;
**(b)** The recommendation request form is available at: [Recommendation Request Form](https://forms.nhcarrigan.com/o/docs/forms/kGfLxZpmevftGCgqBzjoGD/4);
**(c)** Requests submitted through other channels may not be processed or may experience significant delays;
**(d)** The form collects all required information for recommendation request processing and preparation.
### 8.2. Form Completion Requirements
**Form Requirements:**
**(a)** Requesters must complete all required fields in the recommendation request form;
**(b)** Incomplete forms may be returned for additional information before processing;
**(c)** Requesters should provide accurate, complete information to ensure timely and accurate recommendation preparation;
**(d)** False or misleading information in request forms may result in request denial or recommendation revocation.
## 9. CONTACT INFORMATION AND INQUIRIES
### 9.1. Recommendation Inquiries
For questions about this Policy or recommendation requests:
**Email:** contact@nhcarrigan.com
**Subject Line:** Recommendation Policy Inquiry - [Brief Description]
**Response Time:** See our [Contact Policy](/about/contact) for response time expectations.
### 9.2. Request Status Inquiries
For questions about the status of submitted recommendation requests:
**Email:** contact@nhcarrigan.com
**Subject Line:** Recommendation Request Status - [Your Name]
**Response Time:** See our [Contact Policy](/about/contact) for response time expectations.
### 9.3. General Contact
For general inquiries about our organisation or services:
**Email:** contact@nhcarrigan.com
**Discord Community:** https://chat.nhcarrigan.com
## 10. ACKNOWLEDGEMENT AND AGREEMENT
### 10.1. Policy Acceptance
By submitting a recommendation request, you acknowledge that you have:
**(a)** Read, understood, and agree to comply with this Policy;
**(b)** Understood that recommendation provision is at our sole discretion;
**(c)** Provided accurate and complete information in your request;
**(d)** Acknowledged all disclaimers, limitations, and legal protections incorporated by reference.
### 10.2. Request Accuracy
**IMPORTANT: By submitting a recommendation request, you represent and warrant that all information provided is accurate, complete, and truthful. False or misleading information may result in request denial, recommendation revocation, or refusal of future requests.**
---
*This Letter of Recommendation and Character Reference Policy establishes the terms and procedures governing recommendation requests. This Policy does not create binding obligations to provide recommendations. All recommendation requests are subject to our sole discretion and assessment of our relationship with requesters. For questions about this Policy or to submit a recommendation request, please use the official recommendation request form or contact us at contact@nhcarrigan.com.*
+9 -3
View File
@@ -2,7 +2,7 @@
title: Environmental Impact Commitment
---
This Environmental Impact Commitment ("Commitment") outlines the principles and obligations that NHCarrigan ("The Company") upholds to minimize its environmental impact and contribute to global sustainability efforts. This Commitment operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Mission Statement, and all applicable legal protections by reference.
This Environmental Impact Commitment ("Commitment") outlines the principles and obligations that NHCarrigan ("The Company") upholds to minimise its environmental impact and contribute to global sustainability efforts. This Commitment operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Mission Statement, and all applicable legal protections by reference.
## 1. Definitions
@@ -26,7 +26,7 @@ A situation where the environmental harm caused by a project or activity exceeds
### 2.1. Commitment to Sustainability
The Company is committed to sustainability at all levels of its operations, actively seeking to minimize its environmental impact and promote long-term environmental health.
The Company is committed to sustainability at all levels of its operations, actively seeking to minimise its environmental impact and promote long-term environmental health.
### 2.2. Prioritization of Environmental Impact
@@ -34,7 +34,7 @@ Environmental considerations, including carbon footprint and resource consumptio
### 2.3. Responsible Technology Use
The Company shall only utilize technologies that align with its environmental goals, ensuring minimal energy consumption and environmental degradation.
The Company shall only utilise technologies that align with its environmental goals, ensuring minimal energy consumption and environmental degradation.
## 3. Carbon Offsetting
@@ -62,6 +62,12 @@ The Company reserves the right to refuse any project or contract that it determi
### 4.3. Continuous Monitoring
:::tip[Heads Up!]{icon=pen}
The policy or policies in this section are still a work in progress. We have not yet implemented the necessary infrastructure to comply with this section.
We are working very hard to get them in place as soon as possible. If you would like to help, consider [applying to join our team!](https://forms.nhcarrigan.com/o/docs/forms/mCxDu3snk9TzFiDjrT4Vc8/4)
:::
The Company shall continuously monitor the environmental impact of its ongoing operations and projects, making adjustments as necessary to remain aligned with its sustainability goals.
## 5. Legal and Ethical Compliance
+28 -28
View File
@@ -4,11 +4,11 @@ title: Community Disciplinary Appeals Policy
## 1. Preamble and Purpose
### 1.1 Introduction
### 1.1. Introduction
This Community Disciplinary Appeals Policy (hereinafter referred to as "the Policy") establishes the formal procedures and requirements for appealing disciplinary sanctions imposed by our moderation team. Whilst our Community Leaders exercise careful discretion and professional judgement when implementing disciplinary measures, we acknowledge that human error or misunderstandings may occasionally occur within any moderation system.
### 1.2 Purpose and Scope
### 1.2. Purpose and Scope
This Policy serves to:
- Provide a fair and transparent mechanism for reviewing disciplinary decisions
@@ -16,13 +16,13 @@ This Policy serves to:
- Maintain the integrity of our community standards whilst protecting individual rights
- Establish clear procedures for both appellants and review panels
### 1.3 Right of Appeal
### 1.3. Right of Appeal
Every community member who receives a disciplinary sanction has the fundamental right to appeal such decision through the procedures outlined herein, subject to the conditions and limitations specified in this Policy.
## 2. Definitions and Interpretation
### 2.1 Key Definitions
### 2.1. Key Definitions
For the purposes of this Policy:
- **"Appellant"** means any individual seeking to appeal a disciplinary sanction
@@ -31,13 +31,13 @@ For the purposes of this Policy:
- **"Original Decision"** means the initial disciplinary action being appealed
- **"Community Leaders"** means moderators, administrators, and other authorised personnel
### 2.2 Interpretation
### 2.2. Interpretation
This Policy shall be interpreted in accordance with principles of fairness, natural justice, and the overarching objectives of maintaining community safety and standards.
## 3. Grounds for Appeal
### 3.1 Acceptable Grounds
### 3.1. Acceptable Grounds
Appeals may be submitted on the following grounds:
1. **Procedural Irregularity**: The disciplinary process was not followed correctly
@@ -46,7 +46,7 @@ Appeals may be submitted on the following grounds:
4. **New Evidence**: Relevant evidence has become available that was not considered in the original decision
5. **Misinterpretation of Policy**: The community guidelines or terms of service were incorrectly applied
### 3.2 Inadmissible Appeals
### 3.2. Inadmissible Appeals
Appeals will not be considered on the following grounds:
1. General disagreement with community policies or guidelines
@@ -56,7 +56,7 @@ Appeals will not be considered on the following grounds:
## 4. Pre-Appeal Requirements
### 4.1 Mandatory Preparation
### 4.1. Mandatory Preparation
Prior to submitting an appeal, appellants must complete the following preparatory steps:
@@ -69,7 +69,7 @@ Prior to submitting an appeal, appellants must complete the following preparator
3. **Self-Assessment**: Complete a comprehensive self-assessment of the circumstances leading to the sanction
### 4.2 Required Documentation
### 4.2. Required Documentation
Appeals must include the following information:
1. **Identity Verification**: Full account details and contact information
@@ -81,11 +81,11 @@ Appeals must include the following information:
## 5. Appeal Submission Procedures
### 5.1 Formal Submission Process
### 5.1. Formal Submission Process
Appeals must be submitted through our official appeals portal: [Community Appeals Form](https://forms.nhcarrigan.com/form/l3PC15yalSWjdZASTQvGo22q_uj_7OtXAhZdcW35ev8)
Appeals must be submitted through our official appeals portal: [Community Appeals Form](https://forms.nhcarrigan.com/o/docs/forms/4w5VHsYiEkiS2mewvtuJYL/4)
### 5.2 Submission Requirements
### 5.2. Submission Requirements
All appeals must:
- Be submitted within thirty (30) days of the original sanction
@@ -93,7 +93,7 @@ All appeals must:
- Be written in clear, professional language
- Demonstrate good faith engagement with the appeals process
### 5.3 Multiple Appeal Prohibition
### 5.3. Multiple Appeal Prohibition
:::caution[Critical Warning]
Submitting multiple appeals for the same disciplinary sanction will result in automatic dismissal of all subsequent appeals and may constitute abuse of process, potentially leading to additional sanctions.
@@ -101,7 +101,7 @@ Submitting multiple appeals for the same disciplinary sanction will result in au
## 6. Review Process and Procedures
### 6.1 Initial Review
### 6.1. Initial Review
Upon receipt, all appeals undergo an initial administrative review to ensure:
- Compliance with submission requirements
@@ -109,7 +109,7 @@ Upon receipt, all appeals undergo an initial administrative review to ensure:
- Completeness of documentation
- Identification of appropriate grounds for appeal
### 6.2 Substantive Review
### 6.2. Substantive Review
Appeals meeting initial requirements proceed to substantive review, wherein the Appeals Panel shall:
1. Examine all evidence and documentation
@@ -117,13 +117,13 @@ Appeals meeting initial requirements proceed to substantive review, wherein the
3. Consider the appellant's submissions and arguments
4. Assess whether the appeal has merit under the established grounds
### 6.3 Review Timeline
### 6.3. Review Timeline
The Appeals Panel endeavours to complete reviews within fourteen (14) business days of receipt, though complex cases may require additional time.
## 7. Possible Outcomes and Decisions
### 7.1 Appeal Outcomes
### 7.1. Appeal Outcomes
Following review, the Appeals Panel may:
1. **Uphold the Appeal**: Overturn the original sanction entirely
@@ -131,7 +131,7 @@ Following review, the Appeals Panel may:
3. **Dismiss the Appeal**: Confirm the original sanction remains in full effect
4. **Remit for Reconsideration**: Return the matter for fresh consideration with specific directions
### 7.2 Decision Communication
### 7.2. Decision Communication
All appeal decisions shall be communicated in writing to the appellant, including:
- The outcome of the appeal
@@ -141,11 +141,11 @@ All appeal decisions shall be communicated in writing to the appellant, includin
## 8. Finality and Limitations
### 8.1 Decision Finality
### 8.1. Decision Finality
Decisions of the Appeals Panel are final and binding. No further appeals or reviews are available through our internal processes.
### 8.2 Discretionary Rights Reserved
### 8.2. Discretionary Rights Reserved
Notwithstanding this appeals process, we reserve the absolute right to:
- Deny or revoke access to our services at any time
@@ -153,7 +153,7 @@ Notwithstanding this appeals process, we reserve the absolute right to:
- Take additional action based on new information or circumstances
- Refuse service to any individual at our sole discretion
### 8.3 Abuse of Process
### 8.3. Abuse of Process
Repeated abuse of the appeals process, including but not limited to:
- Submitting frivolous or vexatious appeals
@@ -165,7 +165,7 @@ May result in permanent ineligibility for future appeals and additional discipli
## 9. Compliance and Acknowledgement
### 9.1 Terms Acceptance
### 9.1. Terms Acceptance
By submitting an appeal through this process, appellants explicitly acknowledge that they have:
- Read and understood this Appeals Policy in its entirety
@@ -173,7 +173,7 @@ By submitting an appeal through this process, appellants explicitly acknowledge
- Agreed to accept the decision of the Appeals Panel as final and binding
- Committed to full compliance with all community standards upon any reinstatement
### 9.2 Legal Framework Integration
### 9.2. Legal Framework Integration
This appeals process operates within our comprehensive legal and policy framework, including:
@@ -183,20 +183,20 @@ This appeals process operates within our comprehensive legal and policy framewor
**(c)** **Content and Moderation Policy**: Enforcement procedures and standards;
**(d)** **All applicable policies**: Privacy, acceptable use, and specialized policies incorporated by reference.
**(d)** **All applicable policies**: Privacy, acceptable use, and specialised policies incorporated by reference.
**IMPORTANT**: This appeals process is provided as an internal community service and does not create any legal rights or obligations beyond those established in our comprehensive legal policies. The availability of this process does not limit our right to take any action deemed necessary for community safety and integrity.
## 10. Policy Updates and Amendments
### 10.1 Amendment Rights
### 10.1. Amendment Rights
This Policy may be updated, modified, or amended at any time without prior notice. Appellants are responsible for ensuring familiarity with the current version of this Policy.
### 10.2 Effective Date
### 10.2. Policy Implementation
This Policy is effective immediately upon publication and applies to all appeals submitted after its implementation.
This Policy applies to all appeals submitted after its implementation.
---
*This Community Disciplinary Appeals Policy was last updated on 15 September 2025 and supersedes all previous versions.*
*This Community Disciplinary Appeals Policy.*
+104 -116
View File
@@ -4,11 +4,11 @@ title: Community Code of Conduct
## 1. Preamble and Foundational Principles
### 1.1 Introduction and Purpose
### 1.1. Introduction and Purpose
This Community Code of Conduct (hereinafter referred to as "the Code") establishes the fundamental standards of behaviour and conduct expected from all individuals participating in our community ecosystem. This Code serves as the cornerstone of our commitment to fostering an inclusive, safe, and productive environment wherein all members can participate meaningfully and contribute positively to our collective objectives.
### 1.2 Fundamental Values
### 1.2. Fundamental Values
Our community is built upon the following core principles:
- **Respect and Dignity**: Every individual deserves to be treated with courtesy, respect, and human dignity
@@ -17,31 +17,19 @@ Our community is built upon the following core principles:
- **Constructive Collaboration**: We encourage productive dialogue, constructive criticism, and collaborative problem-solving
- **Transparency and Accountability**: We operate with openness, honesty, and accept responsibility for our actions and decisions
### 1.3 Legal Framework and Policy Integration
### 1.3. Legal Framework and Policy Integration
This Code operates within and supplements our comprehensive legal and policy framework, including:
This Code operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Acceptable Use Policy, Content and Moderation Policy, Limitation of Liability and Indemnification Policy, and all applicable legal protections by reference.
**(a)** **Terms of Service**: Fundamental legal relationship and user obligations;
**(b)** **Acceptable Use Policy**: Detailed prohibited activities and usage restrictions;
**(c)** **Content and Moderation Policy**: Comprehensive content standards and moderation procedures;
**(d)** **Privacy Policy**: Data protection and privacy rights;
**(e)** **Limitation of Liability and Indemnification Policy**: Legal protections and risk allocation;
**(f)** **All other applicable legal policies**: Export control, service level agreements, and specialized policies.
**IMPORTANT**: Where this Code overlaps with our comprehensive legal policies, users are subject to both sets of requirements. For detailed enforcement procedures, content moderation standards, and legal protections, refer to the applicable specialized policies incorporated by reference.
**IMPORTANT**: Where this Code overlaps with our comprehensive legal policies, users are subject to both sets of requirements. For detailed enforcement procedures, content moderation standards, and legal protections, refer to the applicable specialised policies incorporated by reference.
## 2. Definitions and Scope of Application
### 2.1 Comprehensive Definitions
### 2.1. Comprehensive Definitions
For the purposes of this Code, the following definitions shall apply:
#### 2.1.1 Community Ecosystem
#### 2.1.1. Community Ecosystem
**"Our Community"** encompasses all platforms, spaces, and environments, whether digital, physical, or hybrid, where members interact under our organisation's auspices, including but not limited to:
- Official Discord servers and communication platforms
- Code repositories, version control systems, and development platforms
@@ -52,7 +40,7 @@ For the purposes of this Code, the following definitions shall apply:
- Virtual events, webinars, and online presentations
- Any other platform officially endorsed, managed, or sponsored by our organisation
#### 2.1.2 Community Participants
#### 2.1.2. Community Participants
**"Community Members"** refers to all individuals who participate in Our Community, regardless of their role, level of engagement, or duration of participation, including:
- Casual users and occasional participants
- Regular contributors and active members
@@ -61,7 +49,7 @@ For the purposes of this Code, the following definitions shall apply:
- Administrative staff and organisational representatives
- Guest speakers, invited participants, and temporary contributors
#### 2.1.3 Leadership and Authority
#### 2.1.3. Leadership and Authority
**"Community Leaders"** refers to individuals vested with official responsibilities, authority, and trust within Our Community, including:
- Community moderators and content moderators
- Technical administrators and system administrators
@@ -70,38 +58,38 @@ For the purposes of this Code, the following definitions shall apply:
- Event organisers and programme coordinators
- Senior administrators and executive leadership
#### 2.1.4 Conduct and Violations
#### 2.1.4. Conduct and Violations
**"Code of Conduct Violation"** means any behaviour, action, or communication that contravenes the guidelines, standards, and principles outlined in this Code or its associated policies.
**"Reporting"** refers to the formal process of bringing potential Code of Conduct violations to the attention of Community Leaders through officially designated channels and procedures.
**"Disciplinary Sanctions"** means the consequences, penalties, or corrective measures imposed upon community members who violate this Code, as determined by Community Leaders in accordance with established procedures.
### 2.2 Territorial and Temporal Scope
### 2.2. Territorial and Temporal Scope
#### 2.2.1 Primary Application
#### 2.2.1. Primary Application
This Code applies directly and immediately to all interactions, communications, and behaviours occurring within Our Community spaces, including:
- Public channels, forums, and discussion areas
- Private channels, direct messages, and personal communications conducted through community platforms
- Online and offline community-organised events and activities
- Any communication using official community branding, accounts, or platforms
#### 2.2.2 Extended Application
#### 2.2.2. Extended Application
This Code may also extend to interactions and behaviours occurring outside Our Community spaces when such conduct:
- Involves multiple Community Members in a manner that affects community relationships or dynamics
- Has a substantial, demonstrable impact on the well-being, safety, or participation of Community Members
- Significantly affects the reputation, integrity, or safety of Our Community or its members
- Constitutes harassment, threats, or other harmful behaviour directed at Community Members
#### 2.2.3 Temporal Considerations
#### 2.2.3. Temporal Considerations
This Code applies to:
- All current and ongoing interactions within Our Community
- Past behaviour and conduct of Community Members, including actions that occurred prior to joining Our Community
- Patterns of behaviour that may have commenced before participation in Our Community but continue to affect community dynamics
### 2.3 Reporting Framework
### 2.3. Reporting Framework
#### 2.3.1 Reporting Obligations and Encouragement
#### 2.3.1. Reporting Obligations and Encouragement
We strongly encourage the reporting of any violations of this Code, including but not limited to:
- Harassment, discrimination, or threats directed at Community Members
- Violations committed by Community Leaders or individuals in positions of authority
@@ -109,7 +97,7 @@ We strongly encourage the reporting of any violations of this Code, including bu
- Historical incidents, regardless of when they occurred
- Patterns of concerning behaviour that may not constitute individual violations but collectively create problems
#### 2.3.2 Community Leader Responsibilities
#### 2.3.2. Community Leader Responsibilities
Community Leaders commit to the following standards in handling reports:
- Treat all good-faith reports with seriousness, confidentiality, and respect
- Protect the privacy, safety, and security of all report submitters
@@ -120,35 +108,35 @@ Community Leaders commit to the following standards in handling reports:
## 3. Standards of Acceptable Conduct
### 3.1 Positive Behaviours and Expectations
### 3.1. Positive Behaviours and Expectations
Community Members are expected to demonstrate the following positive behaviours:
#### 3.1.1 Respectful Communication
#### 3.1.1. Respectful Communication
- Use welcoming, inclusive, and professional language in all interactions
- Listen actively and engage constructively with diverse perspectives and viewpoints
- Provide constructive feedback that focuses on ideas and contributions rather than individuals
- Acknowledge mistakes promptly, apologise sincerely when appropriate, and learn from errors
#### 3.1.2 Collaborative Engagement
#### 3.1.2. Collaborative Engagement
- Contribute positively to discussions and community activities
- Support and mentor newcomers and less experienced community members
- Share knowledge generously whilst respecting intellectual property rights
- Participate in good faith and assume positive intent from others unless proven otherwise
#### 3.1.3 Professional Conduct
#### 3.1.3. Professional Conduct
- Maintain appropriate boundaries between personal and professional interactions
- Respect the time, effort, and contributions of all community members
- Comply with all applicable laws, regulations, and platform-specific terms of service
- Represent Our Community positively when acting in any official or semi-official capacity
### 3.2 Prohibited Conduct and Behaviours
### 3.2. Prohibited Conduct and Behaviours
**Reference to Comprehensive Usage Policies**: Detailed prohibited activities, content restrictions, and usage guidelines are comprehensively covered in our Acceptable Use Policy and Content and Moderation Policy, which are incorporated herein by reference.
#### 3.2.1 Community-Specific Prohibited Conduct
#### 3.2.1. Community-Specific Prohibited Conduct
In addition to all prohibitions in our comprehensive policies, the following behaviors are specifically prohibited in community interactions:
In addition to all prohibitions in our comprehensive policies, the following behaviours are specifically prohibited in community interactions:
**Identity and Discrimination:**
- Deliberate misgendering, deadnaming, or use of rejected names or pronouns
@@ -169,54 +157,54 @@ In addition to all prohibitions in our comprehensive policies, the following beh
## 4. Community Standards and Specific Policies
### 4.1 Neutrality and Social Justice
### 4.1. Neutrality and Social Justice
#### 4.1.1 Position on Oppression
#### 4.1.1. Position on Oppression
:::caution[Community Position]
Our Community explicitly rejects neutrality in the face of oppression. Remaining neutral when marginalised individuals share their experiences with discrimination, oppression, or harmful legislation constitutes support for oppressive systems and structures.
:::
#### 4.1.2 Educational Approach
#### 4.1.2. Educational Approach
We recognise that not all community members may be fully aware of the challenges faced by marginalised communities. We encourage:
- Asking respectful questions to educate oneself about social justice issues
- Listening to the experiences of marginalised community members
- Engaging constructively with discussions about equality and human rights
- Taking responsibility for one's own education on social justice matters
#### 4.1.3 Prohibited Responses
#### 4.1.3. Prohibited Responses
The following responses to discussions of oppression and marginalisation are considered violations of this Code:
- Attempting to remain "neutral" or "bow out" of discussions about oppression
- Claiming that discussions of discrimination or social justice are inappropriate or divisive
- Dismissing or minimising the experiences of marginalised community members
- Engaging in "whataboutism" or false equivalencies regarding discrimination
### 4.2 Intellectual Property and Privacy Rights
### 4.2. Intellectual Property and Privacy Rights
#### 4.2.1 Copyright and Attribution
#### 4.2.1. Copyright and Attribution
Community Members must:
- Respect all copyright and intellectual property rights
- Provide appropriate attribution when sharing or referencing others' work
- Obtain permission before sharing copyrighted material
- Comply with fair use principles and applicable copyright laws
#### 4.2.2 Privacy Protection
#### 4.2.2. Privacy Protection
Community Members must:
- Respect the privacy of all community members
- Obtain explicit consent before sharing personal information about others
- Protect confidential information shared within community contexts
- Report privacy violations to Community Leaders promptly
### 4.3 Content Standards and Community Guidelines
### 4.3. Content Standards and Community Guidelines
#### 4.3.1 Appropriate Content
#### 4.3.1. Appropriate Content
All content shared within Our Community must:
- Be relevant to community discussions and purposes
- Comply with platform-specific content policies
- Include appropriate content warnings when discussing potentially triggering topics
- Respect community standards regarding language, imagery, and subject matter
#### 4.3.2 Content Warnings and Accessibility
#### 4.3.2. Content Warnings and Accessibility
Community Members are required to:
- Use content warnings when discussing potentially distressing topics
- Provide alternative text for images and visual content when possible
@@ -225,16 +213,16 @@ Community Members are required to:
## 5. Reporting Procedures and Incident Response
### 5.1 Reporting Mechanisms
### 5.1. Reporting Mechanisms
#### 5.1.1 Available Reporting Methods
#### 5.1.1. Available Reporting Methods
Community Members can report Code of Conduct violations through the following channels:
- **Incident Report Form** (Preferred): Submit reports through our official Incident Report Form: https://forms.nhcarrigan.com/o/docs/forms/t7CYeYS4uyUuLiKFatoEvs/4
- **Discord Reporting**: Type `@Moderator` in any channel to alert Community Leaders
- **Direct Communication**: Contact any Community Leader through private messages
- **Email Contact**: Submit reports to contact@nhcarrigan.com
- **Anonymous Reporting**: Use designated anonymous reporting forms where available
#### 5.1.2 Information to Include in Reports
#### 5.1.2. Information to Include in Reports
Effective reports should include:
- Contact information (unless reporting anonymously)
- Names, usernames, or identifiable information for all individuals involved
@@ -244,17 +232,17 @@ Effective reports should include:
- Any previous related incidents or patterns of behaviour
- Impact statement describing how the incident has affected you or others
### 5.2 Report Handling and Investigation Procedures
### 5.2. Report Handling and Investigation Procedures
#### 5.2.1 Initial Response Protocol
#### 5.2.1. Initial Response Protocol
Upon receiving a report, Community Leaders will:
- Acknowledge receipt within 24 hours when possible
- Acknowledge receipt within 7-10 business days when possible
- Conduct an initial assessment of the report's severity and scope
- Take immediate protective measures if necessary to ensure community safety
- Recuse any Community Leaders who have conflicts of interest in the matter
- Begin formal investigation procedures within 72 hours
- Begin formal investigation procedures within 7-10 business days
#### 5.2.2 Investigation Standards
#### 5.2.2. Investigation Standards
All investigations will adhere to the following standards:
- **Thoroughness**: Complete examination of all evidence and witness statements
- **Impartiality**: Fair consideration of all perspectives and evidence
@@ -262,7 +250,7 @@ All investigations will adhere to the following standards:
- **Timeliness**: Completion of investigations in a reasonable timeframe
- **Documentation**: Proper record-keeping for accountability and consistency
#### 5.2.3 Confidentiality and Privacy Protection
#### 5.2.3. Confidentiality and Privacy Protection
Community Leaders commit to:
- Respecting confidentiality requests from reporters and witnesses
- Limiting information sharing to those with legitimate need-to-know
@@ -270,16 +258,16 @@ Community Leaders commit to:
- Balancing transparency with privacy protection
- Never revealing harassment victims' identities without explicit, affirmative consent
### 5.3 Response and Resolution Options
### 5.3. Response and Resolution Options
#### 5.3.1 Protective Measures
#### 5.3.1. Protective Measures
Community Leaders may implement immediate protective measures including:
- Temporary suspension of accused individuals pending investigation
- Modification of access permissions or privileges
- Implementation of no-contact orders between parties
- Enhanced monitoring of specific community areas or interactions
#### 5.3.2 Public Statements and Warnings
#### 5.3.2. Public Statements and Warnings
At Community Leaders' discretion, we may:
- Issue public statements regarding individuals who pose community safety risks
- Provide private warnings to third parties when necessary for community protection
@@ -288,25 +276,25 @@ At Community Leaders' discretion, we may:
## 6. Disciplinary Framework and Enforcement
### 6.1 Reference to Comprehensive Enforcement Framework
### 6.1. Reference to Comprehensive Enforcement Framework
**IMPORTANT: Comprehensive enforcement procedures, moderation standards, appeals processes, and disciplinary frameworks are set forth in our Content and Moderation Policy, which is incorporated herein by reference and governs all community enforcement matters.**
### 6.2 Community-Specific Enforcement Principles
### 6.2. Community-Specific Enforcement Principles
In addition to the comprehensive framework in our Moderation Policy, community enforcement emphasizes:
In addition to the comprehensive framework in our Moderation Policy, community enforcement emphasises:
**(a)** **Restorative Justice**: Focus on repairing harm and restoring community relationships when possible;
**(b)** **Community Safety**: Ultimate priority on protecting community members from harm and discrimination;
**(c)** **Educational Approach**: Emphasis on learning and behavior modification where appropriate;
**(c)** **Educational Approach**: Emphasis on learning and behaviour modification where appropriate;
**(d)** **Community Values**: Enforcement that upholds our specific community values of inclusivity and respect.
### 6.2 Violation Assessment Criteria
### 6.2. Violation Assessment Criteria
#### 6.2.1 Sanctionable Conduct
#### 6.2.1. Sanctionable Conduct
Disciplinary sanctions may be imposed for:
- Direct violations of this Code of Conduct or associated community policies
- Behaviour that violates the spirit of community standards even if not explicitly prohibited
@@ -314,7 +302,7 @@ Disciplinary sanctions may be imposed for:
- Attempts to circumvent or evade existing sanctions
- Behaviour that demonstrates disregard for community values and member safety
#### 6.2.2 Aggravating and Mitigating Factors
#### 6.2.2. Aggravating and Mitigating Factors
When determining appropriate sanctions, Community Leaders consider:
**Aggravating Factors:**
@@ -331,9 +319,9 @@ When determining appropriate sanctions, Community Leaders consider:
- Acknowledgement of wrongdoing and commitment to improvement
- Circumstances that may have contributed to the violation
### 6.3 Progressive Disciplinary System
### 6.3. Progressive Disciplinary System
#### 6.3.1 Level 1: Formal Reminder and Education
#### 6.3.1. Level 1: Formal Reminder and Education
**Typical Application:**
- First-time violations of community standards
- Use of inappropriate language or unprofessional behaviour
@@ -352,7 +340,7 @@ When determining appropriate sanctions, Community Leaders consider:
- Engaging in behaviour that disrupts community discussions
- Sharing content without appropriate warnings or context
#### 6.3.2 Level 2: Formal Warning and Monitoring
#### 6.3.2. Level 2: Formal Warning and Monitoring
**Typical Application:**
- Violations following previous reminders or educational interventions
- Moderate violations of community standards
@@ -371,7 +359,7 @@ When determining appropriate sanctions, Community Leaders consider:
- Repeated disruption of community discussions despite warnings
- Failure to respect others' boundaries after being asked to stop
#### 6.3.3 Level 3: Temporary Suspension and Mandatory Education
#### 6.3.3. Level 3: Temporary Suspension and Mandatory Education
**Typical Application:**
- Serious violations of community standards
- Repeated violations despite previous warnings
@@ -390,7 +378,7 @@ When determining appropriate sanctions, Community Leaders consider:
- Violations that significantly disrupt community activities or discussions
- Behaviour that makes other community members feel unsafe
#### 6.3.4 Level 4: Permanent Exclusion
#### 6.3.4. Level 4: Permanent Exclusion
**Typical Application:**
- Severe violations that pose significant risk to community safety
- Patterns of repeated violations with no demonstrated improvement
@@ -408,9 +396,9 @@ When determining appropriate sanctions, Community Leaders consider:
- Sexual harassment or other forms of serious misconduct
- Attempts to harm the community or its members through any means
### 6.4 Special Considerations and Additional Measures
### 6.4. Special Considerations and Additional Measures
#### 6.4.1 Enhanced Sanctions
#### 6.4.1. Enhanced Sanctions
Community Leaders may impose additional requirements or restrictions including:
- Public acknowledgement of wrongdoing and apology to affected parties
- Completion of specific educational programmes or training
@@ -418,7 +406,7 @@ Community Leaders may impose additional requirements or restrictions including:
- Ongoing behavioural monitoring and reporting requirements
- Restrictions on specific community privileges or leadership opportunities
#### 6.4.2 Immediate Protection Measures
#### 6.4.2. Immediate Protection Measures
In cases where immediate action is necessary to protect community safety:
- Temporary suspension may be implemented immediately pending investigation
- Emergency removal from specific platforms or activities may occur
@@ -427,9 +415,9 @@ In cases where immediate action is necessary to protect community safety:
## 7. Transparency and Accountability Systems
### 7.1 Documentation and Record-Keeping
### 7.1. Documentation and Record-Keeping
#### 7.1.1 Comprehensive Logging System
#### 7.1.1. Comprehensive Logging System
All disciplinary actions are recorded in our public transparency system available at [https://hikari.nhcarrigan.com/sanctions](https://hikari.nhcarrigan.com/sanctions), including:
- Date and time of each disciplinary action
- Type and severity of sanction imposed
@@ -439,39 +427,39 @@ All disciplinary actions are recorded in our public transparency system availabl
- Community Leader responsible for implementing the sanction
- Relevant evidence or documentation (with appropriate redaction)
#### 7.1.2 Privacy Protection in Documentation
#### 7.1.2. Privacy Protection in Documentation
While maintaining transparency, we protect individual privacy by:
- Anonymising personally identifiable information in public logs
- Redacting sensitive details that could enable identification of victims
- Balancing transparency with confidentiality requirements
- Providing more detailed information only to authorised personnel
### 7.2 Appeals and Review Process
### 7.2. Appeals and Review Process
#### 7.2.1 Right to Appeal
#### 7.2.1. Right to Appeal
Individuals subject to disciplinary sanctions have the right to appeal such decisions through our [formal appeals process](/community/appeal), which includes:
- Review by Community Leaders not involved in the original decision
- Consideration of new evidence or mitigating circumstances
- Opportunity to present alternative perspectives or explanations
- Fair and impartial review of the original decision and its basis
#### 7.2.2 Appeals Process Integrity
#### 7.2.2. Appeals Process Integrity
During the appeals process:
- Original sanctions remain in effect pending review
- Appeals are reviewed by impartial Community Leaders
- Decisions are based on evidence and established community standards
- Final appeal decisions are communicated with detailed reasoning
### 7.3 Community Oversight and Continuous Improvement
### 7.3. Community Oversight and Continuous Improvement
#### 7.3.1 Regular Review and Assessment
#### 7.3.1. Regular Review and Assessment
Our disciplinary system undergoes regular review including:
- Annual assessment of consistency in sanction application
- Community feedback collection on disciplinary processes
- Review of appeals outcomes to identify systemic issues
- Updates to policies and procedures based on community evolution
#### 7.3.2 Community Leader Accountability
#### 7.3.2. Community Leader Accountability
Community Leaders are held accountable through:
- Regular training on community standards and disciplinary procedures
- Peer review of disciplinary decisions for consistency
@@ -480,9 +468,9 @@ Community Leaders are held accountable through:
## 8. Advertising, Promotion, and Commercial Activity
### 8.1 General Prohibition on Commercial Activity
### 8.1. General Prohibition on Commercial Activity
#### 8.1.1 Scope of Prohibition
#### 8.1.1. Scope of Prohibition
Commercial advertising and self-promotion are generally prohibited within Our Community spaces, including:
- Unsolicited promotion of products, services, websites, or social media accounts
- Commercial advertising or marketing communications
@@ -490,38 +478,38 @@ Commercial advertising and self-promotion are generally prohibited within Our Co
- Affiliate marketing or referral link sharing
- Solicitation for commercial purposes or business development
#### 8.1.2 Rationale for Restrictions
#### 8.1.2. Rationale for Restrictions
These restrictions exist to:
- Maintain focus on community purposes and objectives
- Prevent exploitation of community relationships for commercial gain
- Ensure equal participation opportunities for all members
- Protect community members from unwanted commercial solicitation
### 8.2 Authorised Exceptions and Permitted Activities
### 8.2. Authorised Exceptions and Permitted Activities
#### 8.2.1 Approved Commercial Activities
#### 8.2.1. Approved Commercial Activities
The following activities are permitted when explicitly authorised:
- Official announcements or promotions approved by Community Leaders
- Sharing of resources directly relevant to ongoing discussions when done in good faith
- Links or information specifically requested by Community Leaders for support or moderation purposes
- Educational resources that provide value to the community without primary commercial purpose
#### 8.2.2 Context-Appropriate Sharing
#### 8.2.2. Context-Appropriate Sharing
Limited sharing may be acceptable when:
- Content is directly relevant to current discussions or community needs
- Sharing is done transparently without hidden commercial motives
- The primary purpose is education or community benefit rather than promotion
- Appropriate disclosure of any commercial relationships or affiliations is provided
### 8.3 Compliance and Enforcement
### 8.3. Compliance and Enforcement
#### 8.3.1 Disclosure Requirements
#### 8.3.1. Disclosure Requirements
When sharing any content with potential commercial implications, Community Members must:
- Clearly disclose any personal, professional, or financial relationships with promoted entities
- Identify themselves when sharing content from projects or organisations with which they are affiliated
- Be transparent about any potential benefits they may receive from community members' engagement
#### 8.3.2 Violation Consequences
#### 8.3.2. Violation Consequences
Violations of advertising and promotion restrictions will be addressed through:
- Content removal and community member education for minor violations
- Formal warnings for repeated or more serious promotional activities
@@ -530,16 +518,16 @@ Violations of advertising and promotion restrictions will be addressed through:
## 9. Language Requirements and Communication Standards
### 9.1 Official Language Policy
### 9.1. Official Language Policy
#### 9.1.1 English as Primary Language
#### 9.1.1. English as Primary Language
The official language of Our Community is English, and all community interactions, discussions, and contributions should be conducted in English to ensure:
- Clear communication among all community members
- Clear communication amongst all community members
- Effective moderation and community management
- Consistency across all community platforms and activities
- Accessibility for the broadest range of community members
#### 9.1.2 Scope of Application
#### 9.1.2. Scope of Application
The English language requirement applies to:
- All public discussions and communications within community spaces
- Documentation, contributions, and community-generated content
@@ -547,32 +535,32 @@ The English language requirement applies to:
- Support requests and community assistance interactions
- Disciplinary and administrative communications
### 9.2 Support for Non-Native English Speakers
### 9.2. Support for Non-Native English Speakers
#### 9.2.1 Inclusive Approach
#### 9.2.1. Inclusive Approach
We actively support non-native English speakers by:
- Encouraging patience and understanding from all community members
- Providing assistance with language barriers when appropriate
- Focusing on the substance of contributions rather than perfect grammar or syntax
- Offering clarification and rephrasing when communication difficulties arise
#### 9.2.2 Accommodation Measures
#### 9.2.2. Accommodation Measures
Community Members are encouraged to:
- Help clarify or rephrase messages when language barriers exist
- Provide gentle correction or assistance when requested
- Use clear, simple language to facilitate understanding
- Be patient with translation delays or communication difficulties
### 9.3 Limited Exceptions and Special Circumstances
### 9.3. Limited Exceptions and Special Circumstances
#### 9.3.1 Permitted Exceptions
#### 9.3.1. Permitted Exceptions
Limited use of languages other than English may be acceptable for:
- Brief translations provided to assist community members, when immediately accompanied by English translation
- Cultural sharing or educational content when clearly contextualised and explained in English
- Emergency situations where immediate communication is necessary
- Specific community events or activities explicitly designated as multilingual
#### 9.3.2 Translation and Accessibility Tools
#### 9.3.2. Translation and Accessibility Tools
Community Members may:
- Use translation tools to assist with participation, provided English content is also included
- Request assistance with translation when needed for full participation
@@ -580,56 +568,56 @@ Community Members may:
## 10. Implementation, Amendment, and Enforcement
### 10.1 Code Implementation and Effective Date
### 10.1. Code Implementation
#### 10.1.1 Immediate Effect
#### 10.1.1. Immediate Effect
This Code of Conduct takes effect immediately upon publication and applies to all community interactions occurring after its implementation. Community Members are responsible for familiarising themselves with these standards and ensuring compliance in all community activities.
#### 10.1.2 Retroactive Considerations
#### 10.1.2. Retroactive Considerations
While this Code primarily governs future conduct, Community Leaders reserve the right to consider past behaviour patterns when assessing current community participation and determining appropriate responses to new violations.
### 10.2 Amendment and Update Procedures
### 10.2. Amendment and Update Procedures
#### 10.2.1 Amendment Authority
#### 10.2.1. Amendment Authority
This Code may be amended, updated, or modified at any time by Community Leaders to:
- Address emerging community issues or challenges
- Incorporate lessons learned from community experiences
- Reflect changes in legal requirements or best practices
- Respond to community feedback and suggestions for improvement
#### 10.2.2 Change Communication
#### 10.2.2. Change Communication
Significant amendments to this Code will be communicated to the community through:
- Announcements in primary community channels
- Updates to community documentation and resources
- Direct notification to Community Leaders and active participants
- Clear indication of changes in publicly accessible versions
### 10.3 Enforcement Authority and Discretion
### 10.3. Enforcement Authority and Discretion
#### 10.3.1 Community Leader Authority
#### 10.3.1. Community Leader Authority
Community Leaders possess both the authority and obligation to:
- Interpret and apply this Code consistently and fairly
- Take any action deemed necessary to protect community safety and integrity
- Modify or expand enforcement procedures as community needs evolve
- Collaborate with external authorities when violations involve illegal activity
#### 10.3.2 Discretionary Enforcement
#### 10.3.2. Discretionary Enforcement
While this Code provides comprehensive guidance, Community Leaders retain discretion to:
- Address situations not explicitly covered by written policies
- Apply contextual judgment in complex or unusual circumstances
- Apply contextual judgement in complex or unusual circumstances
- Implement innovative solutions to emerging community challenges
- Prioritise community safety and well-being over rigid rule application
### 10.4 Legal and Operational Integration
### 10.4. Legal and Operational Integration
#### 10.4.1 Relationship to Other Policies
#### 10.4.1. Relationship to Other Policies
This Code operates in conjunction with and supplements:
- Terms of Service and User Agreements
- Privacy Policies and Data Protection Measures
- Platform-specific Terms of Use and Community Guidelines
- Applicable laws and regulations governing online communities
#### 10.4.2 Conflict Resolution
#### 10.4.2. Conflict Resolution
In the event of conflicts between this Code and other policies:
- The provision that provides greater protection for community members shall take precedence
- Community Leaders will interpret policies to maximise safety and inclusivity
@@ -651,4 +639,4 @@ This Code represents our collective commitment to building and maintaining a com
---
*This Community Code of Conduct was last updated on 15 September 2025 and supersedes all previous versions. For questions regarding this Code or to report violations, please contact our Community Leaders through the designated reporting channels outlined above.*
*This Community Code of Conduct. For questions regarding this Code or to report violations, please contact our Community Leaders through the designated reporting channels outlined above.*
+186
View File
@@ -0,0 +1,186 @@
---
title: Fan Art Guidelines
---
## 1. Introduction and Purpose
### 1.1. Welcome to Our Fan Art Community!
Are you interested in creating art for our lovely Naomi? We absolutely love seeing creative interpretations of our characters and would be thrilled to feature your work! These guidelines will help you understand what we're looking for and how to submit your creations.
### 1.2. Scope
These guidelines apply to:
- Fan art of Naomi and her various designs
- Fan art of Original Characters (OCs) shared in our #characters channel (Naomi's OCs)
- Any artistic interpretations of our characters and community
## 2. Content Guidelines
### 2.1. Content Standards
#### 2.1.1. Family-Friendly Public Submissions
For art that will be shared in our public spaces (such as our fan art channel), we maintain family-friendly standards:
**(a)** **No Obscene or NSFW Content**: Public submissions must be appropriate for all audiences. We want to show your work off to everyone!
**(b)** **Original Works Only**: Please no AI-generated content. We want to see your original works! If Naomi wanted AI-generated art, she would generate it herself.
**(c)** **Creative Freedom**: You are free to give Naomi whatever outfit you would like. Refer to our reference channel for reference images to get an idea of her style.
#### 2.1.2. NSFW Content Policy
We understand that some artists may wish to create mature content featuring our characters. We have the following policy for such works:
**(a)** **DM Submission Required**: NSFW works must be sent to us via direct message (DM) only. Do not post NSFW content in any public channels.
**(b)** **Private Appreciation**: While we appreciate all artistic interpretations, NSFW works will not be shared in our public spaces as we are a family-friendly community.
**(c)** **Respectful Content**: Even for private submissions, we reserve the right to decline content that we find inappropriate or that violates our community standards.
**(d)** **Recognition**: Accepted NSFW submissions will still qualify for the role!
### 2.2. Original Characters (OCs)
We have a dedicated **#characters** channel where Naomi shares her Original Characters! You are welcome and encouraged to create fan art of these OCs as well. When creating art of Naomi's OCs:
**(a)** **Respect Character Design**: Please respect the original character designs and creator intentions.
**(b)** **Follow Same Guidelines**: All content guidelines (family-friendly for public, NSFW via DM only) apply to OC fan art as well.
## 3. Reference Materials and Resources
### 3.1. Available Reference Materials
#### 3.1.1. Reference Images
We maintain reference images in our Discord reference channel. These images can help you understand Naomi's style, color palette, and design elements.
### 3.2. Important Disclaimer About Reference Materials
:::warning[AI-Generated Reference Materials Disclaimer]
**Please be aware that our current reference sheets and other visual assets are AI-generated. This is a temporary situation.**
We operate at a significant loss and do not currently have the budget to commission proper, human-created art for all of our reference materials. However, we are committed to replacing these AI-generated assets with proper commissioned art as funds become available.
**How You Can Help:**
- **Financial Support**: If you would like to help us replace our AI-generated assets with proper art, you can donate at [donate.nhcarrigan.com](https://donate.nhcarrigan.com). All donations help us work toward commissioning proper reference art.
- **Art Donations**: We would be absolutely thrilled to accept donated art to replace our AI-generated assets! If you're interested in creating reference art or other assets for us, please reach out via DM to discuss.
We appreciate your understanding and patience as we work to improve our resources. Our goal is to have all human-created, properly commissioned art, and we're working toward that goal every day.
:::
## 4. Submission Process
### 4.1. How to Submit Your Art
#### 4.1.1. Public Submissions (Family-Friendly Content)
To submit family-friendly fan art for public sharing:
1. **Create Your Art**: Follow the guidelines above to ensure your work meets our standards.
2. **DM Your Submission**: Send your artwork to Naomi directly via DM.
3. **Review Process**: If accepted, your art will be shared in our fan art channel (with full credit - you will be tagged in the post).
4. **Recognition**: Accepted submissions will receive a special role recognizing your contribution!
#### 4.1.2. Private Submissions (NSFW Content)
For NSFW works:
1. **DM Only**: Send your NSFW artwork directly to Naomi via DM.
2. **Private Appreciation**: These works will be appreciated privately and will not be shared in public spaces.
3. **No Public Sharing**: Please do not post NSFW content in any public channels, even if you think it might be acceptable.
4. **Recognition**: Accepted submissions will still qualify for the role!
### 4.2. What Happens After Submission
#### 4.2.1. Review Timeline
We review submissions as quickly as possible, but please be patient. We want to give each piece the attention it deserves!
#### 4.2.2. Acceptance and Sharing
If your public submission is accepted:
- Your art will be posted in our fan art channel
- You will be tagged and credited in the post
- You will receive a special role recognizing your contribution
- We may share your work on other platforms (with credit)
#### 4.2.3. If Your Submission Isn't Accepted
If we decline a submission, we'll do our best to explain why. Common reasons include:
- Content doesn't meet our family-friendly standards (for public submissions)
- Quality concerns (though we appreciate all skill levels!)
- Copyright or intellectual property issues
- Other community guideline violations
We're always happy to provide feedback and work with artists to create content that fits our community!
## 5. Rights and Permissions
### 5.1. Artist Rights and Rights Transfer
**(a)** **Rights Transfer**: By submitting your art to us, you transfer the rights to your creation to us. This transfer occurs upon submission and acceptance of your work.
**(b)** **Credit Always Given**: We will always credit you when sharing your work, even though rights have been transferred.
**(c)** **Usage Rights**: Once rights are transferred, we have the right to use, display, share, and distribute your submitted artwork in our community spaces and on other platforms with proper credit.
### 5.2. Character Rights
**(a)** **Character Ownership**: Naomi and other official characters remain the property of NHCarrigan.
**(b)** **Fan Art Rights**: Creating fan art is generally considered fair use, but please be respectful of the characters and community.
**(c)** **Commercial Use**: If you're interested in commercial use of our characters, please contact us to discuss licensing.
## 6. Community Support and Appreciation
### 6.1. We Love Your Art!
We genuinely appreciate every piece of art created for our community. Whether it's a quick sketch or a detailed masterpiece, your creativity and effort mean the world to us!
### 6.2. Growing Together
We're always working to improve our resources and support for artists. As we grow and develop better reference materials (see our disclaimer above), we hope to make it even easier for artists to create amazing fan art!
### 6.3. Questions or Concerns?
If you have any questions about these guidelines, the submission process, or anything else related to fan art, please don't hesitate to reach out via DM or ask in our community channels!
---
## Summary: Quick Reference
**✅ DO:**
- Create original, family-friendly art for public sharing
- DM your submissions to Naomi
- Feel free to be creative with outfits and styles
- Create art of Naomi's OCs from our #characters channel
- Send NSFW works via DM only (they won't be shared publicly)
**❌ DON'T:**
- Submit AI-generated content
- Post NSFW content in public channels
- Disrespect character designs when making OC fan art
- Submit content that violates our community standards
**📝 Remember:**
- Reference materials are currently AI-generated (temporary!)
- You can help us get proper art by donating or creating art donations
- By submitting art, you transfer rights to your creation to us
- We always credit artists when sharing their work
- Questions? Just ask!
---
*Thank you for your interest in creating art for our community! We can't wait to see what you create!*
+103 -64
View File
@@ -4,11 +4,11 @@ title: Community Feedback and Participation Policy
## 1. Foundation and Democratic Principles
### 1.1 Introduction and Purpose
### 1.1. Introduction and Purpose
This Community Feedback and Participation Policy (hereinafter referred to as "the Policy") establishes our comprehensive framework for meaningful community member engagement in governance, policy development, and community improvement processes. This Policy embodies our commitment to participatory governance, ensuring that community members have multiple accessible pathways to influence decisions that affect their community experience and contribute to the continuous improvement of our shared environment.
### 1.2 Core Democratic Principles
### 1.2. Core Democratic Principles
Our community feedback and participation approach is founded upon:
@@ -24,7 +24,7 @@ Our community feedback and participation approach is founded upon:
**(f)** **Democratic Accountability**: Mechanisms ensuring leadership remains accountable to the community they serve.
### 1.3 Participation Philosophy
### 1.3. Participation Philosophy
We believe that community members are the ultimate experts on their own experience and needs, and our governance systems should reflect this expertise by:
- Actively seeking diverse community perspectives on policies and decisions
@@ -33,23 +33,21 @@ We believe that community members are the ultimate experts on their own experien
- Building community ownership and investment in shared governance and improvement processes
- Fostering a culture of collaborative decision-making and mutual responsibility
### 1.4 Legal Framework Integration
### 1.4. Legal Framework Integration
This Policy operates within our comprehensive legal and policy framework, including our Terms of Service, Privacy Policy, Community Code of Conduct, and Community Leadership and Governance Policy, all of which are incorporated herein by reference.
This Policy operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, Community Leadership and Governance Policy, and all applicable legal protections by reference.
## 2. Feedback Channels and Communication Systems
### 2.1 Regular Feedback Opportunities
### 2.1. Regular Feedback Opportunities
#### 2.1.1 Daily and Ongoing Feedback Channels
#### 2.1.1. Daily and Ongoing Feedback Channels
**Open Communication Channels:**
- Dedicated feedback channels accessible to all community members for ongoing input and suggestions
- Community: `#community-suggestions-and-feedback` on Discord
- Products: `#product-feedback-and-suggestions` on Discord
- Direct feedback systems protecting member privacy whilst enabling honest communication
- Community: https://forms.nhcarrigan.com/form/IDdo5e4OJS44QYFm9_aRJ36lY3Ox-BBTAM9zfnkhfoo
- Products: https://forms.nhcarrigan.com/form/jkcGg0hMIa4U0hDL2OMip5pMX2UujN5W5n4Qn8HReJ8
- Dedicated feedback forum categories accessible to all community members for ongoing input and suggestions
- Community: [Community Feedback](https://support.nhcarrigan.com/c/community-feedback/8) category on our support forum
- Products: [Bug Reports](https://support.nhcarrigan.com/c/bug-reports/6) or [Feature Requests](https://support.nhcarrigan.com/c/feature-requests/7) categories on our support forum
- Policies: [Policy Ideation](https://support.nhcarrigan.com/c/policy-ideation/9) category on our support forum
- Direct messaging opportunities with community leadership for individual concerns and suggestions
- Public discussion forums for community-wide conversation about policies and improvements
@@ -60,7 +58,13 @@ This Policy operates within our comprehensive legal and policy framework, includ
- Accessibility feedback channels specifically designed to identify and address inclusion barriers
- `#accessibility` on Discord.
#### 2.1.2 Scheduled Feedback Collection
#### 2.1.2. Scheduled Feedback Collection
:::tip[Heads Up!]{icon=pen}
The policy or policies in this section are still a work in progress. We have not yet implemented the necessary infrastructure to comply with this section.
We are working very hard to get them in place as soon as possible. If you would like to help, consider [applying to join our team!](https://forms.nhcarrigan.com/o/docs/forms/mCxDu3snk9TzFiDjrT4Vc8/4)
:::
**Monthly Community Input Sessions:**
- Structured community meetings focused on specific policy areas or community improvements
@@ -74,9 +78,9 @@ This Policy operates within our comprehensive legal and policy framework, includ
- Community needs assessments identifying emerging priorities and improvement opportunities
- Leadership performance evaluations providing community input on governance effectiveness
### 2.2 Accessible Participation Methods
### 2.2. Accessible Participation Methods
#### 2.2.1 Universal Design in Feedback Systems
#### 2.2.1. Universal Design in Feedback Systems
**Multiple Communication Formats:**
- Written feedback forms available in multiple languages and accessible formats
@@ -90,7 +94,7 @@ This Policy operates within our comprehensive legal and policy framework, includ
- Simple language versions of feedback requests and policy summaries for improved comprehension
- Alternative format materials and documentation available upon request
#### 2.2.2 Cultural and Linguistic Inclusion
#### 2.2.2. Cultural and Linguistic Inclusion
**Culturally Responsive Feedback Collection:**
- Feedback systems designed with cultural sensitivity and diverse communication style accommodation
@@ -106,9 +110,9 @@ This Policy operates within our comprehensive legal and policy framework, includ
## 3. Policy Development and Change Processes
### 3.1 Community Consultation Requirements
### 3.1. Community Consultation Requirements
#### 3.1.1 Mandatory Consultation Procedures
#### 3.1.1. Mandatory Consultation Procedures
**Significant Policy Changes:**
All significant policy changes must include:
@@ -123,7 +127,7 @@ All significant policy changes must include:
- **Stakeholder consultation** ensuring input from community members who would be most affected by new policies
- **Implementation planning** involving community input on effective policy rollout and communication strategies
#### 3.1.2 Community Input Integration Process
#### 3.1.2. Community Input Integration Process
**Systematic Input Analysis:**
- **Comprehensive review** of all community feedback and input received during consultation periods
@@ -137,9 +141,9 @@ All significant policy changes must include:
- **Implementation timelines** and community preparation information for policy changes
- **Ongoing evaluation commitments** outlining how policy effectiveness will be assessed with community input
### 3.2 Emergency and Urgent Change Procedures
### 3.2. Emergency and Urgent Change Procedures
#### 3.2.1 Emergency Policy Modifications
#### 3.2.1. Emergency Policy Modifications
**Crisis Response Policy Changes:**
When immediate policy changes are necessary for community safety:
@@ -148,7 +152,7 @@ When immediate policy changes are necessary for community safety:
- **Community input integration** for permanent policy changes following emergency measures
- **Transparent review process** evaluating emergency decisions and incorporating community feedback for future improvements
#### 3.2.2 Urgent Community Need Response
#### 3.2.2. Urgent Community Need Response
**Expedited Change Procedures:**
- **Accelerated consultation timelines** with intensive community outreach and input collection
@@ -158,9 +162,9 @@ When immediate policy changes are necessary for community safety:
## 4. Transparency and Decision-Making Communication
### 4.1 Open Governance Practices
### 4.1. Open Governance Practices
#### 4.1.1 Decision-Making Transparency
#### 4.1.1. Decision-Making Transparency
**Public Decision Records:**
- **Meeting minutes and records** available to all community members for transparency and accountability
@@ -172,9 +176,9 @@ When immediate policy changes are necessary for community safety:
- **Regular office hours** where community members can directly engage with leadership about governance and policy matters
- **Public Q&A sessions** addressing community concerns and providing transparent answers about decision-making processes
- **Leadership communication channels** accessible to all community members for ongoing dialogue and feedback
- **Community liaison programs** facilitating communication between leadership and diverse community groups
- **Community liaison programmes** facilitating communication between leadership and diverse community groups
#### 4.1.2 Information Accessibility and Sharing
#### 4.1.2. Information Accessibility and Sharing
**Comprehensive Information Access:**
- **Policy documentation** available in multiple formats and accessible language for broad community understanding
@@ -188,9 +192,9 @@ When immediate policy changes are necessary for community safety:
- **Multiple communication channels** ensuring information reaches community members through their preferred methods
- **Follow-up communication** about decision outcomes and implementation progress
### 4.2 Community Accountability Mechanisms
### 4.2. Community Accountability Mechanisms
#### 4.2.1 Leadership Accountability Systems
#### 4.2.1. Leadership Accountability Systems
**Performance Monitoring and Evaluation:**
- **Regular community confidence surveys** assessing leadership effectiveness and community satisfaction
@@ -204,33 +208,33 @@ When immediate policy changes are necessary for community safety:
- **Community follow-up** ensuring leadership commitments are fulfilled and community concerns are adequately addressed
- **Continuous improvement integration** incorporating accountability feedback into leadership development and governance enhancement
#### 4.2.2 Policy Effectiveness Assessment
#### 4.2.2. Policy Effectiveness Assessment
**Community-Centred Evaluation:**
- **Regular policy effectiveness surveys** gathering community input on how well policies are meeting their intended objectives
- **Community impact assessment** evaluating policy effects on different community groups and addressing unintended consequences
- **Policy modification processes** incorporating community feedback and assessment results into ongoing policy improvement
- **Community success metrics** developed collaboratively to measure progress toward shared community goals and values
- **Community success metrics** developed collaboratively to measure progress towards shared community goals and values
## 5. Special Consultation and Participation Programs
### 5.1 Demographic and Identity-Based Consultation
### 5.1. Demographic and Identity-Based Consultation
#### 5.1.1 Targeted Community Outreach
#### 5.1.1. Targeted Community Outreach
**Underrepresented Group Engagement:**
- **Specific consultation programs** ensuring input from community members who may not participate in general feedback processes
- **Identity-affirming participation opportunities** creating safe spaces for marginalized community members to provide honest feedback
- **Specific consultation programmes** ensuring input from community members who may not participate in general feedback processes
- **Identity-affirming participation opportunities** creating safe spaces for marginalised community members to provide honest feedback
- **Cultural competency** in consultation design and facilitation to encourage authentic participation from diverse community members
- **Language and accessibility support** removing barriers to participation for community members with diverse needs
**Specialized Advisory Groups:**
**Specialised Advisory Groups:**
- **Rotating advisory panels** including community members from diverse backgrounds and experience levels
- **Issue-specific consultation groups** bringing together community members with relevant expertise or lived experience
- **Accessibility advisory groups** providing ongoing input on inclusion and accommodation needs and improvements
- **Community youth and senior advisory panels** ensuring intergenerational perspectives in community governance
#### 5.1.2 Community-Driven Initiative Support
#### 5.1.2. Community-Driven Initiative Support
**Grassroots Proposal Development:**
- **Community member proposal processes** enabling members to suggest and develop new community initiatives and improvements
@@ -238,23 +242,52 @@ When immediate policy changes are necessary for community safety:
- **Peer review and community refinement** processes helping improve community-driven proposals through collaborative development
- **Implementation support** for community-approved initiatives including resource allocation and ongoing assistance
**Community Organizing and Advocacy:**
- **Community organizing support** for members who want to advocate for specific changes or improvements
**Community Organising and Advocacy:**
- **Community organising support** for members who want to advocate for specific changes or improvements
- **Coalition building assistance** helping community members with shared interests collaborate effectively on improvement initiatives
- **Advocacy training and resources** empowering community members to effectively participate in governance and change processes
- **Community campaign support** for democratic initiatives that build broad community support for positive changes
### 5.2 Crisis and Emergency Community Consultation
#### 5.1.3. Demographic Self-Identification
#### 5.2.1 Emergency Response Input
**Voluntary Self-Identification Process:**
- **Anonymous demographic self-identification form** enabling community members to voluntarily share demographic information to help us understand community diversity and identify participation barriers
- **New member onboarding requirement** all new community members are encouraged to complete the self-identification form when joining the community
- **Annual demographic update** all community members are encouraged to complete the self-identification form at the start of each calendar year to measure demographic trends and changes over time
- **Complete anonymity** all responses are completely anonymous and aggregated for statistical analysis only; individual responses cannot be linked to specific community members
**Purpose and Use:**
- **Demographic diversity assessment** understanding the diversity of our community across various dimensions including age, geographic location, language, gender identity, sexual orientation, race/ethnicity, disability status, neurodivergence, and socioeconomic background
- **Participation barrier identification** identifying barriers to engagement affecting different demographic groups
- **Feedback system evaluation** ensuring feedback systems and participation opportunities effectively reach and engage diverse community members
- **Accessibility improvement** measuring progress toward inclusive representation and identifying areas where accessibility and accommodation efforts need enhancement
- **Trend measurement** tracking demographic changes and trends over time to understand community evolution
**Privacy and Confidentiality:**
- **Complete anonymity** no identifying information is collected; responses cannot be linked to individual community members
- **Aggregated analysis only** all data is used only in aggregate form for statistical analysis and community improvement purposes
- **Voluntary participation** participation is completely voluntary; all questions include a "Prefer not to answer" option
- **Secure data handling** all demographic data is stored securely and handled in accordance with our Privacy Policy and applicable data protection laws
**Self-Identification Form:**
Community members can complete the anonymous self-identification form at: https://forms.nhcarrigan.com/o/docs/forms/p7fkz5yJN9GKrQjw5zhX6U/4
**Completion Requirements:**
- **New members:** All new community members are encouraged to complete the self-identification form as part of the onboarding process
- **Annual updates:** All community members are encouraged to complete the self-identification form at the start of each calendar year (January) to help us measure demographic trends and changes over time
- **Voluntary nature:** While completion is encouraged, participation remains completely voluntary and anonymous
### 5.2. Crisis and Emergency Community Consultation
#### 5.2.1. Emergency Response Input
**Crisis Communication and Consultation:**
- **Emergency communication protocols** ensuring community members receive timely information about crisis decisions affecting them
- **Rapid consultation processes** gathering essential community input even during emergency situations
- **Community safety prioritization** balancing community input with immediate safety and security requirements
- **Community safety prioritisation** balancing community input with immediate safety and security requirements
- **Post-crisis evaluation** involving comprehensive community consultation on emergency response effectiveness and improvements
#### 5.2.2 Community Healing and Recovery Participation
#### 5.2.2. Community Healing and Recovery Participation
**Collective Recovery Planning:**
- **Community-wide healing initiatives** developed with broad community input and participation
@@ -264,12 +297,12 @@ When immediate policy changes are necessary for community safety:
## 6. Feedback Response and Follow-Up Systems
### 6.1 Comprehensive Response Protocols
### 6.1. Comprehensive Response Protocols
#### 6.1.1 Individual Feedback Acknowledgment
#### 6.1.1. Individual Feedback Acknowledgment
**Personal Response Commitments:**
- **Acknowledgment within 48 hours** for all individual feedback submissions and policy input
- **Acknowledgment within 7-10 business days** for all individual feedback submissions and policy input
- **Detailed responses within 14 days** addressing specific concerns, suggestions, and questions raised by community members
- **Follow-up communication** ensuring community members feel heard and providing updates on how their input is being considered
- **Personal consultation opportunities** for community members who need additional discussion or clarification about their feedback
@@ -280,7 +313,13 @@ When immediate policy changes are necessary for community safety:
- **Outcome communication** sharing results and impacts of changes made in response to community feedback
- **Satisfaction follow-up** ensuring community members are satisfied with how their feedback was handled and addressed
#### 6.1.2 Community-Wide Response Communication
#### 6.1.2. Community-Wide Response Communication
:::tip[Heads Up!]{icon=pen}
The policy or policies in this section are still a work in progress. We have not yet implemented the necessary infrastructure to comply with this section.
We are working very hard to get them in place as soon as possible. If you would like to help, consider [applying to join our team!](https://forms.nhcarrigan.com/o/docs/forms/mCxDu3snk9TzFiDjrT4Vc8/4)
:::
**Public Feedback Summaries:**
- **Monthly summary reports** highlighting community feedback themes, concerns, and suggestions received
@@ -289,14 +328,14 @@ When immediate policy changes are necessary for community safety:
- **Appreciation and recognition** of community members who provide valuable feedback and participate in governance processes
**Community Learning and Improvement:**
- **Best practice sharing** about effective feedback integration and community input utilization
- **Best practice sharing** about effective feedback integration and community input utilisation
- **Process improvement updates** showing how community feedback systems themselves are being enhanced based on member input
- **Success story communication** celebrating positive changes that resulted from community feedback and participation
- **Challenge identification** and collaborative problem-solving when feedback systems need improvement or enhancement
### 6.2 Continuous Feedback System Enhancement
### 6.2. Continuous Feedback System Enhancement
#### 6.2.1 Meta-Feedback and System Improvement
#### 6.2.1. Meta-Feedback and System Improvement
**Feedback System Effectiveness Assessment:**
- **Annual evaluation** of community feedback systems and their effectiveness in enabling meaningful participation
@@ -312,9 +351,9 @@ When immediate policy changes are necessary for community safety:
## 7. Training and Support for Community Participation
### 7.1 Civic Engagement Education
### 7.1. Civic Engagement Education
#### 7.1.1 Participation Skills Development
#### 7.1.1. Participation Skills Development
**Democratic Participation Training:**
- **Civic engagement workshops** teaching community members effective advocacy, communication, and participation skills
@@ -326,9 +365,9 @@ When immediate policy changes are necessary for community safety:
- **Public speaking and presentation training** for community members interested in more active governance participation
- **Written communication skills** development for effective policy feedback and proposal development
- **Research and analysis training** helping community members gather information and develop evidence-based suggestions
- **Coalition building and organizing skills** for community members interested in leading community improvement initiatives
- **Coalition building and organising skills** for community members interested in leading community improvement initiatives
#### 7.1.2 Community Governance Education
#### 7.1.2. Community Governance Education
**Governance Literacy Programs:**
- **Community governance orientation** for new members explaining how community decision-making works and how to participate
@@ -336,17 +375,17 @@ When immediate policy changes are necessary for community safety:
- **Leadership and governance roles education** explaining different governance positions and how community members can become involved
- **Community history and values education** helping members understand the context and principles guiding community governance
### 7.2 Participation Support and Mentorship
### 7.2. Participation Support and Mentorship
#### 7.2.1 New Member Integration
#### 7.2.1. New Member Integration
**Participation Mentorship Programs:**
**Participation Mentorship Programmes:**
- **Governance mentorship** pairing experienced community members with newcomers interested in participation and feedback
- **Peer support networks** connecting community members with similar interests in governance and community improvement
- **Guided participation experiences** providing supported opportunities for new members to engage in feedback and governance processes
- **Community leadership pipeline development** identifying and supporting community members interested in greater governance involvement
#### 7.2.2 Ongoing Participation Support
#### 7.2.2. Ongoing Participation Support
**Sustained Engagement Assistance:**
- **Resource libraries** providing ongoing access to materials, tools, and information supporting effective community participation
@@ -356,9 +395,9 @@ When immediate policy changes are necessary for community safety:
## 8. Policy Implementation and Continuous Improvement
### 8.1 Policy Effectiveness Evaluation
### 8.1. Policy Effectiveness Evaluation
#### 8.1.1 Regular Assessment and Enhancement
#### 8.1.1. Regular Assessment and Enhancement
**Quarterly System Review:**
- **Participation metrics assessment** analysing community engagement levels and identifying areas for improvement
@@ -372,13 +411,13 @@ When immediate policy changes are necessary for community safety:
- **Community capacity building** evaluation assessing how participation systems support community member skill development and engagement
- **System innovation and improvement** planning for enhanced feedback systems and participation opportunities
### 8.2 Community-Driven Policy Evolution
### 8.2. Community-Driven Policy Evolution
#### 8.2.1 Responsive Policy Development
#### 8.2.1. Responsive Policy Development
**Community-Initiated Policy Changes:**
- **Community proposal processes** enabling members to suggest policy modifications and improvements through structured democratic processes
- **Community prioritization systems** allowing members to identify which policy areas most need attention and improvement
- **Community prioritisation systems** allowing members to identify which policy areas most need attention and improvement
- **Collaborative policy development** involving community members in drafting, reviewing, and refining policy changes
- **Democratic approval processes** ensuring community input and consent for significant policy modifications and new policy development
@@ -398,4 +437,4 @@ Through this Policy, we pledge to maintain transparent, accessible, and effectiv
---
*This Community Feedback and Participation Policy was created on 15 September 2025. For questions about community participation opportunities or to provide feedback on this Policy, please contact our Community Leaders through the designated channels outlined in our Community Code of Conduct.*
*This Community Feedback and Participation Policy provides comprehensive information about community participation opportunities. For questions about community participation opportunities or to provide feedback on this Policy, please contact our Community Leaders through the designated channels outlined in our Community Code of Conduct.*
+159 -159
View File
@@ -4,15 +4,15 @@ title: Community Guidelines and Best Practices
## 1. Introduction and Framework
### 1.1 Purpose and Scope
### 1.1. Purpose and Scope
These Community Guidelines (hereinafter referred to as "the Guidelines") serve as a comprehensive framework for fostering positive, productive, and meaningful interactions within our community ecosystem. Whilst these Guidelines represent recommended best practices rather than mandatory requirements, adherence to these principles is strongly encouraged and contributes significantly to maintaining the high standards, integrity, and collaborative spirit that define our community.
### 1.2 Relationship to Mandatory Policies
### 1.2. Relationship to Mandatory Policies
These Guidelines operate in conjunction with and supplement our mandatory Community Code of Conduct. Where any provision of these Guidelines conflicts with our Code of Conduct, the Code of Conduct shall take precedence as the binding standard. Nothing contained within these Guidelines shall supersede, modify, or diminish the requirements established by our Code of Conduct.
### 1.3 Community Objectives
### 1.3. Community Objectives
The primary objectives of these Guidelines are to:
1. **Promote Excellence**: Encourage high-quality contributions and meaningful dialogue
@@ -21,7 +21,7 @@ The primary objectives of these Guidelines are to:
4. **Maintain Standards**: Preserve the professional and collaborative atmosphere that characterises our community
5. **Encourage Participation**: Provide clear guidance for constructive engagement at all levels
### 1.4 Voluntary Nature and Benefits
### 1.4. Voluntary Nature and Benefits
Whilst compliance with these Guidelines is voluntary, community members who consistently demonstrate these behaviours typically experience:
- Enhanced reputation and standing within the community
@@ -31,45 +31,45 @@ Whilst compliance with these Guidelines is voluntary, community members who cons
## 2. Staff Interaction and Professional Relationships
### 2.1 Recognition of Voluntary Service
### 2.1. Recognition of Voluntary Service
Our community staff members, including moderators, administrators, and support personnel, generously volunteer their time, expertise, and energy to maintain safe, welcoming, and productive community environments. These individuals dedicate significant personal resources to ensure that our community remains accessible, secure, and beneficial for all participants.
### 2.2 Professional Courtesy and Respect
### 2.2. Professional Courtesy and Respect
#### 2.2.1 Fundamental Principles
#### 2.2.1. Fundamental Principles
Community members are encouraged to demonstrate professional courtesy and respect in all interactions with staff by:
- Acknowledging the challenges inherent in moderating online communities
- Recognising that staff members are volunteers balancing community service with personal commitments
- Approaching staff interactions with patience, understanding, and constructive intent
- Expressing gratitude for staff efforts and contributions when appropriate
#### 2.2.2 Communication Standards
#### 2.2.2. Communication Standards
Effective communication with staff members should demonstrate:
- Clear, respectful, and professional language
- Specific descriptions of issues or concerns rather than general complaints
- Constructive suggestions for improvement when raising concerns
- Recognition of resource constraints and competing priorities
### 2.3 Staff Authority and Decision-Making Process
### 2.3. Staff Authority and Decision-Making Process
#### 2.3.1 Scope of Authority
#### 2.3.1. Scope of Authority
Staff members are vested with authority to make decisions necessary for maintaining community safety, order, and positive atmosphere. This authority includes, but is not limited to:
- Interpreting and applying community policies and guidelines
- Managing community resources and access permissions
- Addressing conflicts and disciplinary matters
- Implementing changes to improve community operations
#### 2.3.2 Recognition of Human Limitations
#### 2.3.2. Recognition of Human Limitations
Community members should recognise that staff members, being human, may occasionally:
- Make decisions that appear inconsistent or questionable
- Experience variations in judgement due to personal circumstances
- Require additional information to make fully informed decisions
- Benefit from constructive feedback and alternative perspectives
### 2.4 Dispute Resolution and Appeals Process
### 2.4. Dispute Resolution and Appeals Process
#### 2.4.1 Constructive Approach to Disagreements
#### 2.4.1. Constructive Approach to Disagreements
When community members disagree with staff decisions, the recommended approach includes:
1. **Pause and Reflect**: Allow time for emotional responses to subside before responding
@@ -77,22 +77,22 @@ When community members disagree with staff decisions, the recommended approach i
3. **Consider Alternative Perspectives**: Attempt to understand the rationale behind staff decisions
4. **Document Concerns**: Prepare clear, factual descriptions of specific issues
#### 2.4.2 Inappropriate Response Patterns
#### 2.4.2. Inappropriate Response Patterns
Community members should avoid the following counterproductive behaviours:
- Direct confrontation or argumentative challenges to staff authority
- Public criticism or undermining of staff decisions
- Emotional outbursts or personal attacks directed at staff members
- Demands for immediate resolution without allowing adequate consideration time
#### 2.4.3 Formal Appeals Process Reference
#### 2.4.3. Formal Appeals Process Reference
**IMPORTANT: Comprehensive appeals procedures, including confidential review processes, impartial assessment protocols, and accessibility standards, are set forth in our dedicated [Appeals Process](/community/appeal) document.**
For situations where informal resolution is insufficient, our formal appeals process provides independent, confidential review with fair consideration of all perspectives and transparent communication of outcomes.
### 2.6 Post-Sanction Conduct and Improvement
### 2.6. Post-Sanction Conduct and Improvement
#### 2.6.1 Constructive Response to Disciplinary Actions
#### 2.6.1. Constructive Response to Disciplinary Actions
Community members who receive disciplinary sanctions are encouraged to:
**Positive Actions:**
@@ -103,7 +103,7 @@ Community members who receive disciplinary sanctions are encouraged to:
- Maintain respectful, professional demeanour in all subsequent interactions
- Focus on contributing positively to community discussions and activities
#### 2.6.2 Counterproductive Response Patterns
#### 2.6.2. Counterproductive Response Patterns
Community members should avoid the following behaviours following disciplinary actions:
- Continuing the sanctioned behaviour in modified or disguised forms
- Attempting to circumvent policies through technical loopholes or creative interpretations
@@ -111,7 +111,7 @@ Community members should avoid the following behaviours following disciplinary a
- Engaging in comparative arguments about other members' conduct or perceived inconsistencies
- Displaying resentment, hostility, or non-cooperation with staff or community standards
#### 2.6.3 Growth and Learning Opportunities
#### 2.6.3. Growth and Learning Opportunities
Disciplinary situations, whilst challenging, offer opportunities for:
- Personal growth and improved self-awareness
- Enhanced understanding of community standards and expectations
@@ -120,29 +120,29 @@ Disciplinary situations, whilst challenging, offer opportunities for:
## 3. Plural Systems Support and Inclusivity
### 3.1 Understanding and Recognition
### 3.1. Understanding and Recognition
#### 3.1.1 Definitions and Concepts
#### 3.1.1. Definitions and Concepts
Plural systems refer to individuals who experience multiple distinct identities, personality states, or conscious entities sharing a single physical body. These identities, commonly referred to as "alters," "headmates," or "system members," may have different names, preferences, communication styles, and roles within the system's functioning.
#### 3.1.2 Community Commitment to Inclusion
#### 3.1.2. Community Commitment to Inclusion
Our community explicitly recognises, values, and supports plural systems as full and equal members. We are committed to:
- Creating safe, welcoming environments for all system members
- Respecting the autonomy and validity of plural experiences
- Supporting system members' right to self-identification and expression
- Promoting understanding and acceptance throughout our community
### 3.2 Respectful Interaction Guidelines
### 3.2. Respectful Interaction Guidelines
#### 3.2.1 Privacy and Boundaries
#### 3.2.1. Privacy and Boundaries
Community members should demonstrate respect for plural systems by:
- **Respecting Privacy**: Never pressuring systems to disclose information about their plurality, individual alters, or system dynamics
- **Honouring Boundaries**: Accepting the level of information systems choose to share without requesting additional details
- **Avoiding Assumptions**: Not making judgements about system validity, formation, or functioning based on limited information
- **Supporting Autonomy**: Recognising systems' right to manage their own disclosure and participation decisions
#### 3.2.2 Prohibited Behaviours
**Reference to Comprehensive Policies**: Detailed harassment definitions, prohibited behaviors, and enforcement procedures are comprehensively covered in our Acceptable Use Policy and Content and Moderation Policy, which are incorporated herein by reference.
#### 3.2.2. Prohibited Behaviours
**Reference to Comprehensive Policies**: Detailed harassment definitions, prohibited behaviours, and enforcement procedures are comprehensively covered in our Acceptable Use Policy and Content and Moderation Policy, which are incorporated herein by reference.
Additional community-specific inappropriate behaviours include:
- Attempting to identify which alter is "fronting" (actively controlling the body) without permission
@@ -151,32 +151,32 @@ Additional community-specific inappropriate behaviours include:
- Making unsolicited comments about the causes or origins of plurality
- Offering unwanted advice about system management or integration
### 3.3 Communication Best Practices
### 3.3. Communication Best Practices
#### 3.3.1 Appropriate Addressing and Recognition
#### 3.3.1. Appropriate Addressing and Recognition
When interacting with plural systems:
- **Use Preferred Names and Pronouns**: Address individual alters by their chosen names and pronouns when known
- **Ask for Clarification Respectfully**: If uncertain about how to address someone, politely request guidance
- **Adapt to Communication Styles**: Recognise that different alters may have distinct communication preferences and styles
- **Maintain Consistency**: Remember and apply individual preferences across interactions when possible
#### 3.3.2 Switching and Communication Changes
#### 3.3.2. Switching and Communication Changes
Community members should understand that:
- Different alters may participate in conversations at different times (switching)
- Communication styles, interests, or responses may change when different alters are active
- Systems may need time to communicate internally or may experience communication delays
- Patience and flexibility enhance positive interactions with plural community members
### 3.4 Educational Approach and Community Development
### 3.4. Educational Approach and Community Development
#### 3.4.1 Promoting Understanding
#### 3.4.1. Promoting Understanding
Our community encourages education about plurality through:
- Sharing of appropriate educational resources and information
- Respectful dialogue about plural experiences when welcomed by system members
- Community-wide initiatives to increase awareness and acceptance
- Training for staff members on inclusive practices for plural individuals
#### 3.4.2 Resource Direction and Support
#### 3.4.2. Resource Direction and Support
Rather than placing educational burdens on individual systems:
- Direct general questions about plurality to appropriate educational resources
- Consult established literature, organisations, or informational websites
@@ -185,9 +185,9 @@ Rather than placing educational burdens on individual systems:
## 4. Tone Tags and Communication Enhancement
### 4.1 Understanding Tone Tags and Their Purpose
### 4.1. Understanding Tone Tags and Their Purpose
#### 4.1.1 Communication Challenges in Text-Based Environments
#### 4.1.1. Communication Challenges in Text-Based Environments
Text-based communication inherently lacks many contextual cues available in face-to-face interaction, including:
- Vocal tone, inflection, and emphasis
- Facial expressions and body language
@@ -196,12 +196,12 @@ Text-based communication inherently lacks many contextual cues available in face
These limitations frequently lead to misunderstandings, misinterpretations, and unnecessary conflicts within online communities.
#### 4.1.2 Solution: Tone Tags as Communication Tools
#### 4.1.2. Solution: Tone Tags as Communication Tools
Tone tags represent a systematic approach to addressing these communication challenges by providing explicit contextual information about the intended tone, purpose, or emotional content of messages. These brief, standardised indicators help clarify intent and reduce misunderstandings.
### 4.2 Strategic Application of Tone Tags
### 4.2. Strategic Application of Tone Tags
#### 4.2.1 Optimal Usage Scenarios
#### 4.2.1. Optimal Usage Scenarios
Consider implementing tone tags in the following circumstances:
- **Ambiguous Content**: Messages that could reasonably be interpreted in multiple ways
- **Humour and Sarcasm**: Content intended as humorous, sarcastic, or ironic that might not be immediately apparent
@@ -209,23 +209,23 @@ Consider implementing tone tags in the following circumstances:
- **Cross-Cultural Communication**: Interactions with individuals from different cultural or linguistic backgrounds
- **Accessibility Needs**: Communication with individuals who have expressed difficulty interpreting textual tone
#### 4.2.2 Preventive Communication Strategy
#### 4.2.2. Preventive Communication Strategy
Proactive use of tone tags can prevent:
- Escalation of minor misunderstandings into significant conflicts
- Emotional distress caused by misinterpretation of intent
- Time-consuming clarification discussions
- Damage to relationships and community trust
### 4.3 Implementation Guidelines and Best Practices
### 4.3. Implementation Guidelines and Best Practices
#### 4.3.1 Formatting and Placement Standards
#### 4.3.1. Formatting and Placement Standards
Effective tone tag implementation involves:
- **Location**: Place tone tags at the end of the relevant message or section
- **Format**: Enclose tags in forward slashes, e.g., `/j` for joking
- **Multiple Tags**: Use multiple tags when appropriate, e.g., `/s /lh` for sarcastic but lighthearted
- **Consistency**: Apply tags consistently across similar communication contexts
#### 4.3.2 Comprehensive Tone Tag Reference
#### 4.3.2. Comprehensive Tone Tag Reference
| Tag | Meaning | Usage Context |
|------------------------|--------------------------------------|--------------------------------------------------|
@@ -281,32 +281,32 @@ Effective tone tag implementation involves:
| `/t` | Teasing | Engaging in playful, non-malicious mockery |
| `/tc`, `/ti` or `/tic` | Typing a Tic | Indicating involuntary typing behaviour |
### 4.4 Community Etiquette and Respect
### 4.4. Community Etiquette and Respect
#### 4.4.1 Respectful Response to Tone Tags
#### 4.4.1. Respectful Response to Tone Tags
Community members should demonstrate respect for tone tag usage by:
- **Interpreting Appropriately**: Adjust message interpretation based on provided tone tags
- **Seeking Clarification**: Politely request explanation for unfamiliar or unclear tags
- **Avoiding Mockery**: Never belittle, mock, or criticise others for using tone tags
- **Supporting Usage**: Encourage tone tag adoption when it would enhance communication
#### 4.4.2 Accessibility and Inclusion Benefits
#### 4.4.2. Accessibility and Inclusion Benefits
Tone tags particularly benefit:
- **Neurodivergent Individuals**: People who may experience difficulty interpreting social cues or implied meanings
- **Non-Native Speakers**: Individuals for whom English cultural and linguistic nuances may be challenging
- **Screen Reader Users**: People using assistive technology who can access tone tag information
- **Anxiety-Prone Communicators**: Individuals who benefit from explicit clarification of intent
### 4.5 Limitations and Complementary Practices
### 4.5. Limitations and Complementary Practices
#### 4.5.1 Recognising Tool Limitations
#### 4.5.1. Recognising Tool Limitations
Whilst tone tags enhance communication, they should not replace:
- Clear, well-structured writing
- Thoughtful consideration of audience and context
- Direct communication when clarity is essential
- Professional writing standards in formal contexts
#### 4.5.2 Community-Specific Adaptations
#### 4.5.2. Community-Specific Adaptations
Our community may develop additional tone tags to address specific needs:
- **Community Consensus**: New tags adopted through collective agreement and usage
- **Documentation Updates**: Regular updates to tone tag references and guidelines
@@ -314,28 +314,28 @@ Our community may develop additional tone tags to address specific needs:
## 5. Pronoun Usage and Gender Inclusivity
### 5.1 Importance of Accurate Pronoun Usage
### 5.1. Importance of Accurate Pronoun Usage
#### 5.1.1 Fundamental Principle of Respect
#### 5.1.1. Fundamental Principle of Respect
Pronouns represent a fundamental aspect of personal identity and self-expression. Using individuals' correct pronouns demonstrates basic respect for their identity and contributes to creating inclusive environments where all community members can participate authentically and comfortably.
#### 5.1.2 Community Values and Commitment
#### 5.1.2. Community Values and Commitment
Our community is committed to:
- **Universal Respect**: Treating all gender identities with equal dignity and consideration
- **Inclusive Practices**: Implementing systems and practices that accommodate diverse pronoun preferences
- **Educational Support**: Providing resources and guidance to help community members learn inclusive practices
- **Safe Expression**: Creating environments where individuals feel secure expressing their authentic identities
### 5.2 Pronoun Sharing and Display
### 5.2. Pronoun Sharing and Display
#### 5.2.1 Encouraging Universal Participation
#### 5.2.1. Encouraging Universal Participation
We strongly encourage all community members to display their pronouns regardless of gender identity through:
- **Profile Information**: Including pronouns in bio sections and profile descriptions
- **Platform Features**: Utilising designated pronoun roles, badges, or comparable features when available
- **Display Names**: Incorporating pronouns into usernames or display names when desired
- **Signature Lines**: Adding pronouns to forum signatures or communication templates
#### 5.2.2 Benefits of Universal Pronoun Sharing
#### 5.2.2. Benefits of Universal Pronoun Sharing
Universal pronoun sharing creates numerous community benefits:
**Individual Benefits:**
@@ -349,16 +349,16 @@ Universal pronoun sharing creates numerous community benefits:
- **Education**: Raises awareness about gender diversity and respectful practices
- **Safety**: Reduces the risk of inadvertent outing or identity disclosure
### 5.3 Respectful Pronoun Practices
### 5.3. Respectful Pronoun Practices
#### 5.3.1 Consistent Usage Standards
#### 5.3.1. Consistent Usage Standards
Community members should consistently:
- **Use Specified Pronouns**: Always employ the pronouns individuals have indicated for themselves
- **Ask When Uncertain**: Politely request pronoun information when it is not readily available
- **Correct Mistakes Promptly**: Acknowledge errors briefly, correct usage, and continue conversations
- **Avoid Assumptions**: Never assume pronouns based on appearance, name, or other characteristics
#### 5.3.2 Error Correction Protocol
#### 5.3.2. Error Correction Protocol
When pronoun mistakes occur:
**For the Person Making the Error:**
@@ -372,9 +372,9 @@ When pronoun mistakes occur:
2. **Support the Individual**: Check privately with misgendered individuals if they need support
3. **Avoid Public Scenes**: Don't create dramatic confrontations over honest mistakes
### 5.4 Diverse Pronoun Options and Recognition
### 5.4. Diverse Pronoun Options and Recognition
#### 5.4.1 Comprehensive Pronoun Spectrum
#### 5.4.1. Comprehensive Pronoun Spectrum
Community members may use various pronoun sets including:
**Traditional Pronouns:**
@@ -393,39 +393,39 @@ Community members may use various pronoun sets including:
- Name only: People who prefer their name used instead of pronouns
- Multiple sets: Individuals who use different pronouns in different contexts
#### 5.4.2 Evolving and Changing Pronouns
#### 5.4.2. Evolving and Changing Pronouns
Community members should understand that:
- **Pronouns May Change**: Individuals have the right to modify their pronouns at any time
- **Historical Accuracy**: Always use current pronouns, even when discussing past events
- **No Explanation Required**: Pronoun changes do not require justification or detailed explanation
- **Immediate Implementation**: Begin using new pronouns as soon as you become aware of changes
### 5.5 Community Support and Education
### 5.5. Community Support and Education
#### 5.5.1 Creating Learning Opportunities
#### 5.5.1. Creating Learning Opportunities
Our community supports pronoun education through:
- **Resource Sharing**: Providing educational materials about gender identity and pronoun usage
- **Community Discussion**: Facilitating respectful conversations about inclusive practices
- **Mentorship Programs**: Connecting experienced community members with newcomers learning inclusive practices
- **Mentorship Programmes**: Connecting experienced community members with newcomers learning inclusive practices
- **Regular Updates**: Sharing information about evolving best practices and community standards
#### 5.5.2 Addressing Challenges and Resistance
#### 5.5.2. Addressing Challenges and Resistance
When community members experience difficulty with pronoun usage:
- **Educational Approach**: Provide patient education and resources rather than immediate punishment
- **Cultural Sensitivity**: Acknowledge different cultural backgrounds whilst maintaining community standards
- **Progressive Improvement**: Recognise that learning takes time and celebrate progress over perfection
- **Clear Boundaries**: Maintain firm standards whilst providing supportive learning environments
### 5.6 Privacy and Consent Considerations
### 5.6. Privacy and Consent Considerations
#### 5.6.1 Voluntary Disclosure
#### 5.6.1. Voluntary Disclosure
Whilst pronoun sharing is strongly encouraged, community members should understand that:
- **Personal Choice**: Pronoun sharing remains ultimately voluntary and personal
- **No Pressure**: Never pressure individuals to disclose pronouns if they are uncomfortable doing so
- **Privacy Respect**: Some individuals may have complex reasons for not sharing pronouns publicly
- **Alternative Solutions**: Find respectful ways to communicate without pronouns when necessary
#### 5.6.2 Confidentiality and Safety
#### 5.6.2. Confidentiality and Safety
In certain circumstances, pronoun information may require confidential handling:
- **Safety Concerns**: Some individuals may face risk if their gender identity becomes widely known
- **Professional Contexts**: Workplace or academic situations may require careful navigation
@@ -434,21 +434,21 @@ In certain circumstances, pronoun information may require confidential handling:
## 6. Accessibility and Universal Design
### 6.1 Commitment to Accessibility
### 6.1. Commitment to Accessibility
#### 6.1.1 Foundational Principles
#### 6.1.1. Foundational Principles
Our community is committed to ensuring that all members, regardless of disability status or access needs, can participate fully and meaningfully in all community activities, discussions, and opportunities. This commitment reflects our core values of inclusion, equality, and universal respect for human dignity.
#### 6.1.2 Universal Design Philosophy
#### 6.1.2. Universal Design Philosophy
We embrace universal design principles that recognise accessibility benefits extend beyond individuals with specific disabilities:
- **Broader Benefits**: Accessible content is easier for everyone to consume and understand
- **Future-Proofing**: Accessible practices accommodate evolving technology and changing needs
- **Inclusive Culture**: Accessibility awareness creates more thoughtful, inclusive community culture
- **Innovation Driver**: Accessibility requirements often lead to creative solutions that benefit all users
### 6.2 Visual Content and Alternative Text
### 6.2. Visual Content and Alternative Text
#### 6.2.1 Alternative Text Requirements and Best Practices
#### 6.2.1. Alternative Text Requirements and Best Practices
All visual content shared within our community should include descriptive alternative text to ensure accessibility for screen reader users and individuals who cannot view images directly.
**Comprehensive Alt Text Guidelines:**
@@ -472,15 +472,15 @@ All visual content shared within our community should include descriptive altern
- Instead of: "meme" or "funny picture"
- Use: "A photograph of a golden retriever wearing sunglasses sitting at a computer desk, with text reading 'When you finally understand the assignment' in bold white letters"
#### 6.2.2 Context-Appropriate Description
#### 6.2.2. Context-Appropriate Description
Effective alternative text considers:
- **Audience Needs**: What information do viewers need to understand the content's purpose?
- **Context Relevance**: How does the image relate to the surrounding discussion or content?
- **Essential Information**: Which visual elements are crucial for comprehension versus decorative?
### 6.3 Content Structure and Navigation
### 6.3. Content Structure and Navigation
#### 6.3.1 Hierarchical Organisation
#### 6.3.1. Hierarchical Organisation
Well-structured content enhances accessibility and usability for all community members:
**Heading Structure:**
@@ -493,7 +493,7 @@ Well-structured content enhances accessibility and usability for all community m
- Use bullet points, numbered lists, or other organisational tools for complex information
- Group related information together under appropriate headings
#### 6.3.2 Link and Navigation Standards
#### 6.3.2. Link and Navigation Standards
Accessible navigation requires:
**Descriptive Link Text:**
@@ -505,9 +505,9 @@ Accessible navigation requires:
- Instead of: "Click here for more information"
- Use: "View our upcoming community events and registration details"
### 6.4 Multimedia Content Accessibility
### 6.4. Multimedia Content Accessibility
#### 6.4.1 Video Content Requirements
#### 6.4.1. Video Content Requirements
Video content shared within our community should include:
**Captions and Subtitles:**
@@ -521,61 +521,61 @@ Video content shared within our community should include:
- Description of actions, settings, facial expressions, and visual information
- Integration that doesn't interfere with original audio content
#### 6.4.2 Audio Content Support
#### 6.4.2. Audio Content Support
Audio-only content benefits from:
- **Complete Transcripts**: Full text versions of audio content
- **Chapter Markers**: Time-stamped section indicators for easy navigation
- **Content Summaries**: Brief descriptions of audio content for quick reference
### 6.5 Sensitive Content and Seizure Prevention
### 6.5. Sensitive Content and Seizure Prevention
#### 6.5.1 Flashing and Moving Content
#### 6.5.1. Flashing and Moving Content
To protect individuals with photosensitive epilepsy and other conditions:
- **Avoid Rapid Flashing**: Never share content that flashes more than three times per second
- **Provide Warnings**: Include clear warnings before sharing potentially problematic content
- **Alternative Formats**: Offer still images or descriptions as alternatives when possible
#### 6.5.2 Content Warnings and Preparation
#### 6.5.2. Content Warnings and Preparation
Comprehensive content warnings help individuals prepare for or avoid potentially harmful content:
- **Specific Descriptions**: Provide clear, specific information about content nature
- **Placement**: Position warnings before the potentially problematic content
- **Multiple Formats**: Use both text warnings and visual indicators when appropriate
### 6.6 Community Support and Continuous Improvement
### 6.6. Community Support and Continuous Improvement
#### 6.6.1 Feedback and Enhancement
#### 6.6.1. Feedback and Enhancement
Our commitment to accessibility includes:
- **Community Input**: Welcoming feedback on accessibility barriers and improvement opportunities
- **Regular Assessment**: Periodic review of accessibility practices and their effectiveness
- **Resource Sharing**: Providing tools, guides, and educational materials about accessibility
- **Collaborative Improvement**: Working together to identify and address accessibility challenges
#### 6.6.2 Education and Awareness
#### 6.6.2. Education and Awareness
Building accessibility awareness throughout our community involves:
- **Training Opportunities**: Offering education about disability awareness and inclusive practices
- **Resource Development**: Creating guides and tools to support accessible content creation
- **Cultural Change**: Fostering community norms that prioritise accessibility and inclusion
- **Recognition Programs**: Celebrating community members who demonstrate exceptional commitment to accessibility
- **Recognition Programmes**: Celebrating community members who demonstrate exceptional commitment to accessibility
## 7. Content Warnings and Trauma-Informed Practices
### 7.1 Trauma-Informed Community Approach
### 7.1. Trauma-Informed Community Approach
#### 7.1.1 Understanding Trauma Impact
#### 7.1.1. Understanding Trauma Impact
Our community recognises that many individuals have experienced various forms of trauma, and exposure to related content can cause significant distress, trigger harmful memories, or impact mental health. Content warnings represent our commitment to trauma-informed practices that prioritise community member safety and well-being.
#### 7.1.2 Community Safety Framework
#### 7.1.2. Community Safety Framework
Content warnings contribute to community safety by:
- **Informed Consent**: Enabling individuals to make educated decisions about content engagement
- **Risk Reduction**: Minimising unintentional exposure to potentially harmful content
- **Control and Agency**: Providing individuals with control over their content consumption
- **Inclusive Environment**: Creating spaces where trauma survivors can participate safely
### 7.2 Content Warning Requirements Reference
### 7.2. Content Warning Requirements Reference
**IMPORTANT: Comprehensive content warning requirements, including mandatory categories, enforcement procedures, and compliance standards, are set forth in our Content and Moderation Policy, which is incorporated herein by reference.**
#### 7.2.1 Community-Specific Guidance
#### 7.2.1. Community-Specific Guidance
Content warnings are **mandatory** across all community spaces. Key community-specific considerations include:
@@ -583,9 +583,9 @@ Content warnings are **mandatory** across all community spaces. Key community-sp
- **Community Context**: Apply content warning standards thoughtfully within the context of community discussions and interactions
- **Educational Support**: Community members are encouraged to support one another in learning and applying content warning practices
### 7.4 Effective Warning Implementation
### 7.4. Effective Warning Implementation
#### 7.4.1 Warning Format and Placement
#### 7.4.1. Warning Format and Placement
Effective content warnings should:
**Placement and Visibility:**
@@ -603,33 +603,33 @@ Effective content warnings should:
- "CW: Graphic descriptions of physical violence"
- "Trigger Warning: References to sexual assault and trauma recovery"
#### 7.4.2 Spoiler Tags and Content Hiding
#### 7.4.2. Spoiler Tags and Content Hiding
When platform features allow:
- Use spoiler tags, content hiding, or "read more" cuts to conceal potentially triggering content
- Combine warnings with hiding mechanisms for maximum protection
- Ensure warnings remain visible even when content is hidden
### 7.5 Community Response and Support
### 7.5. Community Response and Support
#### 7.5.1 Respectful Responses to Warnings
#### 7.5.1. Respectful Responses to Warnings
Community members should demonstrate respect for content warning practices by:
- **Taking Warnings Seriously**: Never mock, dismiss, or minimise the importance of content warnings
- **Individual Needs Recognition**: Understanding that warning needs vary among individuals
- **Individual Needs Recognition**: Understanding that warning needs vary amongst individuals
- **Gracious Compliance**: Accepting requests for additional warnings without defensiveness
- **Supportive Behaviour**: Encouraging and normalising content warning usage
#### 7.5.2 Appropriate Challenge and Discussion
#### 7.5.2. Appropriate Challenge and Discussion
While respecting content warnings, community members may:
- **Request Clarification**: Ask for more specific warnings when needed
- **Suggest Improvements**: Offer constructive feedback about warning effectiveness
- **Share Resources**: Provide educational materials about trauma-informed practices
- **Model Best Practices**: Demonstrate excellent content warning usage for others to follow
### 7.6 Enforcement Reference
### 7.6. Enforcement Reference
**IMPORTANT: Comprehensive enforcement procedures for content warning violations, including response protocols, disciplinary measures, and appeals processes, are set forth in our Content and Moderation Policy, which is incorporated herein by reference.**
#### 7.6.1 Community Education and Support
#### 7.6.1. Community Education and Support
Our community commitment to content warning compliance includes:
- **Peer Support**: Community members helping one another learn and apply content warning practices
- **Educational Approach**: Emphasis on learning and improvement rather than punishment when possible
@@ -637,22 +637,22 @@ Our community commitment to content warning compliance includes:
## 8. Conflict Resolution and Mediation
### 8.1 Philosophy of Constructive Conflict Management
### 8.1. Philosophy of Constructive Conflict Management
#### 8.1.1 Conflict as Natural Community Element
#### 8.1.1. Conflict as Natural Community Element
Conflicts, disagreements, and differences of opinion represent natural and inevitable aspects of any vibrant, diverse community. Rather than viewing conflict as inherently negative or destructive, our community approaches disagreements as opportunities for growth, learning, and strengthened relationships when handled constructively.
#### 8.1.2 Restorative Justice Principles
#### 8.1.2. Restorative Justice Principles
Our conflict resolution approach emphasises:
- **Relationship Repair**: Focus on healing and strengthening community relationships
- **Mutual Understanding**: Encouraging empathy and perspective-taking among conflicting parties
- **Mutual Understanding**: Encouraging empathy and perspective-taking amongst conflicting parties
- **Learning Opportunities**: Using conflicts as chances for personal and community growth
- **Collaborative Solutions**: Seeking win-win outcomes that address underlying needs and concerns
- **Community Strengthening**: Leveraging conflict resolution to build more resilient community bonds
### 8.2 Foundational Principles for Constructive Engagement
### 8.2. Foundational Principles for Constructive Engagement
#### 8.2.1 Core Engagement Standards
#### 8.2.1. Core Engagement Standards
All community members engaged in conflict resolution should demonstrate:
**Respect and Human Dignity:**
@@ -671,11 +671,11 @@ All community members engaged in conflict resolution should demonstrate:
- Address specific behaviours, actions, or policies rather than personal character attacks
- Concentrate on issues within the scope of community standards and values
- Offer constructive suggestions and alternative approaches when raising concerns
- Avoid inflammatory language, generalizations, or escalatory rhetoric
- Avoid inflammatory language, generalisations, or escalatory rhetoric
### 8.3 Self-Directed Resolution Process
### 8.3. Self-Directed Resolution Process
#### 8.3.1 Direct Communication Framework
#### 8.3.1. Direct Communication Framework
The preferred first step in conflict resolution involves direct communication between affected parties:
**Preparation Phase:**
@@ -695,12 +695,12 @@ The preferred first step in conflict resolution involves direct communication be
- "I understand you might have intended [acknowledged intent], but the impact was [specific effect]"
- "I would appreciate if we could [specific request for change] in future interactions"
#### 8.3.2 Cooling-Down Period Management
#### 8.3.2. Cooling-Down Period Management
When emotions run high or productive communication becomes difficult:
**Recognition Signs:**
- Increasing emotional intensity or defensive responses
- Circular arguments without progress toward resolution
- Circular arguments without progress towards resolution
- Personal attacks or escalatory language
- Diminishing ability to listen or consider alternative perspectives
@@ -710,9 +710,9 @@ When emotions run high or productive communication becomes difficult:
- **Perspective-Taking**: Consider the situation from other parties' viewpoints during the pause
- **Solution Focus**: Return to discussions with renewed focus on collaborative problem-solving
### 8.4 Community-Supported Mediation
### 8.4. Community-Supported Mediation
#### 8.4.1 Third-Party Mediation Process
#### 8.4.1. Third-Party Mediation Process
When direct communication fails to resolve conflicts, community-supported mediation offers structured assistance:
**Mediator Selection:**
@@ -728,17 +728,17 @@ When direct communication fails to resolve conflicts, community-supported mediat
- **Solution Development**: Collaborative generation of potential solutions
- **Agreement Formation**: Development of specific, actionable resolution agreements
#### 8.4.2 Mediator Responsibilities and Guidelines
#### 8.4.2. Mediator Responsibilities and Guidelines
Community members serving as mediators should:
- **Maintain Neutrality**: Avoid taking sides or advocating for specific outcomes
- **Facilitate Communication**: Help parties express themselves clearly and listen effectively
- **Encourage Understanding**: Promote empathy and perspective-taking among parties
- **Focus on Solutions**: Guide discussions toward constructive problem-solving
- **Encourage Understanding**: Promote empathy and perspective-taking amongst parties
- **Focus on Solutions**: Guide discussions towards constructive problem-solving
- **Respect Confidentiality**: Maintain privacy about mediation discussions unless agreed otherwise
### 8.5 Staff Intervention and Escalation
### 8.5. Staff Intervention and Escalation
#### 8.5.1 Appropriate Escalation Triggers
#### 8.5.1. Appropriate Escalation Triggers
Community members should involve staff moderators when conflicts involve:
**Safety and Harassment Concerns:**
@@ -759,7 +759,7 @@ Community members should involve staff moderators when conflicts involve:
- Situations where parties refuse to engage constructively in resolution attempts
- Complex issues requiring specialised knowledge or authority to resolve
#### 8.5.2 Staff Intervention Protocols
#### 8.5.2. Staff Intervention Protocols
When staff intervention becomes necessary:
**Assessment and Planning:**
@@ -774,15 +774,15 @@ When staff intervention becomes necessary:
- **Stakeholder Communication**: Clear, respectful communication with all involved parties
- **Solution Development**: Collaborative development of sustainable, fair resolution approaches
### 8.6 Appeal and Review Processes
### 8.6. Appeal and Review Processes
#### 8.6.1 Dispute Resolution Appeals Reference
#### 8.6.1. Dispute Resolution Appeals Reference
**IMPORTANT: Comprehensive appeals procedures, including appeal grounds, submission processes, and review standards, are set forth in our dedicated [Appeals Process](/community/appeal) document.**
Community members who disagree with conflict resolution outcomes may access our formal appeals process, which provides independent review of procedural concerns, new evidence, and resolution appropriateness.
#### 8.6.2 Learning and Improvement Integration
#### 8.6.2. Learning and Improvement Integration
Our conflict resolution system includes mechanisms for continuous improvement:
- **Process Evaluation**: Regular assessment of resolution effectiveness and fairness
- **Community Feedback**: Collection of input from parties who have used resolution processes
@@ -791,12 +791,12 @@ Our conflict resolution system includes mechanisms for continuous improvement:
## 9. Community Enjoyment and Well-being
### 9.1 Fundamental Philosophy: Community as Enjoyable Experience
### 9.1. Fundamental Philosophy: Community as Enjoyable Experience
#### 9.1.1 Central Principle
#### 9.1.1. Central Principle
Participation in our community should fundamentally be an enjoyable, fulfilling, and positive experience for all members. This principle underlies all other community policies, guidelines, and practices, serving as the ultimate measure of our community's success and health.
#### 9.1.2 Signs of Healthy Community Engagement
#### 9.1.2. Signs of Healthy Community Engagement
Community members who are having positive experiences typically demonstrate:
- **Enthusiasm**: Genuine excitement about participating in discussions and activities
- **Curiosity**: Interest in learning from others and exploring new ideas or perspectives
@@ -804,9 +804,9 @@ Community members who are having positive experiences typically demonstrate:
- **Relaxation**: Ability to engage naturally without excessive stress or anxiety about community interactions
- **Growth**: Development of new skills, knowledge, or relationships through community participation
### 9.2 Self-Care and Boundary Management
### 9.2. Self-Care and Boundary Management
#### 9.2.1 Recognising the Need for Breaks
#### 9.2.1. Recognising the Need for Breaks
Community members are encouraged to recognise when they need distance from community activities:
**Warning Signs for Break Consideration:**
@@ -816,7 +816,7 @@ Community members are encouraged to recognise when they need distance from commu
- Losing interest in previously enjoyable community activities or discussions
- Noticing that community participation negatively impacts other areas of life
#### 9.2.2 Taking Healthy Breaks
#### 9.2.2. Taking Healthy Breaks
When breaks become necessary:
**Permission and Encouragement:**
@@ -831,16 +831,16 @@ When breaks become necessary:
- **Read-Only Mode**: Consuming community content without feeling pressure to contribute actively
- **Selective Participation**: Engaging only with specific community areas or topics that remain enjoyable
#### 9.2.3 Return and Re-engagement
#### 9.2.3. Return and Re-engagement
When community members feel ready to return:
- **Gradual Re-engagement**: No pressure to immediately return to previous participation levels
- **Continued Boundary Management**: Ongoing permission to adjust participation as needed
- **Community Support**: Assistance from other members in finding comfortable re-engagement approaches
- **Learning Integration**: Application of insights gained during breaks to enhance future community experience
### 9.3 Engagement Style Assessment and Adjustment
### 9.3. Engagement Style Assessment and Adjustment
#### 9.3.1 Self-Reflection on Interaction Patterns
#### 9.3.1. Self-Reflection on Interaction Patterns
Community members experiencing consistent dissatisfaction should consider:
**Interaction Style Evaluation:**
@@ -855,7 +855,7 @@ Community members experiencing consistent dissatisfaction should consider:
- Are your expectations for community interaction realistic and appropriate?
- Do you find meaning and satisfaction in the types of activities and discussions the community offers?
#### 9.3.2 Adjustment and Improvement Strategies
#### 9.3.2. Adjustment and Improvement Strategies
When reflection reveals opportunities for improvement:
**Communication Style Modifications:**
@@ -870,9 +870,9 @@ When reflection reveals opportunities for improvement:
- Appreciate the volunteer nature of community leadership and support systems
- Celebrate small positive interactions rather than expecting dramatic community changes
### 9.4 Staff-Supported Temporary Restrictions
### 9.4. Staff-Supported Temporary Restrictions
#### 9.4.1 Voluntary Temporary Exclusion
#### 9.4.1. Voluntary Temporary Exclusion
For community members who struggle with self-regulated breaks, our staff team offers supportive temporary restrictions:
**Service Description:**
@@ -887,7 +887,7 @@ For community members who struggle with self-regulated breaks, our staff team of
- Need for external structure to support personal well-being goals
- Temporary life circumstances that require reduced digital engagement
#### 9.4.2 Request Process and Implementation
#### 9.4.2. Request Process and Implementation
Members seeking voluntary temporary restrictions can:
**Request Procedure:**
@@ -902,9 +902,9 @@ Members seeking voluntary temporary restrictions can:
- Check-in communications at agreed intervals to assess continued need
- Collaborative planning for gradual re-engagement when restrictions end
### 9.5 Community Culture and Atmosphere Maintenance
### 9.5. Community Culture and Atmosphere Maintenance
#### 9.5.1 Collective Responsibility for Positive Environment
#### 9.5.1. Collective Responsibility for Positive Environment
Creating and maintaining an enjoyable community experience requires collective effort from all members:
**Individual Contributions:**
@@ -920,13 +920,13 @@ Creating and maintaining an enjoyable community experience requires collective e
- Constructive handling of challenges and conflicts that arise
- Ongoing evolution of community practices to better serve member needs
#### 9.5.2 Identifying and Addressing Systemic Issues
#### 9.5.2. Identifying and Addressing Systemic Issues
When community enjoyment becomes consistently problematic:
**Issue Recognition:**
- Multiple members reporting similar negative experiences
- Consistent patterns of conflict or dissatisfaction
- Declining participation or enthusiasm among established members
- Declining participation or enthusiasm amongst established members
- Feedback indicating community culture issues
**Systemic Solutions:**
@@ -937,21 +937,21 @@ When community enjoyment becomes consistently problematic:
## 10. Mini-Moderation and Peer Support
### 10.1 Understanding Mini-Moderation
### 10.1. Understanding Mini-Moderation
#### 10.1.1 Definition and Scope
#### 10.1.1. Definition and Scope
"Mini-moderation" refers to activities where non-staff community members provide guidance, correction, or support to other members regarding community standards, practices, or norms. This behaviour occupies a middle ground between passive observation and formal moderation authority.
#### 10.1.2 Community Position on Mini-Moderation
#### 10.1.2. Community Position on Mini-Moderation
Our community adopts a permissive approach to mini-moderation, recognising its value in creating self-regulating, mutually supportive community environments. However, this permission comes with specific guidelines and limitations to prevent abuse or overreach.
### 10.2 Acceptable Mini-Moderation Practices
### 10.2. Acceptable Mini-Moderation Practices
#### 10.2.1 Constructive Guidance and Support
#### 10.2.1. Constructive Guidance and Support
Appropriate mini-moderation includes:
**Welcoming and Integration Support:**
- Gently guiding new members toward understanding community norms and expectations
- Gently guiding new members towards understanding community norms and expectations
- Providing helpful information about community resources, channels, or practices
- Offering assistance with platform-specific features or navigation
- Sharing educational resources about community policies or inclusive practices
@@ -968,7 +968,7 @@ Appropriate mini-moderation includes:
- Offering constructive feedback on content or communication style
- Sharing resources that help community members understand expectations
#### 10.2.2 Appropriate Communication Methods
#### 10.2.2. Appropriate Communication Methods
Effective mini-moderation employs:
**Respectful Language and Tone:**
@@ -983,9 +983,9 @@ Effective mini-moderation employs:
- Encourage questions and discussion rather than demanding compliance
- Focus on community benefit rather than personal authority
### 10.3 Prohibited Mini-Moderation Behaviours
### 10.3. Prohibited Mini-Moderation Behaviours
#### 10.3.1 Authority Misrepresentation
#### 10.3.1. Authority Misrepresentation
Community members engaged in mini-moderation must never:
**False Authority Claims:**
@@ -1000,7 +1000,7 @@ Community members engaged in mini-moderation must never:
- Claim to speak on behalf of the community leadership
- Misrepresent the scope or nature of their community role
#### 10.3.2 Harmful or Counterproductive Approaches
#### 10.3.2. Harmful or Counterproductive Approaches
Inappropriate mini-moderation includes:
**Public Confrontation and Embarrassment:**
@@ -1015,9 +1015,9 @@ Inappropriate mini-moderation includes:
- Escalating situations through argumentative or confrontational responses
- Demonstrating impatience or frustration with members who are learning
### 10.4 Effective Mini-Moderation Strategies
### 10.4. Effective Mini-Moderation Strategies
#### 10.4.1 Leading by Example
#### 10.4.1. Leading by Example
The most effective mini-moderation approach involves:
**Consistent Positive Behaviour:**
@@ -1032,7 +1032,7 @@ The most effective mini-moderation approach involves:
- Create welcoming environments for newcomers and less experienced participants
- Celebrate community successes and positive developments
#### 10.4.2 Supportive Intervention Techniques
#### 10.4.2. Supportive Intervention Techniques
When mini-moderation becomes necessary:
**Private Communication:**
@@ -1043,13 +1043,13 @@ When mini-moderation becomes necessary:
**Indirect Redirection:**
- Model appropriate behaviour without explicitly correcting others
- Redirect conversations toward constructive directions through your own contributions
- Redirect conversations towards constructive directions through your own contributions
- Ask clarifying questions that encourage reflection rather than making direct accusations
- Provide positive alternatives that naturally guide discussions in better directions
### 10.5 Escalation and Staff Involvement
### 10.5. Escalation and Staff Involvement
#### 10.5.1 Recognising Limits of Mini-Moderation
#### 10.5.1. Recognising Limits of Mini-Moderation
Community members should recognise when situations require professional staff intervention:
**Escalation Triggers:**
@@ -1059,7 +1059,7 @@ Community members should recognise when situations require professional staff in
- Complex conflicts that require formal mediation or resolution processes
- Issues beyond the scope of peer education and support
#### 10.5.2 Appropriate Escalation Procedures
#### 10.5.2. Appropriate Escalation Procedures
When mini-moderation reaches its limits:
**Discontinue Personal Intervention:**
@@ -1074,9 +1074,9 @@ When mini-moderation reaches its limits:
- Offer to provide additional information or context if staff request it
- Trust staff to handle situations according to their training and authority
### 10.6 Community Benefits and Culture Building
### 10.6. Community Benefits and Culture Building
#### 10.6.1 Positive Impact of Effective Mini-Moderation
#### 10.6.1. Positive Impact of Effective Mini-Moderation
When conducted appropriately, mini-moderation contributes to:
**Self-Regulating Community Culture:**
@@ -1091,7 +1091,7 @@ When conducted appropriately, mini-moderation contributes to:
- Continuous improvement in community knowledge and practices
- Stronger relationships between community members
#### 10.6.2 Cultural Reinforcement and Development
#### 10.6.2. Cultural Reinforcement and Development
Effective mini-moderation helps establish:
- **Norm Reinforcement**: Clear, consistent messaging about community expectations
- **Inclusive Practices**: Support for members learning to participate effectively
@@ -1108,4 +1108,4 @@ Our community's strength lies not in rigid rule enforcement, but in the voluntar
---
*These Community Guidelines were last updated on 15 September 2025 and represent the collective wisdom and values of our community. For questions about these guidelines or suggestions for improvement, please contact our community staff through the designated channels outlined in our Community Code of Conduct.*
*These Community Guidelines represent the collective wisdom and values of our community. For questions about these guidelines or suggestions for improvement, please contact our community staff through the designated channels outlined in our Community Code of Conduct.*
+82 -104
View File
@@ -4,15 +4,15 @@ title: Community Leadership and Governance Policy
## 1. Foundation and Purpose
### 1.1 Introduction
### 1.1. Introduction
This Community Leadership and Governance Policy (hereinafter referred to as "the Policy") establishes the framework for transparent, accountable, and effective leadership within our community ecosystem. This Policy ensures that community leadership operates with integrity, serves the best interests of all community members, and maintains the highest standards of conduct whilst fostering a safe, welcoming, and inclusive environment.
### 1.2 Core Principles
### 1.2. Core Principles
Our community leadership operates on the following foundational principles:
**(a)** **Servant Leadership**: Leaders serve the community rather than wielding authority for personal benefit;
**(a)** **Servant Leadership**: Leaders serve the community rather than wielding authority for personal benefit. For a comprehensive explanation of servant leadership principles and how they apply to all staff roles, see [Staff Role Definition and Principles](/staff/handbook#22-staff-role-definition-and-principles) in the Staff Handbook;
**(b)** **Transparency**: Decision-making processes and rationales are clearly communicated to the community;
@@ -22,30 +22,30 @@ Our community leadership operates on the following foundational principles:
**(e)** **Collaborative Governance**: Community input is actively sought and valued in decision-making processes.
### 1.3 Legal Framework Integration
### 1.3. Legal Framework Integration
This Policy operates within our comprehensive legal and policy framework, including our Terms of Service, Community Code of Conduct, Content and Moderation Policy, and Limitation of Liability and Indemnification Policy, all of which are incorporated herein by reference.
## 2. Leadership Structure and Roles
### 2.1 Leadership Hierarchy
### 2.1. Leadership Hierarchy
Our community leadership operates through a structured hierarchy designed to ensure effective governance whilst maintaining accessibility and accountability:
#### 2.1.1 Executive Leadership
#### 2.1.1. Executive Leadership
- **Community Director**: Overall strategic direction and final decision-making authority
- **Deputy Director**: Support for Community Director and succession planning
- **Legal and Policy Advisor**: Oversight of legal compliance and policy development
#### 2.1.2 Operational Leadership
#### 2.1.2. Operational Leadership
- **Head Moderator**: Oversight of moderation team and enforcement consistency
- **Community Managers**: Day-to-day community operations and member engagement
- **Technical Manager**: Day-to-day technical operations, code reviews, and technical contributor coordination
- **Technical Administrators**: Platform infrastructure management and strategic technical planning
#### 2.1.3 Specialist Leadership
#### 2.1.3. Specialist Leadership
- **Accessibility Coordinator**: Ensuring inclusive design and accommodation
- **Crisis Response Coordinator**: Mental health and emergency situation management
@@ -56,18 +56,16 @@ Our community leadership operates through a structured hierarchy designed to ens
- **Support Team Leader**: Oversight and coordination of community support operations
- **Community Growth Specialist**: Member recruitment, retention, and community expansion initiatives
#### 2.1.4 Volunteer Leadership
#### 2.1.4. Volunteer Leadership
- **Moderators**: Front-line community moderation and member support
- **Mentors**: New member guidance and peer support programmes
- **Subject Matter Experts**: Specialized knowledge and educational support
- **Subject Matter Experts**: Specialised knowledge and educational support
- **Technical Contributors**: Development support and technical expertise for community platforms and tools
- **Guild Wars 2 Leader**: Strategic leadership and management of Guild Wars 2 community activities
- **Guild Wars 2 Officer**: Support for Guild Wars 2 operations and member coordination
- **Quality Assurance Coordinator**: Testing and quality control for community platforms and resources
- **Data and Analytics Coordinator**: Community metrics analysis and reporting
#### 2.1.5 Support Team
#### 2.1.5. Support Team
- **Community Support Specialists**: General member assistance and issue resolution
- **Technical Support Representatives**: Platform and technical assistance for community members
@@ -75,9 +73,9 @@ Our community leadership operates through a structured hierarchy designed to ens
- **Member Relations Specialists**: Member onboarding and relationship management
- **Documentation Support Technicians**: Maintenance and improvement of community documentation
### 2.2 Role Responsibilities
### 2.2. Role Responsibilities
#### 2.2.1 Executive Leadership Responsibilities
#### 2.2.1. Executive Leadership Responsibilities
**Community Director:**
@@ -102,7 +100,7 @@ Our community leadership operates through a structured hierarchy designed to ens
- Coordinate with external legal counsel when necessary
- Maintain awareness of relevant laws and regulations affecting community operations
#### 2.2.2 Operational Leadership Responsibilities
#### 2.2.2. Operational Leadership Responsibilities
**Head Moderator:**
@@ -135,10 +133,10 @@ Our community leadership operates through a structured hierarchy designed to ens
- Implement security protocols and system monitoring
- Coordinate strategic technical planning and architecture decisions
- Oversee system upgrades, maintenance, and disaster recovery procedures
- Collaborate with Technical Manager on technical project prioritization
- Ensure platform scalability and performance optimization
- Collaborate with Technical Manager on technical project prioritisation
- Ensure platform scalability and performance optimisation
#### 2.2.3 Specialist Leadership Responsibilities
#### 2.2.3. Specialist Leadership Responsibilities
**Accessibility Coordinator:**
@@ -159,7 +157,7 @@ Our community leadership operates through a structured hierarchy designed to ens
**Events Coordinator:**
- Plan and organize community activities, events, and engagement programmes
- Plan and organise community activities, events, and engagement programmes
- Coordinate with other leadership roles to ensure event alignment with community goals
- Manage event logistics, scheduling, and resource allocation
- Develop community engagement strategies to increase participation
@@ -179,18 +177,18 @@ Our community leadership operates through a structured hierarchy designed to ens
**Training and Development Coordinator:**
- Develop and maintain comprehensive training curricula for all leadership roles
- Coordinate onboarding programs for new leaders and community members
- Manage mentorship program structure, matching, and effectiveness monitoring
- Coordinate onboarding programmes for new leaders and community members
- Manage mentorship programme structure, matching, and effectiveness monitoring
- Oversee professional development opportunities and educational resources
- Ensure consistent training standards and quality across all programs
- Ensure consistent training standards and quality across all programmes
- Coordinate with external training providers and professional development opportunities
- Evaluate training effectiveness and implement continuous improvements
**Partnership and Collaboration Coordinator:**
- Manage relationships with other communities, organizations, and external partners
- Manage relationships with other communities, organisations, and external partners
- Coordinate collaborative projects and cross-community initiatives
- Oversee guest speaker programs and external educational opportunities
- Oversee guest speaker programmes and external educational opportunities
- Manage sponsorship agreements and partnership development
- Facilitate inter-community events and collaborative activities
- Develop and maintain partnership agreements and memoranda of understanding
@@ -205,7 +203,7 @@ Our community leadership operates through a structured hierarchy designed to ens
- Handle escalated support issues and complex member concerns requiring leadership intervention
- Coordinate support team scheduling and coverage to ensure consistent availability
- Collaborate with other leadership roles to identify support needs and resource requirements
- Implement support team improvements and process optimizations based on feedback and analytics
- Implement support team improvements and process optimisations based on feedback and analytics
- Serve as primary liaison between support team and executive/operational leadership
- Manage support team knowledge base and ensure consistent information sharing
@@ -215,15 +213,15 @@ Our community leadership operates through a structured hierarchy designed to ens
- Analyse community growth metrics, member acquisition trends, and retention patterns
- Design and execute outreach campaigns to attract new members from target demographics
- Coordinate with Communications and Outreach Coordinator on growth-focused messaging and content
- Implement member retention programs and initiatives to reduce community churn
- Implement member retention programmes and initiatives to reduce community churn
- Identify and develop community growth opportunities through partnerships and collaborations
- Monitor and optimize member onboarding processes to improve new member experience and retention
- Monitor and optimise member onboarding processes to improve new member experience and retention
- Conduct market research and competitive analysis to identify growth opportunities
- Create and manage referral programs and member advocacy initiatives
- Create and manage referral programmes and member advocacy initiatives
- Track and report on key growth metrics including member acquisition, retention, and lifetime value
- Collaborate with Events Coordinator to design growth-focused community activities and engagement programs
- Collaborate with Events Coordinator to design growth-focused community activities and engagement programmes
#### 2.2.4 Volunteer Leadership Responsibilities
#### 2.2.4. Volunteer Leadership Responsibilities
**Moderators:**
@@ -245,12 +243,12 @@ Our community leadership operates through a structured hierarchy designed to ens
**Subject Matter Experts:**
- Provide specialized knowledge and expertise in designated areas
- Provide specialised knowledge and expertise in designated areas
- Create educational content and resources for community members
- Offer technical support and guidance within their areas of expertise
- Lead workshops, discussions, and educational initiatives
- Serve as consultants to leadership team on specialized topics
- Mentor other community members in developing specialized skills
- Serve as consultants to leadership team on specialised topics
- Mentor other community members in developing specialised skills
**Technical Contributors:**
@@ -261,26 +259,6 @@ Our community leadership operates through a structured hierarchy designed to ens
- Support technical troubleshooting and issue resolution
- Collaborate with Technical Administrators and Technical Manager on project priorities
**Guild Wars 2 Leader:**
- Provide strategic leadership and direction for Guild Wars 2 community activities
- Coordinate guild operations, events, and member engagement within the game
- Oversee Guild Wars 2 Officer team and delegate responsibilities effectively
- Represent the community in inter-guild relationships and alliances
- Develop and implement Guild Wars 2-specific community policies and guidelines
- Plan and execute large-scale guild events, missions, and competitive activities
- Monitor guild health, member satisfaction, and retention within the game environment
**Guild Wars 2 Officer:**
- Support Guild Wars 2 Leader in daily guild operations and member coordination
- Assist new Guild Wars 2 members with game mechanics, guild procedures, and integration
- Organize and lead smaller-scale guild activities, missions, and training sessions
- Moderate Guild Wars 2-specific communication channels and resolve member conflicts
- Recruit new members and conduct guild recruitment activities
- Maintain guild resources, including banks, halls, and shared assets
- Coordinate with other officers to ensure consistent coverage and support for guild members
**Quality Assurance Coordinator:**
- Test community platforms and tools for bugs, usability issues, and performance problems
@@ -293,15 +271,15 @@ Our community leadership operates through a structured hierarchy designed to ens
**Data and Analytics Coordinator:**
- Collect and analyze community engagement metrics and participation data
- Collect and analyse community engagement metrics and participation data
- Prepare regular reports on community health, growth trends, and member satisfaction
- Manage community surveys and feedback analysis for leadership decision-making
- Support leadership team with data insights and trend identification
- Maintain privacy-compliant data collection and analysis practices
- Develop dashboards and visualization tools for community metrics monitoring
- Develop dashboards and visualisation tools for community metrics monitoring
- Coordinate with other leadership roles to identify key performance indicators and success metrics
#### 2.2.5 Support Team Responsibilities
#### 2.2.5. Support Team Responsibilities
**Community Support Specialists:**
@@ -327,7 +305,7 @@ Our community leadership operates through a structured hierarchy designed to ens
- Assist community members with content creation, formatting, and publishing
- Provide guidance on community content guidelines and best practices
- Help members optimize their contributions for accessibility and engagement
- Help members optimise their contributions for accessibility and engagement
- Coordinate with Subject Matter Experts to ensure content accuracy and quality
- Manage content creation resources, templates, and style guides
- Support community content initiatives and collaborative projects
@@ -337,11 +315,11 @@ Our community leadership operates through a structured hierarchy designed to ens
- Facilitate new member onboarding and integration into community culture
- Serve as primary point of contact for member concerns and relationship issues
- Coordinate welcome programs and new member orientation activities
- Coordinate welcome programmes and new member orientation activities
- Monitor member satisfaction and engagement levels across the community
- Mediate minor conflicts and facilitate communication between members
- Collect member feedback and suggestions for community improvements
- Maintain positive relationships and foster sense of belonging among community members
- Maintain positive relationships and foster sense of belonging amongst community members
**Documentation Support Technicians:**
@@ -355,11 +333,11 @@ Our community leadership operates through a structured hierarchy designed to ens
## 3. Selection and Appointment Processes
### 3.1 Leadership Selection Criteria
### 3.1. Leadership Selection Criteria
All community leaders must demonstrate:
#### 3.1.1 Essential Qualifications
#### 3.1.1. Essential Qualifications
- **Community Standing**: Minimum six (6) months of positive community participation
- **Conduct Record**: Clean disciplinary record with no serious violations
@@ -367,21 +345,21 @@ All community leaders must demonstrate:
- **Commitment Availability**: Adequate time and energy to fulfil role responsibilities
- **Values Alignment**: Strong commitment to community principles and inclusive practices
#### 3.1.2 Preferred Qualifications
#### 3.1.2. Preferred Qualifications
- **Prior Leadership Experience**: Previous volunteer or professional leadership roles
- **Specialised Knowledge**: Relevant expertise in moderation, community management, or technical areas
- **Mentorship Capability**: Demonstrated ability to guide and support other community members
- **Crisis Management Experience**: Skills in conflict resolution and emergency response
### 3.2 Selection Processes
### 3.2. Selection Processes
#### 3.2.1 Application and Nomination Process
#### 3.2.1. Application and Nomination Process
**Open Applications:**
- Leadership positions are posted publicly with clear role descriptions and requirements
- Applications are evergreen and may be found at https://forms.nhcarrigan.com/form/PEpB3gA79gxP8wmfEf4zou96opkpUTjssTcaeYjhoi8
- Applications are evergreen and may be found at https://forms.nhcarrigan.com/o/docs/forms/mCxDu3snk9TzFiDjrT4Vc8/4
- Community members may self-nominate or nominate others with consent
- Applications include personal statements, relevant experience, and community references
@@ -392,13 +370,13 @@ All community leaders must demonstrate:
- Existing leadership team provides assessments of candidate suitability
- Transparent scoring rubrics ensure fair and consistent evaluation
#### 3.2.2 Interview and Assessment Process
#### 3.2.2. Interview and Assessment Process
**Structured Interviews:**
- All candidates participate in structured interviews with existing leadership
- Scenario-based questions assess decision-making capabilities and values alignment
- Technical competency assessments for roles requiring specialized skills
- Technical competency assessments for roles requiring specialised skills
- Cultural fit evaluation ensures compatibility with community values and practices
**Community Engagement Assessment:**
@@ -408,9 +386,9 @@ All community leaders must demonstrate:
- Ethical decision-making assessments ensure integrity and sound judgement
- Commitment verification confirms availability and dedication to the role
### 3.3 Appointment and Transition
### 3.3. Appointment and Transition
#### 3.3.1 Final Selection and Announcement
#### 3.3.1. Final Selection and Announcement
**Decision Making:**
@@ -428,9 +406,9 @@ All community leaders must demonstrate:
## 4. Leadership Accountability and Oversight
### 4.1 Performance Standards and Expectations
### 4.1. Performance Standards and Expectations
#### 4.1.1 Ongoing Performance Metrics
#### 4.1.1. Ongoing Performance Metrics
All community leaders are evaluated on:
@@ -448,7 +426,7 @@ All community leaders are evaluated on:
- Professional development and skills enhancement
- Collaboration effectiveness with other leadership team members
#### 4.1.2 Regular Review Processes
#### 4.1.2. Regular Review Processes
**Quarterly Performance Reviews:**
@@ -464,9 +442,9 @@ All community leaders are evaluated on:
- Leadership development planning and career progression discussions
- Reappointment decisions based on performance and community needs
### 4.2 Community Feedback and Input Mechanisms
### 4.2. Community Feedback and Input Mechanisms
#### 4.2.1 Regular Feedback Channels
#### 4.2.1. Regular Feedback Channels
**Monthly Community Forums:**
@@ -482,7 +460,7 @@ All community leaders are evaluated on:
- Community liaison positions to facilitate communication between members and leadership
- Transparent communication about leadership decisions and their rationales
#### 4.2.2 Formal Accountability Processes
#### 4.2.2. Formal Accountability Processes
**Community Confidence Measures:**
@@ -491,9 +469,9 @@ All community leaders are evaluated on:
- Transparent reporting of community feedback themes and leadership responses
- Regular town hall meetings for community-wide discussion of governance issues
### 4.3 Leadership Standards Enforcement
### 4.3. Leadership Standards Enforcement
#### 4.3.1 Misconduct Investigation Procedures
#### 4.3.1. Misconduct Investigation Procedures
When concerns about leadership conduct arise:
@@ -511,7 +489,7 @@ When concerns about leadership conduct arise:
- Independent review panels including community member representation
- Clear standards of evidence and burden of proof requirements
#### 4.3.2 Disciplinary Measures and Consequences
#### 4.3.2. Disciplinary Measures and Consequences
**Progressive Disciplinary System:**
@@ -529,9 +507,9 @@ When concerns about leadership conduct arise:
## 5. Leadership Development and Support
### 5.1 Training and Professional Development
### 5.1. Training and Professional Development
#### 5.1.1 Mandatory Training Programs
#### 5.1.1. Mandatory Training Programs
All community leaders must complete:
@@ -551,13 +529,13 @@ All community leaders must complete:
- Technical administration and security for technical leadership
- Event planning and community engagement for activities coordinators
#### 5.1.2 Ongoing Development Opportunities
#### 5.1.2. Ongoing Development Opportunities
**Skill Enhancement Programs:**
- Leadership coaching and mentorship opportunities
- External training and conference attendance support
- Cross-functional experience and role shadowing programs
- Cross-functional experience and role shadowing programmes
- Community management and governance best practices workshops
**Personal Development Support:**
@@ -567,15 +545,15 @@ All community leaders must complete:
- Cultural competency and diversity, equity, inclusion education
- Technology skills and platform administration training
### 5.2 Leadership Support Systems
### 5.2. Leadership Support Systems
#### 5.2.1 Peer Support Networks
#### 5.2.1. Peer Support Networks
**Leadership Team Collaboration:**
- Regular leadership team meetings for coordination and mutual support
- Peer mentoring partnerships for experience sharing and guidance
- Cross-training programs to ensure coverage and capability development
- Cross-training programmes to ensure coverage and capability development
- Team-building activities and relationship-strengthening initiatives
**External Professional Networks:**
@@ -585,14 +563,14 @@ All community leaders must complete:
- Industry conference attendance and professional development events
- Access to external coaching and consultation resources
#### 5.2.2 Wellness and Burnout Prevention
#### 5.2.2. Wellness and Burnout Prevention
**Workload Management:**
- Clear role boundaries and expectation setting to prevent overextension
- Regular workload assessment and redistribution when necessary
- Mandatory rest periods and vacation time for volunteer leaders
- Recognition and appreciation programs to maintain motivation and satisfaction
- Recognition and appreciation programmes to maintain motivation and satisfaction
**Mental Health Support:**
@@ -602,15 +580,15 @@ All community leaders must complete:
## 6. Succession Planning and Continuity
### 6.1 Leadership Succession Framework
### 6.1. Leadership Succession Framework
#### 6.1.1 Planned Succession Processes
#### 6.1.1. Planned Succession Processes
**Leadership Pipeline Development:**
- Identification and mentorship of potential future leaders
- Progressive responsibility assignments to prepare succession candidates
- Cross-training programs to ensure multiple qualified candidates for key roles
- Cross-training programmes to ensure multiple qualified candidates for key roles
- Regular succession planning reviews and candidate development assessment
**Transition Management:**
@@ -620,7 +598,7 @@ All community leaders must complete:
- Interim leadership arrangements during transition periods
- Community communication strategies for leadership changes
#### 6.1.2 Emergency Succession Procedures
#### 6.1.2. Emergency Succession Procedures
**Crisis Leadership Arrangements:**
@@ -629,9 +607,9 @@ All community leaders must complete:
- Rapid response team formation for crisis management
- Community communication protocols for emergency leadership changes
### 6.2 Knowledge Management and Institutional Memory
### 6.2. Knowledge Management and Institutional Memory
#### 6.2.1 Documentation and Record-Keeping
#### 6.2.1. Documentation and Record-Keeping
**Leadership Knowledge Base:**
@@ -649,9 +627,9 @@ All community leaders must complete:
## 7. Community Transparency and Communication
### 7.1 Transparency Requirements
### 7.1. Transparency Requirements
#### 7.1.1 Public Reporting and Disclosure
#### 7.1.1. Public Reporting and Disclosure
**Regular Community Updates:**
@@ -667,7 +645,7 @@ All community leaders must complete:
- Open meeting minutes and records for community leadership discussions
- Clear communication of appeals processes and outcomes
#### 7.1.2 Community Engagement and Input
#### 7.1.2. Community Engagement and Input
**Participatory Governance:**
@@ -678,9 +656,9 @@ All community leaders must complete:
## 8. Policy Implementation and Review
### 8.2 Regular Review and Updates
### 8.2. Regular Review and Updates
#### 8.2.1 Policy Review Schedule
#### 8.2.1. Policy Review Schedule
**Annual Reviews:**
@@ -696,9 +674,9 @@ All community leaders must complete:
- Regular benchmarking against community management best practices
- Ongoing legal and regulatory compliance verification
### 8.2 Amendment Procedures
### 8.2. Amendment Procedures
#### 8.2.1 Policy Change Process
#### 8.2.1. Policy Change Process
**Community Input Requirements:**
@@ -709,9 +687,9 @@ All community leaders must complete:
**Implementation and Communication:**
- Clear communication of policy changes and effective dates
- Clear communication of policy changes
- Training updates for all leadership team members
- Community education and awareness programs for new requirements
- Community education and awareness programmes for new requirements
- Regular monitoring of policy effectiveness and community impact
---
@@ -724,4 +702,4 @@ This Policy represents our collective commitment to maintaining excellent leader
---
_This Community Leadership and Governance Policy was created on 15 September 2025. For questions about this Policy or to provide feedback on leadership performance, please contact our Community Leaders through the designated channels outlined in our Community Code of Conduct._
_This Community Leadership and Governance Policy provides comprehensive information about leadership and governance. For questions about this Policy or to provide feedback on leadership performance, please contact our Community Leaders through the designated channels outlined in our Community Code of Conduct._
+96 -83
View File
@@ -4,11 +4,11 @@ title: Community Recognition and Appreciation Policy
## 1. Foundation and Philosophy
### 1.1 Introduction and Purpose
### 1.1. Introduction and Purpose
This Community Recognition and Appreciation Policy (hereinafter referred to as "the Policy") establishes our comprehensive framework for acknowledging, celebrating, and appreciating the diverse contributions of community members. This Policy recognises that fostering a truly welcoming and inclusive environment requires intentional appreciation of member efforts, celebration of diverse talents and contributions, and creation of meaningful recognition systems that motivate continued positive engagement.
### 1.2 Core Principles
### 1.2. Core Principles
Our recognition and appreciation approach is founded upon:
@@ -20,11 +20,11 @@ Our recognition and appreciation approach is founded upon:
**(d)** **Cultural Sensitivity**: Recognition practices that respect diverse cultural approaches to appreciation and celebration;
**(e)** **Sustainable Systems**: Long-term recognition programs that maintain motivation and community engagement;
**(e)** **Sustainable Systems**: Long-term recognition programmes that maintain motivation and community engagement;
**(f)** **Community-Driven Values**: Recognition that reinforces positive community culture and shared values.
### 1.3 Recognition Philosophy
### 1.3. Recognition Philosophy
We believe that every community member contributes value in unique ways, and our recognition systems are designed to:
- Acknowledge contributions both large and small
@@ -33,15 +33,15 @@ We believe that every community member contributes value in unique ways, and our
- Build community connections and mutual appreciation
- Encourage continued positive contribution and community involvement
### 1.4 Legal Framework Integration
### 1.4. Legal Framework Integration
This Policy operates within our comprehensive legal and policy framework, including our Terms of Service, Privacy Policy, Community Code of Conduct, and Community Leadership and Governance Policy, all of which are incorporated herein by reference.
## 2. Recognition Categories and Programs
### 2.1 Regular Recognition Programs
### 2.1. Regular Recognition Programmes
#### 2.1.1 Daily Appreciation Initiatives
#### 2.1.1. Daily Appreciation Initiatives
**Community Gratitude Practices:**
- Daily appreciation messages highlighting specific member contributions
@@ -55,23 +55,23 @@ This Policy operates within our comprehensive legal and policy framework, includ
- Recognition of members who provide assistance, answer questions, or offer guidance
- Acknowledgement of members who demonstrate inclusive and welcoming behaviour
#### 2.1.2 Monthly Recognition Programs
#### 2.1.2. Recognition Programmes
**Member of the Month Awards:**
**Member Recognition Awards:**
- Recognition for outstanding community contribution and positive impact
- Rotating focus on different types of contributions (helping others, creative contributions, community building)
- Focus on different types of contributions (helping others, creative contributions, community building)
- Nominated by community members and selected by leadership team
- Featured spotlight with member interview and contribution celebration
**Contribution Category Awards:**
- **Helper of the Month**: Members who consistently provide support and assistance to others
- **Mentor of the Month**: Members who guide and support newcomers or less experienced community members
- **Innovator of the Month**: Members who bring creative ideas, solutions, or new perspectives
- **Helper Award**: Members who consistently provide support and assistance to others
- **Mentor Award**: Members who guide and support newcomers or less experienced community members
- **Innovator Award**: Members who bring creative ideas, solutions, or new perspectives
- **Inclusivity Champion**: Members who actively promote inclusive practices and welcoming environments
### 2.2 Special Recognition Programs
### 2.2. Special Recognition Programmes
#### 2.2.1 Annual Achievement Awards
#### 2.2.1. Achievement Awards
**Excellence in Community Building:**
- Outstanding Community Leader Award for members who demonstrate exceptional leadership qualities
@@ -85,7 +85,7 @@ This Policy operates within our comprehensive legal and policy framework, includ
- **Behind-the-Scenes Hero**: Members who contribute significantly in less visible but essential ways
- **Community Bridge Builder**: Members who facilitate connections and resolve conflicts constructively
#### 2.2.2 Milestone Celebration Programs
#### 2.2.2. Milestone Celebration Programs
**Participation Milestone Recognition:**
- Anniversary celebrations for community membership milestones (1 year, 2 years, 5 years)
@@ -101,15 +101,15 @@ This Policy operates within our comprehensive legal and policy framework, includ
## 3. Nomination and Selection Processes
:::tip
Nomination form can be found at https://forms.nhcarrigan.com/form/wksk-NuR3HBuovSixbXFEnkYq-3Gp-bZMH-n__PNRKw
Nomination form can be found at https://forms.nhcarrigan.com/o/docs/forms/to2oFocVgALyr23EC84xM9/4
:::
### 3.1 Community-Driven Nomination Systems
### 3.1. Community-Driven Nomination Systems
#### 3.1.1 Peer Nomination Processes
#### 3.1.1. Peer Nomination Processes
**Open Nomination Periods:**
- Monthly nomination windows allowing any community member to nominate others
**Open Nomination Process:**
- Continuous nomination system allowing any community member to nominate others at any time
- Anonymous nomination options to encourage participation without social pressure
- Self-nomination opportunities for members to highlight their own contributions
- Group nomination options for collaborative projects and team achievements
@@ -120,7 +120,7 @@ Nomination form can be found at https://forms.nhcarrigan.com/form/wksk-NuR3HBuov
- Focus on effort, growth, and positive community impact rather than just results
- Consideration of diverse contribution types and varying participation styles
#### 3.1.2 Selection and Review Processes
#### 3.1.2. Selection and Review Processes
**Diverse Selection Committees:**
- Rotating committee membership ensuring diverse perspectives and fair evaluation
@@ -132,11 +132,12 @@ Nomination form can be found at https://forms.nhcarrigan.com/form/wksk-NuR3HBuov
- Clear evaluation criteria shared publicly and applied consistently
- Anonymous evaluation processes to reduce bias and ensure fair consideration
- Multiple reviewer assessment system for important recognition decisions
- Continuous review of nominations by selection committee with awards issued upon approval
- Regular review of selection processes to ensure equity and effectiveness
### 3.2 Recognition Frequency and Distribution
### 3.2. Recognition Frequency and Distribution
#### 3.2.1 Balanced Recognition Distribution
#### 3.2.1. Balanced Recognition Distribution
**Inclusive Recognition Practices:**
- Ensure recognition reaches members from all community areas and participation styles
@@ -152,9 +153,9 @@ Nomination form can be found at https://forms.nhcarrigan.com/form/wksk-NuR3HBuov
## 4. Types of Contributions Valued
### 4.1 Direct Community Contributions
### 4.1. Direct Community Contributions
#### 4.1.1 Active Participation and Engagement
#### 4.1.1. Active Participation and Engagement
**Discussion and Content Contributions:**
- Thoughtful questions that promote community learning and engagement
@@ -168,7 +169,7 @@ Nomination form can be found at https://forms.nhcarrigan.com/form/wksk-NuR3HBuov
- Mentoring and guidance for less experienced community members
- Conflict resolution assistance and constructive mediation efforts
#### 4.1.2 Leadership and Initiative
#### 4.1.2. Leadership and Initiative
**Volunteer Leadership Roles:**
- Moderation activities and community standards enforcement
@@ -178,13 +179,13 @@ Nomination form can be found at https://forms.nhcarrigan.com/form/wksk-NuR3HBuov
**Innovation and Problem-Solving:**
- Creative solutions to community challenges and improvement opportunities
- New program or initiative development and implementation
- New programme or initiative development and implementation
- Technology improvements and platform enhancement contributions
- Process improvements that enhance community experience and accessibility
### 4.2 Indirect and Supporting Contributions
### 4.2. Indirect and Supporting Contributions
#### 4.2.1 Community Culture Building
#### 4.2.1. Community Culture Building
**Positive Environment Creation:**
- Consistent demonstration of inclusive and welcoming behaviour
@@ -193,12 +194,12 @@ Nomination form can be found at https://forms.nhcarrigan.com/form/wksk-NuR3HBuov
- Celebration of other members' achievements and positive contribution acknowledgement
**Values Demonstration and Modeling:**
- Exemplary adherence to community standards and positive behaviour modeling
- Exemplary adherence to community standards and positive behaviour modelling
- Advocacy for inclusive practices and accessibility improvements
- Support for marginalised community members and inclusive representation
- Constructive engagement with community policies and improvement processes
#### 4.2.2 Behind-the-Scenes Contributions
#### 4.2.2. Behind-the-Scenes Contributions
**Administrative and Organisational Support:**
- Documentation improvement and resource organisation activities
@@ -214,14 +215,14 @@ Nomination form can be found at https://forms.nhcarrigan.com/form/wksk-NuR3HBuov
## 5. Recognition Methods and Formats
### 5.1 Public Recognition and Celebration
### 5.1. Public Recognition and Celebration
#### 5.1.1 Community Announcements and Features
#### 5.1.1. Community Announcements and Features
**Regular Recognition Announcements:**
- Weekly appreciation announcements highlighting specific member contributions
- Monthly feature articles celebrating member achievements and community impact
- Annual recognition ceremony events with community-wide celebration
- Regular appreciation announcements highlighting specific member contributions
- Feature articles celebrating member achievements and community impact
- Recognition ceremony events with community-wide celebration
- Special milestone announcements for significant member achievements
**Profile and Achievement Highlighting:**
@@ -230,11 +231,11 @@ Nomination form can be found at https://forms.nhcarrigan.com/form/wksk-NuR3HBuov
- "Wall of Fame" or recognition gallery featuring outstanding contributors
- Newsletter features and external communication highlighting member achievements
#### 5.1.2 Community Events and Celebrations
#### 5.1.2. Community Events and Celebrations
**Recognition Ceremony Events:**
- Annual awards ceremony with community-wide attendance and celebration
- Monthly appreciation events featuring award presentations and community gathering
- Awards ceremonies with community-wide attendance and celebration
- Appreciation events featuring award presentations and community gathering
- Special milestone celebration events for significant community achievements
- Recognition reception events providing networking and appreciation opportunities
@@ -244,14 +245,14 @@ Nomination form can be found at https://forms.nhcarrigan.com/form/wksk-NuR3HBuov
- Peer appreciation sessions where members can acknowledge each other's contributions
- Storytelling events where members share impact stories and appreciation experiences
### 5.2 Private and Personal Recognition
### 5.2. Private and Personal Recognition
#### 5.2.1 Individual Appreciation Communications
#### 5.2.1. Individual Appreciation Communications
**Personal Recognition Messages:**
- Direct appreciation messages from community leadership acknowledging specific contributions
- Personalized thank-you notes for exceptional community service and positive impact
- One-on-one appreciation conversations recognizing member efforts and growth
- One-on-one appreciation conversations recognising member efforts and growth
- Private acknowledgement of sensitive contributions that require confidential appreciation
**Tailored Recognition Approaches:**
@@ -262,9 +263,9 @@ Nomination form can be found at https://forms.nhcarrigan.com/form/wksk-NuR3HBuov
## 6. Accessibility and Inclusion in Recognition
### 6.1 Universal Design Recognition Systems
### 6.1. Universal Design Recognition Systems
#### 6.1.1 Accessible Recognition Participation
#### 6.1.1. Accessible Recognition Participation
**Inclusive Nomination Processes:**
- Multiple nomination methods accommodating different communication preferences and abilities
@@ -278,7 +279,7 @@ Nomination form can be found at https://forms.nhcarrigan.com/form/wksk-NuR3HBuov
- Clear communication about accessibility features and accommodation availability
- Alternative participation methods for members unable to attend live recognition events
#### 6.1.2 Diverse Recognition Styles
#### 6.1.2. Diverse Recognition Styles
**Cultural Sensitivity in Recognition:**
- Recognition practices that respect diverse cultural approaches to appreciation and celebration
@@ -292,9 +293,9 @@ Nomination form can be found at https://forms.nhcarrigan.com/form/wksk-NuR3HBuov
- Clear communication about recognition expectations and optional participation levels
- Flexible recognition formats that allow members to engage in ways that work best for them
### 6.2 Equity in Recognition Distribution
### 6.2. Equity in Recognition Distribution
#### 6.2.1 Bias Awareness and Prevention
#### 6.2.1. Bias Awareness and Prevention
**Systematic Bias Prevention:**
- Regular analysis of recognition distribution patterns to identify and address potential bias
@@ -308,7 +309,13 @@ Nomination form can be found at https://forms.nhcarrigan.com/form/wksk-NuR3HBuov
- Recognition of contributions that may be less visible but equally valuable to community health
- Consideration of different life circumstances and availability levels in recognition evaluation
#### 6.2.2 Representative Recognition Outcomes
#### 6.2.2. Representative Recognition Outcomes
:::tip[Heads Up!]{icon=pen}
The policy or policies in this section are still a work in progress. We have not yet implemented the necessary infrastructure to comply with this section.
We are working very hard to get them in place as soon as possible. If you would like to help, consider [applying to join our team!](https://forms.nhcarrigan.com/o/docs/forms/mCxDu3snk9TzFiDjrT4Vc8/4)
:::
**Demographic Equity Monitoring:**
- Regular assessment of recognition distribution across different community demographic groups
@@ -318,23 +325,23 @@ Nomination form can be found at https://forms.nhcarrigan.com/form/wksk-NuR3HBuov
## 7. Volunteer Appreciation and Support
### 7.1 Leadership and Staff Recognition
### 7.1. Leadership and Staff Recognition
#### 7.1.1 Volunteer Appreciation Programs
#### 7.1.1. Volunteer Appreciation Programs
**Regular Volunteer Recognition:**
- Monthly volunteer appreciation events with special recognition for leadership contributions
- Annual volunteer appreciation celebrations acknowledging the significant time and effort invested
- Volunteer appreciation events with special recognition for leadership contributions
- Volunteer appreciation celebrations acknowledging the significant time and effort invested
- Volunteer milestone recognition for length of service and depth of contribution
- Public acknowledgement of volunteer efforts and their positive impact on community experience
**Professional Development and Growth Support:**
- Training and skill development opportunities for volunteers as appreciation for their service
- Leadership development programs and advancement opportunities within community structure
- Leadership development programmes and advancement opportunities within community structure
- Professional reference and recommendation support for volunteers seeking career opportunities
- Networking opportunities and community connections that benefit volunteer development
#### 7.1.2 Volunteer Wellness and Burnout Prevention
#### 7.1.2. Volunteer Wellness and Burnout Prevention
**Volunteer Support Systems:**
- Regular check-ins with volunteers to assess satisfaction, challenges, and support needs
@@ -350,25 +357,25 @@ Nomination form can be found at https://forms.nhcarrigan.com/form/wksk-NuR3HBuov
## 8. Community Feedback and Recognition Evolution
### 8.1 Community Input on Recognition Programs
### 8.1. Community Input on Recognition Programmes
#### 8.1.1 Regular Feedback Collection
#### 8.1.1. Regular Feedback Collection
**Recognition Program Evaluation:**
- Annual surveys collecting community feedback on recognition program effectiveness and satisfaction
- Focus groups with community members who have received recognition to assess program impact
**Recognition Programme Evaluation:**
- Annual surveys collecting community feedback on recognition programme effectiveness and satisfaction
- Focus groups with community members who have received recognition to assess programme impact
- Input collection from community members who have not received recognition to identify barriers and improvements
- Regular assessment of recognition program accessibility and inclusive representation
- Regular assessment of recognition programme accessibility and inclusive representation
**Continuous Improvement Integration:**
- Community suggestion processes for recognition program enhancement and new recognition categories
- Responsive program modification based on community feedback and changing needs
- Transparent communication about recognition program changes and improvement rationales
- Community involvement in recognition program planning and development processes
- Community suggestion processes for recognition programme enhancement and new recognition categories
- Responsive programme modification based on community feedback and changing needs
- Transparent communication about recognition programme changes and improvement rationales
- Community involvement in recognition programme planning and development processes
### 8.2 Recognition Program Evolution and Innovation
### 8.2. Recognition Programme Evolution and Innovation
#### 8.2.1 Adaptive Recognition Systems
#### 8.2.1. Adaptive Recognition Systems
**Emerging Recognition Opportunities:**
- Regular evaluation of community needs and new types of contributions that merit recognition
@@ -377,43 +384,49 @@ Nomination form can be found at https://forms.nhcarrigan.com/form/wksk-NuR3HBuov
- Partnership development with external organisations to expand recognition opportunities and resources
**Long-Term Program Sustainability:**
- Planning for recognition program continuity during leadership transitions and community growth
- Planning for recognition programme continuity during leadership transitions and community growth
- Resource allocation and volunteer development to support ongoing recognition activities
- Documentation and knowledge preservation to maintain recognition program quality and consistency
- Strategic planning for recognition program expansion and enhancement as community evolves
- Documentation and knowledge preservation to maintain recognition programme quality and consistency
- Strategic planning for recognition programme expansion and enhancement as community evolves
## 9. Policy Implementation and Review
### 9.1 Regular Review and Enhancement
### 9.1. Regular Review and Enhancement
#### 9.1.1 Continuous Improvement Process
#### 9.1.1. Continuous Improvement Process
:::tip[Heads Up!]{icon=pen}
The policy or policies in this section are still a work in progress. We have not yet implemented the necessary infrastructure to comply with this section.
We are working very hard to get them in place as soon as possible. If you would like to help, consider [applying to join our team!](https://forms.nhcarrigan.com/o/docs/forms/mCxDu3snk9TzFiDjrT4Vc8/4)
:::
**Monthly Program Assessment:**
- Recognition program effectiveness evaluation and participant satisfaction assessment
- Recognition programme effectiveness evaluation and participant satisfaction assessment
- Recognition distribution analysis to ensure equity and inclusive representation
- Community feedback integration and program adjustment based on member input
- Volunteer appreciation program evaluation and enhancement planning
- Community feedback integration and programme adjustment based on member input
- Volunteer appreciation programme evaluation and enhancement planning
**Annual Comprehensive Review:**
- Community-wide recognition program impact assessment and satisfaction evaluation
- Community-wide recognition programme impact assessment and satisfaction evaluation
- Recognition criteria and selection process review for effectiveness and fairness
- Accessibility and inclusion evaluation with improvement planning and implementation
- Strategic planning for recognition program expansion and innovation
- Strategic planning for recognition programme expansion and innovation
### 9.2 Community Celebration and Recognition Culture
### 9.2. Community Celebration and Recognition Culture
#### 9.2.1 Culture Development and Reinforcement
#### 9.2.1. Culture Development and Reinforcement
**Recognition Culture Promotion:**
- Community education about the importance and impact of appreciation and recognition
- Peer-to-peer recognition encouragement and facilitation
- Leadership modeling of appreciation and recognition practices
- Leadership modelling of appreciation and recognition practices
- Integration of recognition and appreciation into regular community activities and interactions
**Long-Term Community Impact:**
- Recognition program contribution to overall community health and member satisfaction
- Recognition programme contribution to overall community health and member satisfaction
- Appreciation culture development and maintenance as community grows and evolves
- Recognition program role in member retention and continued positive community engagement
- Recognition programme role in member retention and continued positive community engagement
- Community reputation enhancement through recognition of excellence and positive contribution
---
@@ -426,4 +439,4 @@ Through this Policy, we pledge to maintain systems that celebrate diverse contri
---
*This Community Recognition and Appreciation Policy was created on 15 September 2025. For questions about recognition programs or to nominate community members for appreciation, please contact our Community Leaders through the designated channels outlined in our Community Code of Conduct.*
*This Community Recognition and Appreciation Policy provides comprehensive information about recognition programmes. For questions about recognition programmes or to nominate community members for appreciation, please contact our Community Leaders through the designated channels outlined in our Community Code of Conduct.*
+160 -146
View File
@@ -2,13 +2,21 @@
title: Contributing Documentation
---
## 1. Scope and General Contribution Guidelines
**ESTABLISHING CONTRIBUTION GUIDELINES AND REQUIREMENTS FOR ALL PROJECTS**
### 1.1 Overview
## 1. INTRODUCTION AND LEGAL FRAMEWORK
This document outlines the general guidelines for contributing to our projects. It serves as a high-level framework for all contributors, whether you're submitting code, documentation, or other forms of contribution.
### 1.1. Policy Overview
### 1.2 Project-Specific Instructions
This Contributing Documentation (hereinafter referred to as "the Guidelines") establishes mandatory guidelines, procedures, and requirements for all contributions to projects maintained by our organisation. These Guidelines operate within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, Contributor Covenant, and all applicable legal protections by reference.
### 1.2. Scope and Applicability
These Guidelines apply to all forms of contribution, including but not limited to code, documentation, artwork, design, and other materials submitted to any project maintained by our organisation. All contributors, regardless of status or experience level, are required to comply with these Guidelines.
**IMPORTANT: Failure to comply with these Guidelines may result in rejection of contributions, requests for modification, or other appropriate actions as determined by project maintainers.**
### 1.3. Project-Specific Instructions
While these guidelines apply broadly, individual projects may have unique requirements or processes. Always refer to the specific project's documentation for:
@@ -20,151 +28,118 @@ While these guidelines apply broadly, individual projects may have unique requir
In case of any discrepancy between this document and project-specific guidelines, the project-specific instructions take precedence.
### 1.3 Commit Signing Requirements
### 1.4. Commit Signing Requirements
All commits must be cryptographically signed using either GPG or SSH. This requirement serves to verify the authenticity and integrity of your contributions.
- For GPG signing, ensure your GPG key is associated with your GitHub or Codeberg account.
- For SSH signing, use a key linked to your GitHub or Codeberg account.
- For GPG signing, ensure your GPG key is associated with your Github or NHCarrigan Git account.
- For SSH signing, use a key linked to your Github or NHCarrigan Git account.
By signing your commit, you are certifying that:
- The commit adheres to our [Contributor Covenant](/covenant.md)
- The commit adheres to our [Contributor Covenant](/dev/covenant)
- You have the right to submit the contribution under our project license.
- You understand and agree to our contribution terms.
### 1.4 Contributor Covenant
### 1.5. Contributor Covenant
All contributors are expected to adhere to our Contributor Covenant. The full text of the Contributor Covenant can be found in [its own document](/covenant.md).
All contributors are expected to adhere to our Contributor Covenant. The full text of the Contributor Covenant can be found in [its own document](/dev/covenant).
### 1.5 Licensing of Contributions
### 1.6. Licensing of Contributions
All contributions to our projects, including but not limited to code, documentation, artwork, and other materials, will be licensed under our global software license. By submitting a contribution, you are agreeing to license your work under the terms of this license.
All contributions to our projects, including but not limited to code, documentation, artwork, and other materials, will be licensed under our global software licence. By submitting a contribution, you are agreeing to license your work under the terms of this license.
- Our global software license: Naomi's Public License
- Our global software licence: Naomi's Public Licence
- Full text of the license: [License Page](/legal/license)
### 1.6 Intellectual Property
### 1.7. Intellectual Property
By contributing to our projects, you affirm that:
- You own the copyright to your contribution or have authorization from the copyright owner to submit it under our license.
- You own the copyright to your contribution or have authorisation from the copyright owner to submit it under our license.
- Your contribution does not infringe on any third-party intellectual property rights.
- You grant us a perpetual, worldwide, non-exclusive, royalty-free license to use, modify, and distribute your contribution.
### 1.7 Legal Compliance
### 1.8. Legal Compliance
Ensure all contributions comply with relevant laws and regulations, including export controls and data protection laws.
### 1.8 Acceptance of Contributions
### 1.9. Acceptance of Contributions
While we appreciate all contributions, we reserve the right to reject any contribution that doesn't meet our standards or align with our project goals. The project maintainers have final say on the inclusion of any contribution.
## 2. Secrets Management
## 2. SECRETS MANAGEMENT
### 2.1 Overview
### 2.1. Overview
Proper management of secrets is crucial for maintaining the security and integrity of our projects. We use 1Password as our centralized secrets management solution. This section outlines our policies and procedures for handling secrets.
Proper management of secrets is crucial for maintaining the security and integrity of our projects. We use 1Password as our centralised secrets management solution. This section outlines our policies and procedures for handling secrets.
### 2.2 General Policy
### 2.2. General Policy
- Plain-text secrets should never be stored on personal machines, development environments, or our servers.
- All secrets should be stored and managed through 1Password.
### 2.3 1Password Setup and Usage
### 2.3. 1Password Setup and Usage
To work with secrets locally, you must set up the 1Password CLI (Command Line Interface) and integrate it with your 1Password desktop application.
#### 2.3.1 Setup Instructions
#### 2.3.1. Setup Instructions
- Install the 1Password desktop application if you haven't already.
- Install the 1Password CLI. Instructions can be found at: https://developer.1password.com/docs/cli/get-started/
- Authenticate the CLI with your 1Password account.
- Configure your development environment to use the 1Password CLI for secret retrieval. https://developer.1password.com/docs/cli/secrets-environment-variables/
#### 2.3.2 Best Practices
#### 2.3.2. Best Practices
- Use environment variables to store secrets retrieved from 1Password during runtime.
- Never log or display secrets in any form.
- Rotate secrets regularly.
### 2.4 Handling Secrets in Code
### 2.4. Handling Secrets in Code
- Development environment variables should be set in `dev.env` - changes to this file should generally be excluded from your contributions.
- Use 1Password references instead of actual secret values in configuration files.
## 3. Setting Up Your Development Environment
## 3. SETTING UP YOUR DEVELOPMENT ENVIRONMENT
### 3.1 Forking the Repository
### 3.1. Gaining a Contributor Account
1. Navigate to the original repository on Codeberg.
2. Click the "Fork" button in the upper right corner of the page.
3. Select your account as the destination for the fork.
4. Wait for Codeberg to create a copy of the repository in your account.
Contributor accounts are provided only to members of our team. If you wish to join our volunteer team, please [apply](https://forms.nhcarrigan.com/o/docs/forms/mCxDu3snk9TzFiDjrT4Vc8/4) for our Technical Contributor position.
### 3.2 Cloning Your Fork
Once accepted, you will be granted credentials as part of your onboarding.
1. Go to your forked repository on Codeberg.
2. Click the "Code" button and copy the URL (HTTPS or SSH, depending on your setup).
### 3.2. Cloning A Project
1. Go to repository on NHCarrigan's Git instance.
2. Click the "Code" button and copy the HTTPS URL.
3. Open your terminal or command prompt.
4. Navigate to the directory where you want to store the project.
5. Run the following command, replacing `<url>` with the URL you copied:
```
```bash
git clone <url>
```
6. Enter your GitHub credentials if prompted.
6. Enter your Git credentials if prompted.
### 3.3 Setting Up the Upstream Remote
### 3.3. Keeping Your Clone Up-to-Date
Adding the original repository as an upstream remote allows you to easily keep your fork up-to-date.
Regularly update your clone to incorporate changes from the upstream repository:
1. Change into the project directory:
1. Check out the main branch:
```
cd <project-name>
```
2. Add the upstream remote:
```
git remote add upstream <original-repository-url>
```
Replace `<original-repository-url>` with the **git** URL of the original repository.
3. Verify the new remote:
```
git remote -v
```
You should see entries for both `origin` (your fork) and `upstream`.
### 3.4 Keeping Your Fork Up-to-Date
Regularly update your fork to incorporate changes from the upstream repository:
1. Fetch the branches and commits from the upstream repository:
```
git fetch upstream
```
2. Check out your fork's local main branch:
```
```bash
git checkout main
```
3. Merge changes from upstream/main into your local main branch:
2. Pull changes from upstream to your local clone:
```
git merge upstream/main
```bash
git pull
```
### 3.5 Troubleshooting
### 3.4. Troubleshooting
If you encounter any issues during setup:
@@ -172,28 +147,33 @@ If you encounter any issues during setup:
2. Search for similar issues in the project's issue tracker.
3. If the problem persists, open a new issue with detailed information about the problem and steps to reproduce it.
You can also reach out to us on our forum: https://forum.nhcarrigan.com
You can also reach out to us in our Discord community: https://chat.nhcarrigan.com
## 4. Claiming an Issue
## 4. CLAIMING AN ISSUE
### 4.1 Finding an Issue
### 4.1. Finding an Issue
**For Team Members:** All properly triaged tickets that are ready to be worked on are available on our **Staff Tickets** project board: https://git.nhcarrigan.com/nhcarrigan/-/projects/2
Team members should refer to this project board to find tickets that are ready for work.
**For All Contributors:**
1. Navigate to the project's issue tracker.
2. Browse open issues or use filters to find tasks that interest you.
3. Read the issue description thoroughly to understand the requirements and context.
### 4.2 Expressing Interest
### 4.2. Expressing Interest
1. If you find an issue you'd like to work on, comment on the issue expressing your interest.
2. Example comment: "I'm interested in working on this issue. May I be assigned to it?"
3. Wait for a project maintainer to respond and potentially assign the issue to you.
### 4.3 Issue Assignment
### 4.3. Issue Assignment
- Project maintainers will assign issues based on the order of interest and the contributor's experience level.
- Once assigned, you'll see your username in the "Assignees" section of the issue.
### 4.4 Already Assigned Issues
### 4.4. Already Assigned Issues
If an issue is already assigned:
@@ -204,32 +184,32 @@ If an issue is already assigned:
We encourage collaboration and pair programming on complex issues!
### 4.5 Working on the Issue
### 4.5. Working on the Issue
1. Once assigned, create a new branch in your fork for this specific issue.
1. Once assigned, create a new branch in the project for this specific issue.
2. Use a descriptive branch name, e.g., `fix/issue-123-button-alignment`.
3. Make your changes, committing regularly with clear, concise commit messages.
4. Push your changes to your fork.
4. Push your changes to your branch.
5. Open a pull request when ready for review (see Pull Request Guidelines in section [X]).
### 4.6 Keeping the Community Updated
### 4.6. Keeping the Community Updated
1. Provide regular updates on your progress in the issue comments.
2. If you encounter obstacles, don't hesitate to ask for help in the issue thread.
3. If you need to step away from an issue, please let us know so it can be reassigned if necessary.
### 4.7 Time Management
### 4.7. Time Management
- Try to start working on the issue within a few days of assignment.
- If you haven't made progress within a week, the issue may be unassigned to keep the project moving forward.
- If you need more time, communicate this in the issue comments.
### 4.8 Multiple Issues
### 4.8. Multiple Issues
- We encourage focusing on one issue at a time to ensure quality and timely completion.
- If you want to work on multiple issues, please complete one before requesting assignment to another.
### 4.9 Issue Labels
### 4.9. Issue Labels
Pay attention to issue labels for additional context:
@@ -237,27 +217,27 @@ Pay attention to issue labels for additional context:
- `help wanted`: Issues where we're actively seeking community help.
- `staff only`: Issue that will require staff attention.
### 4.10 Respectful Communication
### 4.10. Respectful Communication
- Always be courteous and professional in issue discussions.
- Respect the decisions of project maintainers regarding issue assignments and priorities.
- If you disagree with something, express your thoughts constructively and be open to feedback.
## 5. Working on Your Issue
## 5. WORKING ON YOUR ISSUE
### 5.1 Updating Your Fork
### 5.1. Updating Your Clone
Before starting work, ensure your forked version is up to date with the original repository. If you've set up the `upstream` remote as mentioned in Section 3, follow these steps:
Before starting work, ensure your clone is up to date with the original repository.
1. Open your terminal and navigate to your project's root directory.
2. Run the following commands:
```bash
git fetch upstream
git merge upstream/main
git checkout main
git pull
```
### 5.2 Creating a New Branch
### 5.2. Creating a New Branch
Always create a new branch for your work:
@@ -278,17 +258,17 @@ Always create a new branch for your work:
- `fix/resolve-memory-leak`
- `docs/update-api-endpoints`
### 5.3 Making Changes
### 5.3. Making Changes
1. Make your code changes, following the project's coding standards and guidelines.
2. Regularly commit your changes with clear, concise messages.
3. Push your changes to your fork periodically:
3. Push your changes to your branch periodically:
```bash
git push origin <branchname>
```
### 5.4 Committing Changes
### 5.4. Committing Changes
When you're ready to commit your changes:
@@ -310,7 +290,7 @@ When you're ready to commit your changes:
git commit
```
### 5.5 Commit Message Guidelines
### 5.5. Commit Message Guidelines
- Follow Conventional Commit standards: `type(scope): description` such as `docs: update contributing guidelines`.
- Use the present tense ("Add feature" not "Added feature")
@@ -327,7 +307,7 @@ feat: add user authentication system
Implement JWT-based authentication for API endpoints.
```
### 5.7 Testing Your Changes
### 5.7. Testing Your Changes
- Run the linter to ensure your code complies with [our style guidelines](/dev/style).
@@ -343,12 +323,12 @@ Implement JWT-based authentication for API endpoints.
- Add new tests for your changes if applicable.
### 5.8 Documentation
### 5.8. Documentation
- Update relevant documentation to reflect your changes.
- If you've added new features, include appropriate documentation.
### 5.9 Preparing for Pull Request
### 5.9. Preparing for Pull Request
Before submitting a pull request:
@@ -357,32 +337,32 @@ Before submitting a pull request:
1. Ensure all tests pass.
1. Review your changes and commit history.
If you're unsure about any part of the process or need help, don't hesitate to ask in our [forum](https://forum.nhcarrigan.com). Our community is here to support you!
If you're unsure about any part of the process or need help, don't hesitate to ask in our [Discord community](https://chat.nhcarrigan.com). Our community is here to support you!
## 6. Submitting a Pull Request
## 6. SUBMITTING A PULL REQUEST
### 6.1 Pushing Your Changes
### 6.1. Pushing Your Changes
1. Push your changes to your forked repository:
1. Push your changes to the repository:
```bash
git push -u origin <branchname>
```
- `-u` sets the upstream, linking your local branch to the remote branch
- `origin` specifies your forked repository as the destination
- `origin` specifies the project repository as the destination
- `<branchname>` is the name of your local branch
2. Ensure the push is successful and your changes appear in your forked repository on Codeberg.
2. Ensure the push is successful and your changes appear in the repository on NHCarrigan's Git instance.
### 6.2 Creating the Pull Request
### 6.2. Creating the Pull Request
1. Navigate to your forked repository on Codeberg.
1. Navigate to the repository on NHCarrigan's Git instance.
2. You should see a prompt to create a pull request for your recently pushed branch. If not, click on the "Pull requests" tab and then the "New pull request" button.
3. Ensure the base repository is the original project repository and the base branch is `main`.
4. Select your fork as the head repository and your recently pushed branch as the compare branch.
4. Select the project as the head repository and your recently pushed branch as the compare branch.
### 6.3 Filling Out the Pull Request
### 6.3. Filling Out the Pull Request
1. Change the title of your pull request to be a conventional commit message summarising all changes in that PR
2. Fill out the pull request description with as much information as possible. This typically includes:
@@ -392,24 +372,24 @@ git push -u origin <branchname>
3. Fill out the rest of the pull request form *completely*.
4. If your changes include visual elements, consider adding screenshots or GIFs to illustrate the modifications.
### 6.4 Pull Request Best Practices
### 6.4. Pull Request Best Practices
- Ensure your PR addresses only one issue or adds one feature. If you have made multiple unrelated changes, consider breaking them into separate pull requests.
- Double-check that all tests pass and there are no conflicts with the base branch.
- If your PR is a work in progress, mark it as a draft pull request.
### 6.5 After Submitting
### 6.5. After Submitting
- Keep an eye on your pull request for any comments, requests for changes, or approval.
- Be prepared to make additional commits to your branch if changes are requested.
### 6.6 Updating Your Pull Request
### 6.6. Updating Your Pull Request
If you need to make changes to your pull request:
1. Make the required changes in your local branch.
2. Commit the changes.
3. Push the new commits to your fork:
3. Push the new commits to your branch:
```bash
git push origin <branchname>
@@ -417,28 +397,28 @@ If you need to make changes to your pull request:
4. The pull request will automatically update with your new commits.
### 6.7 Pull Request Etiquette
### 6.7. Pull Request Etiquette
- Be patient. Maintainers are often managing multiple priorities.
- Be open to feedback and willing to make changes.
- Respond promptly to any questions or requests from reviewers.
- If there's a delay in your ability to respond or make requested changes, leave a comment explaining the situation.
### 6.8 Merging and Closing
### 6.8. Merging and Closing
- Once your pull request is approved, a maintainer will merge it into the main project.
- After merging, you can delete your branch from your fork if you won't be using it anymore.
- After merging, you can delete your branch from the repository if you won't be using it anymore.
- Celebrate your contribution to the project!
## 7. Pull Request Reviews
## 7. PULL REQUEST REVIEWS
### 7.1 Review Process Overview
### 7.1. Review Process Overview
- All pull requests require at least one approved review before merging.
- Reviews are primarily conducted by Naomi, but some projects may have additional reviewers.
- The review process helps maintain code quality, consistency, and project standards.
### 7.2 What Reviewers Look For
### 7.2. What Reviewers Look For
Reviewers typically assess the following aspects:
@@ -449,13 +429,13 @@ Reviewers typically assess the following aspects:
5. Adherence to project-specific guidelines
6. Potential impact on existing features or performance
### 7.3 Types of Review Outcomes
### 7.3. Types of Review Outcomes
1. **Approved**: Your pull request is ready to be merged.
2. **Changes Requested**: Modifications or additional information is needed before approval.
3. **Commented**: The reviewer has provided feedback but hasn't explicitly approved or requested changes.
### 7.4 Responding to Review Feedback
### 7.4. Responding to Review Feedback
If changes are requested:
@@ -465,31 +445,31 @@ If changes are requested:
4. Commit and push the changes to update your pull request.
5. Respond to each comment, explaining how you addressed the feedback or why you chose a different approach.
### 7.5 Best Practices for Handling Reviews
### 7.5. Best Practices for Handling Reviews
- Respond promptly to review comments (ideally within a few days).
- Be open to constructive criticism and willing to make changes.
- If you disagree with a suggestion, explain your reasoning politely and be open to discussion.
- Use the review process as a learning opportunity to improve your coding skills.
### 7.6 Timelines and Expectations
### 7.6. Timelines and Expectations
- We strive to review pull requests as quickly as possible, typically within a week.
- If your pull request requires changes, please address them promptly.
- Pull requests with outstanding change requests and no activity for a week may be closed as stale.
- If you need more time to address changes, communicate this in the pull request comments to prevent your contribution from being closed.
### 7.7 Multiple Iterations
### 7.7. Multiple Iterations
- Complex changes may require multiple rounds of reviews and revisions.
- Stay engaged throughout the process and be patient if additional iterations are needed.
### 7.8 Learning from the Review Process
### 7.8. Learning from the Review Process
- Take note of common feedback to improve future contributions.
- Consider reviewing other pull requests to gain insights into the project's standards and practices.
### 7.9 After Approval
### 7.9. After Approval
Once your pull request is approved:
@@ -498,11 +478,11 @@ Once your pull request is approved:
Thank you for providing that section. I'll expand and improve it to make it more comprehensive and encourage a wider range of contributions. Here's an enhanced version:
## 8. Other Contributions
## 8. OTHER CONTRIBUTIONS
We value all types of contributions, not just code. There are many ways to contribute to our project, regardless of your technical experience or comfort level with the codebase. Here are several ways you can make a meaningful impact:
### 8.1 Documentation Updates
### 8.1. Documentation Updates
Clear and accurate documentation is crucial for any project. You can help by:
@@ -511,7 +491,7 @@ Clear and accurate documentation is crucial for any project. You can help by:
- Creating new documentation for undocumented features
- Improving README files, API documentation, or user guides
### 8.2 Feature Requests
### 8.2. Feature Requests
Your ideas can help shape the future of the project. To suggest a new feature:
@@ -523,17 +503,17 @@ Your ideas can help shape the future of the project. To suggest a new feature:
Consider discussing your idea in our community chat before creating an issue to gather initial feedback.
:::
### 8.3 Bug Reports
### 8.3. Bug Reports
Identifying and reporting bugs is a valuable contribution. When reporting a bug:
1. Search existing issues to avoid duplicates
1. Provide a clear, concise description of the problem
1. Include steps to reproduce the bug
1. Describe the expected behavior and what actually happened
1. Describe the expected behaviour and what actually happened
1. If possible, include screenshots, error messages, or code samples
### 8.4 User Support
### 8.4. User Support
Helping other users is a great way to contribute to the community:
@@ -542,7 +522,7 @@ Helping other users is a great way to contribute to the community:
- Guide new users through common issues or setup processes
- Create tutorials or blog posts about using the project
### 8.5 Design Contributions
### 8.5. Design Contributions
If you have design skills, you can contribute by:
@@ -551,7 +531,7 @@ If you have design skills, you can contribute by:
- Improving the overall user experience and accessibility
- Creating infographics or visual aids for documentation
### 8.6 Testing and Quality Assurance
### 8.6. Testing and Quality Assurance
Help improve the project's stability by:
@@ -560,16 +540,16 @@ Help improve the project's stability by:
- Writing or improving automated tests
- Identifying edge cases or potential security issues
### 8.7 Community Building
### 8.7. Community Building
Foster a welcoming and inclusive community by:
- Welcoming new contributors and helping them get started
- Organizing or participating in community events or meetups
- Organising or participating in community events or meetups
- Promoting the project on social media or relevant forums
- Helping to moderate community discussions
### 8.8 Internationalization and Localization
### 8.8. Internationalization and Localization
Make the project accessible to a global audience:
@@ -577,7 +557,7 @@ Make the project accessible to a global audience:
- Provide localized documentation
- Ensure the project supports multiple languages and cultures
### 8.9 Code Reviews
### 8.9. Code Reviews
Even if you're not comfortable making code changes, you can:
@@ -585,22 +565,56 @@ Even if you're not comfortable making code changes, you can:
- Provide feedback on proposed features or bug fixes
- Help ensure code style and convention consistency
### 8.10 Fundraising and Sponsorship
### 8.10. Fundraising and Sponsorship
If you have connections or experience in this area:
- Help identify potential sponsors or grants
- Assist with writing grant applications
- Organize fundraising events or campaigns
- Organise fundraising events or campaigns
Or even make a donation yourself!
### 8.11 Mentoring
### 8.11. Mentoring
Share your knowledge and experience:
- Mentor new contributors
- Create learning resources for the project
- Participate in or organize coding workshops related to the project
- Participate in or organise coding workshops related to the project
Remember, all contributions, big or small, are valuable to the project. Don't hesitate to get involved in any way you feel comfortable. If you have any questions about how to contribute or need help getting started, please reach out to us in our Discord server or through the project's communication channels.
## 9. LIMITATION OF LIABILITY AND DISCLAIMERS
### 9.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, and maximum liability caps are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 9.2. Contribution Guidelines Disclaimer
These Guidelines establish mandatory requirements for contributions. However, compliance with these Guidelines does not guarantee acceptance of contributions. Project maintainers reserve the right to:
- Reject contributions that comply with these Guidelines for other valid reasons
- Request modifications beyond the scope of these Guidelines
- Modify or update these Guidelines at any time without prior notice
- Interpret Guideline requirements in specific contexts as necessary
### 9.3. Technical Accuracy Disclaimer
While we strive to maintain accurate and current information in these Guidelines, technical standards, tooling, and best practices evolve continuously. Contributors are responsible for:
- Verifying current tool versions and compatibility
- Ensuring their development environment matches project requirements
- Adapting to updates in these Guidelines as they are published
- Consulting project-specific documentation for additional requirements
## 10. CONCLUSION
These Contributing Guidelines represent our commitment to maintaining high-quality, consistent, and legally compliant contributions across all projects. By adhering to these standards, contributors help ensure that our projects remain accessible, professional, and aligned with our organisational values and legal obligations.
All contributors are expected to familiarise themselves with and comply with the requirements set forth in these Guidelines. Questions about specific requirements or requests for clarification should be directed to project maintainers through appropriate communication channels.
---
*For questions about contribution requirements or to suggest improvements, please contact project maintainers through the designated channels outlined in our Contributor Covenant.*
+6 -6
View File
@@ -1,13 +1,13 @@
---
title: nhcarrigan Contributor Covenant
title: Contributor Covenant
---
Copyright (C) 2024 nhcarrigan and its contributors.
Copyright (C) 2024 NHCarrigan and its contributors.
Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.
## nhcarrigan Contributor Covenant 1.0
## NHCarrigan Contributor Covenant 1.0
By making a contribution to this project I certify that:
@@ -22,7 +22,7 @@ By making a contribution to this project I certify that:
I have the right to submit any code, documentation, or other content under the project's designated license.
</li>
<li>
If my contribution is based on previous work covered under an open source license, I have the right to submit that work with modifications under the project's license.
If my contribution is based on previous work covered under an open source licence, I have the right to submit that work with modifications under the project's license.
</li>
<li>
Any contribution provided to me by another person for submission to this project has been done so with certification of points <code>a</code> through <code>d</code>, and I have not modified it.
@@ -31,12 +31,12 @@ By making a contribution to this project I certify that:
I understand that my contributions may be logged publicly, and that moderation actions taken in response to Code of Conduct violations may be recorded in the community's public moderation log.
</li>
<li>
I understand and agree that this project and the contribution are public and that a record of the contribution (including all personal information I submit with it) is maintained indefinitely and may be redistributed consistent with this project or the open source license(s) involved.
I understand and agree that this project and the contribution are public and that a record of the contribution (including all personal information I submit with it) is maintained indefinitely and may be redistributed consistent with this project or the open source licence(s) involved.
</li>
<li>
I acknowledge that community leaders have the right and responsibility to remove, edit, or reject my contributions if they do not align with this certificate or the project's Code of Conduct.
</li>
<li>
I agree to release my contribution to nhcarrigan pursuant to the Terms of Service.
I agree to release my contribution to NHCarrigan pursuant to the Terms of Service.
</li>
</ol>
+95 -31
View File
@@ -2,13 +2,34 @@
title: Development Environment
---
This page documents Naomi's local development environment. The information here is provided to allow contributors to mirror the environment as closely as possible, ensuring the smoothest developer experience.
**DOCUMENTING DEVELOPMENT ENVIRONMENT SPECIFICATIONS AND CONFIGURATION REQUIREMENTS**
## 1. System Information
## 1. INTRODUCTION AND LEGAL FRAMEWORK
Naomi's local environment runs on the Arch Linux kernel.
### 1.1. Policy Overview
### 1.1. `hyfetch`
This Development Environment Documentation (hereinafter referred to as "the Documentation") provides technical specifications, configuration details, and environment setup information for development work on projects maintained by our organisation. This Documentation operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Contributor Covenant, and all applicable legal protections by reference.
### 1.2. Purpose and Scope
This Documentation describes the primary development environment used by our organisation's lead developer. While contributors are not required to replicate this exact environment, this information is provided to facilitate:
- Understanding of the development context and tooling preferences
- Troubleshooting compatibility issues
- Achieving similar development experiences
- Ensuring consistency in development practices
**IMPORTANT: This Documentation is provided for informational purposes. Contributors may use any development environment that meets project requirements. Our organisation does not endorse or require specific tools, operating systems, or configurations beyond those necessary for project functionality.**
### 1.3. Disclaimer
The information contained in this Documentation reflects the personal preferences and configurations of individual developers. These configurations are not mandatory requirements for contributions. Our organisation does not guarantee that replicating these configurations will result in identical development experiences.
## 2. SYSTEM INFORMATION
The primary development environment runs on the Arch Linux kernel.
### 2.1. Hyfetch Diagnostic Report
This is the current diagnostic report from `hyfetch`.
@@ -75,11 +96,11 @@ Editor: Emacs 30.2
└─Nano: 8.5
```
## 2. Packages
## 3. PACKAGES
Naomi uses the following packages.
### 2.1. Foreign Packages
### 3.1. Foreign Packages
These packages come from unofficial repositories, such as the AUR. This list is generated with `yay -Qm`.
@@ -151,7 +172,7 @@ yay-debug 12.5.0-1
</details>
### 2.2. Explicit Installations
### 3.2. Explicit Installations
These are all of the packages Naomi has specifically installed. This list is generated with `yay -Qe`.
@@ -345,7 +366,7 @@ zram-generator 1.2.1-1
</details>
### 2.3. Pinned Packages
### 3.3. Pinned Packages
These packages have updates ignored, due to incompatibility issues. This list is generated with `grep "^IgnorePkg" /etc/pacman.conf`.
@@ -353,7 +374,7 @@ These packages have updates ignored, due to incompatibility issues. This list is
IgnorePkg = sway
```
### 2.4. All Packages
### 3.4. All Packages
This is a complete list of all packages on the machine. This list is generated with `yay -Q`.
@@ -1857,11 +1878,11 @@ zziplib 0.13.80-1
</details>
## 3. Configuration
## 4. CONFIGURATION
Naomi's specific application configurations are noted here for posterity.
### 3.1. `git`
### 4.1. Git Configuration
The most important thing to note is that Naomi signs her commits with her SSH key, not a GPG key.
@@ -1886,7 +1907,7 @@ The most important thing to note is that Naomi signs her commits with her SSH ke
helper = store
```
### 3.2. `zsh`
### 4.2. Zsh Configuration
Naomi uses Oh My ZSH instead of bash.
@@ -1997,7 +2018,7 @@ eval "$(starship init zsh)"
source <(ng completion script)
```
#### 3.2.1. `starship`
#### 4.2.1. Starship Configuration
Naomi uses `starship` to manage her customised shell prompt.
@@ -2106,7 +2127,7 @@ command = "mommy -1 -s $status"
when = true
```
### 3.3. `pacman`
### 4.3. Pacman Configuration
Naomi's package manager configuration.
@@ -2135,7 +2156,7 @@ Include = /etc/pacman.d/chaotic-mirrorlist
Include = /etc/pacman.d/mirrorlist
```
### 3.4 `sway`
### 4.4. Sway Configuration
```ini frame="code" title="~/.config/sway/config"
set $mod Mod4
@@ -2280,7 +2301,7 @@ bar {
}
```
#### 3.4.1. `swaylock`
#### 4.4.1. Swaylock Configuration
```ini frame="code" title="~/.config/swaylock/config"
# Background image
@@ -2296,7 +2317,7 @@ fade-in=0.2
effect-blur=8x2
effect-vignette=0.5:0.5
# Ring customization
# Ring customisation
indicator-radius=120
indicator-thickness=20
indicator-idle-visible
@@ -2332,12 +2353,12 @@ text-clear-color=abfcec
text-ver-color=abfcec
text-wrong-color=abfcec
# Text customization
# Text customisation
font=OpenDyslexicMono
font-size=24
```
### 3.5 Waybar
### 4.5. Waybar Configuration
These manage Naomi's waybar instance.
@@ -2714,7 +2735,7 @@ echo "{\"text\":\"${text}\", \"tooltip\":\"${tooltip}\"}";
#!/usr/bin/env sh
model=$(cat /proc/cpuinfo | grep 'model name' | head -n 1 | awk -F ': ' '{print $2}')
utilization=$(top -bn1 | awk '/^%Cpu/ {print 100 - $8}')
utilisation=$(top -bn1 | awk '/^%Cpu/ {print 100 - $8}')
freqlist=$(cat /proc/cpuinfo | grep "cpu MHz" | awk '{ print $4 }')
maxfreq=$(cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq | sed 's/...$//')
frequency=$(echo $freqlist | tr ' ' '\n' | awk "{ sum+=\$1 } END {printf \"%.0f/$maxfreq MHz\", sum/NR}")
@@ -2731,8 +2752,8 @@ eval_ico() {
echo "${set_ico}" | jq -r --arg aky "$1" --arg avl "$map_ico" '.[$aky] | .[$avl]'
}
thermo=$(eval_ico thermo $temp)
speedo=$(eval_ico util $utilization)
echo "{\"text\":\"${thermo} ${temp}°C\", \"tooltip\":\"${model}\n${thermo} Temperature: ${temp}°C\n${speedo} Utilization: ${utilization}%\n󰘚 Clock Speed: ${frequency}\"}"
speedo=$(eval_ico util $utilisation)
echo "{\"text\":\"${thermo} ${temp}°C\", \"tooltip\":\"${model}\n${thermo} Temperature: ${temp}°C\n${speedo} Utilization: ${utilisation}%\n󰘚 Clock Speed: ${frequency}\"}"
```
</details>
@@ -2886,7 +2907,7 @@ echo "{\"text\": \"${icon} ${ssid}\", \"tooltip\": \"${tooltip}\"}"
</details>
### 3.6 Ghostty
### 4.6. Ghostty Configuration
```ini frame="code" title="~/.config/ghostty/config"
font-family="OpenDyslexicM Nerd Font"
@@ -2922,7 +2943,7 @@ cursor-color = #ff3b6f
cursor-text = #ffe6ee
```
### 3.7 Discord
### 4.7. Discord Configuration
```json frame="code" title="~/.config/discord/settings.json"
{
@@ -2941,7 +2962,7 @@ cursor-text = #ffe6ee
}
```
### 3.8 Hyfetch
### 4.8. Hyfetch Configuration
There are two config files here.
@@ -3093,7 +3114,7 @@ background_color=
stdout="off"
```
### 3.9 Wofi
### 4.9. Wofi Configuration
```css frame="code" title="~/.config/wofi/style.css"
#window {
@@ -3146,7 +3167,7 @@ stdout="off"
}
```
### 3.10 Dunst
### 4.10. Dunst Configuration
`dunst` manages Naomi's system notifications, and (like many other aspects of her environment) has been highly customised.
@@ -3177,15 +3198,15 @@ stdout="off"
frame_color="#ffefef"
```
## 4. Code Editors
## 5. CODE EDITORS
These are the code editors Naomi uses.
### 4.1. Emacs
### 5.1. Emacs Configuration
Naomi uses `emacs` for her main editor.
#### 4.1.1. Config
#### 5.1.1. Emacs Configuration File
```lisp frame="code" title="~/.emacs"
(setq inhibit-startup-message t ; Don't show the splash screen
@@ -3243,7 +3264,7 @@ Naomi uses `emacs` for her main editor.
(set-face-background 'line-number-current-line nil)
(set-face-foreground 'line-number-current-line "yellow")
;; Optional: Customize line number format
;; Optional: Customise line number format
(setq display-line-numbers-width 4) ; Reserve space for line numbers
(setq display-line-numbers-widen t) ; Expand line number space as needed
@@ -3394,3 +3415,46 @@ Naomi uses `emacs` for her main editor.
;; If there is more than one, they won't work right.
)
```
## 6. LIMITATION OF LIABILITY AND DISCLAIMERS
### 6.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, and maximum liability caps are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 6.2. Development Environment Disclaimer
This Documentation is provided for informational purposes only. Our organisation:
- Does not require contributors to replicate this exact development environment
- Does not guarantee that replicating these configurations will result in identical development experiences
- Does not provide technical support for setting up or maintaining these configurations
- Reserves the right to modify or update this Documentation at any time without prior notice
### 6.3. Technical Accuracy Disclaimer
While we strive to maintain accurate and current information in this Documentation, technical specifications, software versions, and configuration details change frequently. Contributors are responsible for:
- Verifying current software versions and compatibility
- Adapting configurations to their specific system requirements
- Ensuring their development environment meets project requirements
- Consulting project-specific documentation for additional requirements
### 6.4. Third-Party Tools and Services
This Documentation references various third-party tools, services, and software packages. Our organisation:
- Does not endorse or guarantee the functionality, security, or availability of third-party tools
- Is not responsible for issues arising from the use of third-party tools or services
- Does not provide support for third-party tools beyond what is necessary for project functionality
- Recommends that contributors review third-party licenses, terms of service, and privacy policies
## 7. CONCLUSION
This Development Environment Documentation provides comprehensive information about the primary development environment used within our organisation. While contributors are not required to replicate this exact environment, this information serves as a valuable reference for understanding our development context, tooling preferences, and configuration standards.
All contributors are encouraged to use development environments that meet project requirements and align with their personal preferences and constraints. Questions about development environment setup or compatibility should be directed to project maintainers through appropriate communication channels.
---
*For questions about development environment requirements or to suggest improvements, please contact project maintainers through the designated channels outlined in our Contributor Covenant.*
+374 -184
View File
@@ -1,448 +1,638 @@
---
title: Labels
title: "Issue/PR Labels"
---
We use very specific labels to help categorise our issues. This page explains what each label means.
## 1. Contribution Labels
These are the most important. These labels indicate who is encouraged to make a pull request to resolve the issue.
These are the most important. These labels indicate who is encouraged to make a pull request to resolve the issue. All contributions are limited to our volunteer staff team members.
### 1.1. `contribute: good first issue`
#### 1.1.1. Purpose
Identifies issues suitable for contributors who are new to the project.
Identifies issues suitable for team members who are learning a new codebase.
#### 1.1.2. Characteristics
Does not require prior knowledge of the codebase. Issues with this label should include a detailed description of the implementation process.
Does not require prior knowledge of the codebase. Issues with this label should include a detailed description of the implementation process to help team members get familiar with the project structure.
#### 1.1.3. Expectations
Contributors are responsible for ensuring their work complies with the project's licensing terms and contribution guidelines.
Team members are responsible for ensuring their work complies with the project's licensing terms and contribution guidelines.
### 1.2. `contribute: help wanted`
#### 1.2.1. Purpose
Indicates issues open for contribution from any interested party.
Indicates issues open for any team member to grab and work on.
#### 1.2.2. Characteristics
Typically assumes prior experience with the codebase. As such, issues may not include a detailed implementation description.
Open to all volunteer staff team members. May assume some familiarity with the codebase, and issues may not include a detailed implementation description.
#### 1.2.3. Expectations
Contributors should review and adhere to the project's contribution guidelines and code of conduct before submitting work on these issues.
Team members should review and adhere to the project's contribution guidelines and code of conduct before submitting work on these issues.
### 1.3. `contribute: staff only`
#### 1.3.1. Purpose
Designates issues restricted to project maintainers or staff due to specific access requirements.
Designates issues restricted to executive leadership due to specific access requirements or strategic decisions.
#### 1.3.2. Characteristics
Requires access to production infrastructure for proper testing and implementation. As such, limited to authorised project maintainers and staff.
Requires executive-level access, decision-making authority, or involves strategic project direction. Limited to authorised executive leadership team members.
#### 1.3.3. Expectations
Staff members working on these issues must adhere to all relevant confidentiality agreements, data protection policies, and internal security protocols.
Executive leadership members working on these issues must adhere to all relevant confidentiality agreements, data protection policies, and internal security protocols.
### 1.4 Disclaimer
### 1.4. Disclaimer
Labels are assigned based on the project maintainers' best judgment but may not guarantee the exact level of difficulty or access requirements for every contributor. Contributors should use their discretion and communicate with project maintainers if they have any doubts about their ability to address an issue or comply with any associated legal requirements.
Labels are assigned based on the project maintainers' best judgement but may not guarantee the exact level of difficulty or access requirements for every team member. Team members should use their discretion and communicate with project maintainers if they have any doubts about their ability to address an issue or comply with any associated legal requirements.
## 2. Aspect Labels
## 2. Points Labels
These labels indicate the scope of the work required to resolve the issue.
Points labels indicate the complexity and effort required to resolve an issue. This helps with capacity planning and workload distribution across the team.
### 2.1. `aspect: code`
### 2.1. `points: 1`
#### 2.1.1. Purpose
Identifies issues requiring changes to the project's codebase.
Identifies very simple issues that require minimal effort and complexity.
#### 2.1.2. Characteristics
Involves direct modification to the project's source code. Familiarity with the languages and libraries used is expected.
Straightforward tasks that can typically be completed quickly. Examples include minor text corrections, simple configuration changes, or very small bug fixes.
#### 2.1.3. Expectations
Contributors must ensure their code changes comply with the project's coding standards, license terms, and any applicable software patents or copyrights.
Team members should be able to complete these issues with minimal review time. These are ideal for quick wins and maintaining project momentum.
### 2.2. `aspect: dx`
### 2.2. `points: 2`
#### 2.2.1. Purpose
Indicates issues related to improving the project's tooling and development workflow.
Designates simple issues that require a bit more thought or investigation.
#### 2.2.2. Characteristics
May include changes to automated tests, development dependencies, build processes, etc. Understanding of the development workflows is expected.
Slightly more complex than 1-point issues but still relatively straightforward. May involve understanding a small portion of the codebase or making changes across a few files.
#### 2.2.3. Expectations
Changes to tooling or dependencies must be compatible with the project's overall licensing strategy and not introduce conflicts with existing terms.
These issues should be approachable for most team members and can serve as good learning opportunities.
### 2.3. `aspect: interface`
### 2.3. `points: 3`
#### 2.3.1. Purpose
Designates issues that affect the end-user's experience with the project.
Indicates moderate complexity issues that require more substantial work.
#### 2.3.2. Characteristics
May require changes in the code, particularly in front-end components. Can include visual modifications like CSS changes or image updates. Understanding of the end-user experience expected.
Requires understanding multiple parts of the codebase or implementing features with several components. May involve testing, documentation, and coordination with other parts of the system.
#### 2.3.3. Expectations
Contributors must ensure they have the necessary rights to any visual assets introduced or modified. Changes should comply with accessibility standards and regulations where applicable.
Team members should have some familiarity with the codebase before tackling these issues. May require more thorough review and testing.
### 2.4. `aspect: text`
### 2.4. `points: 5`
#### 2.4.1. Purpose
Identifies issues related to the project's documentation.
Identifies complex issues that require significant effort and expertise.
#### 2.4.2. Characteristics
Typically does not require code changes. Proficiency in technical writing is a must.
Involves substantial changes to the codebase, multiple components, or deep understanding of system architecture. May require refactoring, architectural decisions, or integration with external systems.
#### 2.4.3. Expectations
Contributors must ensure the accuracy of the information provided in documentation updates. Documentation changes should adhere to any applicable style guides and licensing terms.
These issues typically require experienced team members and may involve multiple review cycles. Proper planning and discussion may be necessary before implementation.
### 2.5 Disclaimer
### 2.5. `points: 8`
Aspect labels are assigned based on the primary focus of the issue but may not encompass all potential areas of impact. Contributors are encouraged to consider potential cross-aspect effects of their work and discuss these with project maintainers when in doubt. The project maintainers reserve the right to reassign aspect labels or request additional changes if the submitted work does not align with the intended scope of the issue.
#### 2.5.1. Purpose
## 3. Goal Labels
Designates very complex issues that require extensive work and deep expertise.
These labels indicate the primary objective of the issue, reflecting our project's modular approach. They help contributors understand the nature and scope of the changes they'll be making.
#### 2.5.2. Characteristics
### 3.1. `goal: addition`
Major features, significant refactoring, or complex architectural changes. Often involves multiple team members or requires breaking down into smaller sub-tasks.
#### 2.5.3. Expectations
These issues should be carefully planned and may need to be broken down into smaller, manageable pieces. Typically assigned to experienced team members with relevant expertise.
### 2.6. `points: 13`
#### 2.6.1. Purpose
Indicates extremely complex issues that represent major undertakings.
#### 2.6.2. Characteristics
Epic-level work that significantly impacts the project. Often requires breaking down into multiple smaller issues or involves substantial architectural changes.
#### 2.6.3. Expectations
These issues should always be broken down into smaller, trackable pieces. Requires careful planning, coordination, and likely involvement from multiple team members or executive leadership.
### 2.7. Disclaimer
Points are assigned based on the project maintainers' assessment of complexity and effort required. Actual time and effort may vary based on individual team member experience, unexpected complications, or changing requirements. Points should be used as a guide for planning and capacity management, not as strict time estimates.
## 3. Time Labels
Time labels indicate the expected number of days a developer should allocate for working on an issue. These help with sprint planning and workload management.
### 3.1. `time: <1 day`
#### 3.1.1. Purpose
Identifies issues that involve adding a new feature to the project.
Identifies issues that can be completed in less than one day of focused work.
#### 3.1.2. Characteristics
Typically involves creating new code files. Understanding of how different modules in the project integrate with each other is expected.
Quick fixes, minor updates, or simple tasks that don't require extensive development time. Typically aligns with 1-2 point issues.
#### 3.1.3. Expectations
Contributors must ensure that new features do not infringe on existing patents or copyrights. New code should be compatible with the project's existing license. If introducing third-party libraries or dependencies, their licenses must be compatible with the project's license.
These issues should be completable within a single work session. Ideal for maintaining project momentum and addressing quick wins.
### 3.2. `goal: fix`
### 3.2. `time: 1 day`
#### 3.2.1. Purpose
Designates issues aimed at fixing bugs in the project.
Designates issues that require approximately one full day of development work.
#### 3.2.2. Characteristics
Typically involves editing code within existing files. Scope should be kept to the specific bug - separate contributions should be made for unrelated bugs.
Moderate tasks that can be completed in a focused day of work. May include some investigation, implementation, and basic testing.
#### 3.2.3. Expectations
Bug fixes should not introduce new legal issues or licensing conflicts. Contributors should document the nature of the bug and the fix for future reference and potential legal compliance (e.g., security vulnerabilities).
Team members should be able to complete these issues within a single day, accounting for review time and potential minor revisions.
### 3.3. `goal: improvement`
### 3.3. `time: 2-3 days`
#### 3.3.1. Purpose
Indicates issues that expand upon or enhance existing features.
Indicates issues requiring two to three days of development effort.
#### 3.3.2. Characteristics
Usually involves adding code to existing files. Scope should be kept to the existing feature.
More substantial work that involves multiple components, thorough testing, or deeper investigation. May require coordination with other team members.
#### 3.3.3. Expectations
Improvements should maintain compatibility with existing licenses and legal obligations. If the improvement significantly changes the functionality, consider if additional legal reviews or updates to user agreements are necessary.
These issues should be planned across multiple days, allowing time for implementation, testing, review cycles, and potential revisions.
### 3.4. Disclaimer
### 3.4. `time: 4-5 days`
While goal labels provide guidance on the nature of the task, the actual work required may vary or expand beyond the initial scope. Contributors are encouraged to communicate with project maintainers if they believe a different approach or additional changes are necessary to achieve the goal. The project maintainers reserve the right to request modifications or additional work to ensure that contributions align with the project's goals, standards, and legal requirements.
#### 3.4.1. Purpose
## 4. Priority Labels
Identifies issues that require approximately one week of development work.
Priority labels indicate the importance assigned to specific issues by the project maintainers. These labels help guide resource allocation and set expectations for resolution timeframes.
#### 3.4.2. Characteristics
### 4.1. `priority: critical`
Complex features or significant changes that require careful implementation, extensive testing, and multiple review cycles.
#### 3.4.3. Expectations
These issues should be allocated sufficient time for thorough development and review. May benefit from breaking down into smaller sub-tasks for better tracking.
### 3.5. `time: 1-2 weeks`
#### 3.5.1. Purpose
Designates issues requiring one to two weeks of focused development effort.
#### 3.5.2. Characteristics
Major features or substantial refactoring that requires careful planning, implementation across multiple areas, and comprehensive testing.
#### 3.5.3. Expectations
These issues should be carefully planned and may need to be broken down into smaller, trackable milestones. Requires coordination and regular check-ins with the team.
### 3.6. `time: >2 weeks`
#### 3.6.1. Purpose
Indicates issues that require more than two weeks of development work.
#### 3.6.2. Characteristics
Epic-level work or major architectural changes that significantly impact the project. Often involves multiple team members and extensive planning.
#### 3.6.3. Expectations
These issues must be broken down into smaller, manageable pieces. Require careful project management, regular milestones, and coordination across the team.
### 3.7. Disclaimer
Time estimates are based on typical development scenarios and may vary based on individual team member experience, unexpected complications, review cycles, or changing requirements. Time labels should be used as a guide for planning and should be adjusted based on actual progress and circumstances.
## 4. Aspect Labels
These labels indicate the scope of the work required to resolve the issue.
### 4.1. `aspect: code`
#### 4.1.1. Purpose
Identifies issues requiring immediate attention due to their severe impact on project usability.
Identifies issues requiring changes to the project's codebase.
#### 4.1.2. Characteristics
Require urgent resolution to restore project functionality. Experience with the project is a must, to avoid delays from long review processes.
Involves direct modification to the project's source code. Familiarity with the languages and libraries used is expected.
#### 4.1.3. Expectations
May involve security vulnerabilities or critical bugs that could lead to legal liabilities if not addressed promptly. Resolution of these issues may need to be reported to relevant stakeholders or authorities in certain cases (e.g., data protection regulators for security breaches).
Contributors must ensure their code changes comply with the project's coding standards, license terms, and any applicable software patents or copyrights.
### 4.2. `priority: high`
### 4.2. `aspect: dx`
#### 4.2.1. Purpose
Designates important issues that, while not preventing basic functionality, are impeding further development.
Indicates issues related to improving the project's tooling and development workflow.
#### 4.2.2. Characteristics
Not critical for current project operation but blocking future progress. Require prompt attention to unblock development efforts.
May include changes to automated tests, development dependencies, build processes, etc. Understanding of the development workflows is expected.
#### 4.2.3. Expectations
May involve compliance deadlines or contractual obligations that need to be met. Could impact project timelines, potentially affecting agreements with stakeholders or clients.
Changes to tooling or dependencies must be compatible with the project's overall licensing strategy and not introduce conflicts with existing terms.
### 4.3. `priority: medium`
### 4.3. `aspect: interface`
#### 4.3.1. Purpose
Indicates issues that need resolution as soon as possible but are not blocking other development.
Designates issues that affect the end-user's experience with the project.
#### 4.3.2. Characteristics
Important for project improvement but not critical for current functionality. Should be addressed in a timely manner but with less urgency than high-priority issues.
May require changes in the code, particularly in front-end components. Can include visual modifications like CSS changes or image updates. Understanding of the end-user experience expected.
#### 4.3.3. Expectations
May involve improvements to user experience or accessibility, which could have legal implications if neglected long-term. Could relate to optimizations that affect performance guarantees or service level agreements.
Contributors must ensure they have the necessary rights to any visual assets introduced or modified. Changes should comply with accessibility standards and regulations where applicable.
### 4.4. `priority: low`
### 4.4. `aspect: text`
#### 4.4.1. Purpose
Represents issues that should be resolved but are not considered urgent.
Identifies issues related to the project's documentation.
#### 4.4.2. Characteristics
Desirable improvements or minor issues that don't significantly impact project functionality.
Typically does not require code changes. Proficiency in technical writing is a must.
#### 4.4.3. Expectations
While not urgent, neglecting these issues over time could lead to technical debt or gradual degradation of project quality, potentially affecting long-term compliance or user satisfaction.
Contributors must ensure the accuracy of the information provided in documentation updates. Documentation changes should adhere to any applicable style guides and licensing terms.
### 4.5. `priority: none`
### 4.5. Disclaimer
#### 4.5.1. Purpose
Aspect labels are assigned based on the primary focus of the issue but may not encompass all potential areas of impact. Contributors are encouraged to consider potential cross-aspect effects of their work and discuss these with project maintainers when in doubt. The project maintainers reserve the right to reassign aspect labels or request additional changes if the submitted work does not align with the intended scope of the issue.
Identifies "nice-to-have" issues that are not essential for project functionality or immediate development goals.
## 5. Goal Labels
#### 4.5.2. Characteristics
These labels indicate the primary objective of the issue, reflecting our project's modular approach. They help contributors understand the nature and scope of the changes they'll be making.
Not critical enough to dedicate maintainer time for resolution. Often left for community contributors or future consideration.
#### 4.5.3. Expectations
While not prioritized, maintainers should periodically review these issues to ensure they haven't become more significant over time, potentially accruing legal or compliance risks.
### 4.6 Disclaimer
Priority labels reflect the project maintainers' current assessment and may be subject to change. The presence of a lower-priority label does not diminish the importance of the issue or the value of contributions addressing it. Contributors should communicate with maintainers if they believe an issue's priority should be reassessed due to new information or changing circumstances.
## 5. Status Labels
Status labels indicate the current stage of an issue in the project lifecycle. These labels help manage workflow and set expectations for contributors and users.
### 5.1. `status: awaiting triage`
### 5.1. `goal: addition`
#### 5.1.1. Purpose
Identifies newly created issues that have not yet been reviewed by the maintainer team.
Identifies issues that involve adding a new feature to the project.
#### 5.1.2. Characteristics
Should be applied to issues when they are opened.
Typically involves creating new code files. Understanding of how different modules in the project integrate with each other is expected.
#### 5.1.3. Expectations
Contributors should be aware that engaging with these issues is at their own discretion, as the project team has not yet evaluated them. Maintainers should establish a reasonable timeframe for initial triage to manage expectations and potential liability.
Contributors must ensure that new features do not infringe on existing patents or copyrights. New code should be compatible with the project's existing license. If introducing third-party libraries or dependencies, their licenses must be compatible with the project's license.
### 5.2. `status: blocked`
### 5.2. `goal: fix`
#### 5.2.1. Purpose
Indicates issues with a planned resolution that depend on the completion of another issue.
Designates issues aimed at fixing bugs in the project.
#### 5.2.2. Characteristics
Not yet ready for work but expected to be addressed in the future.
Typically involves editing code within existing files. Scope should be kept to the specific bug - separate contributions should be made for unrelated bugs.
#### 5.2.3. Expectations
Maintainers should clearly document dependencies to avoid potential conflicts or misunderstandings. Regular review of blocked issues is advisable to prevent indefinite delays that could impact project timelines or contractual obligations.
Bug fixes should not introduce new legal issues or licensing conflicts. Contributors should document the nature of the bug and the fix for future reference and potential legal compliance (e.g., security vulnerabilities).
### 5.3. `status: discarded`
### 5.3. `goal: improvement`
#### 5.3.1. Purpose
Designates issues that the project team does not intend to resolve.
Indicates issues that expand upon or enhance existing features.
#### 5.3.2. Characteristics
Typically applied to feature requests that don't align with project goals.
Usually involves adding code to existing files. Scope should be kept to the existing feature.
#### 5.3.3. Expectations
Clearly communicate the rationale for discarding issues to manage user expectations and maintain transparency. Ensure that discarded issues don't conflict with any promised features or contractual obligations.
Improvements should maintain compatibility with existing licenses and legal obligations. If the improvement significantly changes the functionality, consider if additional legal reviews or updates to user agreements are necessary.
### 5.4. `status: discontinued`
### 5.4. Disclaimer
#### 5.4.1. Purpose
While goal labels provide guidance on the nature of the task, the actual work required may vary or expand beyond the initial scope. Contributors are encouraged to communicate with project maintainers if they believe a different approach or additional changes are necessary to achieve the goal. The project maintainers reserve the right to request modifications or additional work to ensure that contributions align with the project's goals, standards, and legal requirements.
Applies to feature requests for projects in maintenance mode.
## 6. Priority Labels
#### 5.4.2. Characteristics
Priority labels indicate the importance assigned to specific issues by the project maintainers. These labels help guide resource allocation and set expectations for resolution timeframes.
Indicates no new features will be added, but bug fixes and support continue.
#### 5.4.3. Expectations
Clearly communicate the project's maintenance status to manage user expectations and potential liability. Ensure that discontinuation doesn't breach any ongoing support agreements or licenses.
### 5.5. `status: label work required`
#### 5.5.1. Purpose
Indicates issues that need proper labeling and categorization.
#### 5.5.2. Characteristics
May have ongoing discussions but lack appropriate classification.
#### 5.5.3. Expectations
Proper labeling is crucial for efficient project management and may have implications for compliance tracking and reporting. Establish clear guidelines for labeling to ensure consistency and avoid potential misunderstandings.
### 5.6. `status: ready for dev`
#### 5.6.1. Purpose
Signifies issues that are ready for contribution.
#### 5.6.2. Characteristics
May have an assigned contributor who has expressed interest.
#### 5.6.3. Expectations
Clearly communicate contribution guidelines and any legal requirements (e.g., Contributor Covenant) to potential contributors. Ensure that collaborative efforts are managed in compliance with project licenses and contributor agreements.
### 5.7. `status: ticket work required`
#### 5.7.1. Purpose
Indicates issues lacking sufficient information for proper triage.
#### 5.7.2. Characteristics
Often paired with Conversation Labels for further clarification.
#### 5.7.3. Expectations
Establish clear guidelines for required information to avoid potential misunderstandings or misdirected efforts. Be mindful of data privacy when requesting additional information from issue reporters.
### 5.8. Disclaimer
Status labels reflect the current assessment of the project team and may change as circumstances evolve. While the project team strives to maintain accurate status labels, contributors and users should communicate with maintainers if they notice any discrepancies or have questions about an issue's status.
## 6. Conversation Labels
Conversation labels indicate that an issue has received initial maintainer attention but requires further discussion or information before proceeding. These labels help manage communication and ensure all necessary information is gathered before taking action.
### 6.1. `talk: discussion`
### 6.1. `priority: critical`
#### 6.1.1. Purpose
Identifies issues that are under active discussion but have not yet been accepted for resolution.
Identifies issues requiring immediate attention due to their severe impact on project usability.
#### 6.1.2. Characteristics
Ongoing dialogue between maintainers, contributors, and/or users. May involve debates about feature requests, implementation strategies, or project direction.
Require urgent resolution to restore project functionality. Experience with the project is a must, to avoid delays from long review processes.
#### 6.1.3. Expectations
Ensure discussions remain constructive and adhere to the project's code of conduct. Be cautious about making commitments or promises during discussions that could create legal obligations. Document key decisions and rationales to maintain transparency and provide a record for future reference.
May involve security vulnerabilities or critical bugs that could lead to legal liabilities if not addressed promptly. Resolution of these issues may need to be reported to relevant stakeholders or authorities in certain cases (e.g., data protection regulators for security breaches).
### 6.2. `talk: question`
### 6.2. `priority: high`
#### 6.2.1. Purpose
Indicates issues waiting on additional information from the author for proper triage.
Designates important issues that, while not preventing basic functionality, are impeding further development.
#### 6.2.2. Characteristics
Requires clarification or more details from the issue creator. Cannot proceed with triage or resolution until the requested information is provided.
Not critical for current project operation but blocking future progress. Require prompt attention to unblock development efforts.
#### 6.2.3. Expectations
Clearly communicate what information is needed and why it's necessary. Be mindful of data privacy when requesting additional information. Establish and communicate timeframes for expected responses to manage the issue lifecycle efficiently.
May involve compliance deadlines or contractual obligations that need to be met. Could impact project timelines, potentially affecting agreements with stakeholders or clients.
### 6.3. Disclaimer
### 6.3. `priority: medium`
Conversation labels indicate ongoing dialogue and do not guarantee that an issue will be implemented or resolved in a specific manner. Participants should understand that project priorities and decisions may change based on new information or project direction.
#### 6.3.1. Purpose
## 7. Pull Request Labels
Indicates issues that need resolution as soon as possible but are not blocking other development.
Pull Request (PR) labels are used to indicate the current status of pull requests and guide contributors through the review and merge process.
#### 6.3.2. Characteristics
### 7.1. `pull: merge conflict`
Important for project improvement but not critical for current functionality. Should be addressed in a timely manner but with less urgency than high-priority issues.
#### 6.3.3. Expectations
May involve improvements to user experience or accessibility, which could have legal implications if neglected long-term. Could relate to optimisations that affect performance guarantees or service level agreements.
### 6.4. `priority: low`
#### 6.4.1. Purpose
Represents issues that should be resolved but are not considered urgent.
#### 6.4.2. Characteristics
Desirable improvements or minor issues that don't significantly impact project functionality.
#### 6.4.3. Expectations
While not urgent, neglecting these issues over time could lead to technical debt or gradual degradation of project quality, potentially affecting long-term compliance or user satisfaction.
### 6.5. `priority: none`
#### 6.5.1. Purpose
Identifies "nice-to-have" issues that are not essential for project functionality or immediate development goals.
#### 6.5.2. Characteristics
Not critical enough to dedicate maintainer time for resolution. Often left for future consideration or when team capacity allows.
#### 6.5.3. Expectations
While not prioritised, maintainers should periodically review these issues to ensure they haven't become more significant over time, potentially accruing legal or compliance risks.
### 6.6. Disclaimer
Priority labels reflect the project maintainers' current assessment and may be subject to change. The presence of a lower-priority label does not diminish the importance of the issue or the value of contributions addressing it. Contributors should communicate with maintainers if they believe an issue's priority should be reassessed due to new information or changing circumstances.
## 7. Status Labels
Status labels indicate the current stage of an issue in the project lifecycle. These labels help manage workflow and set expectations for contributors and users.
### 7.1. `status: awaiting triage`
#### 7.1.1. Purpose
Indicates that the pull request has conflicts with the target branch.
Identifies newly created issues that have not yet been reviewed by the maintainer team.
#### 7.1.2. Characteristics
Conflicts need to be resolved before the PR can be reviewed or merged. May require action from the original contributor or project maintainers.
Should be applied to issues when they are opened.
#### 7.1.3. Expectations
Clearly communicate the responsibility for resolving conflicts (e.g., whether it's the contributor's or maintainer's role). Ensure that conflict resolution doesn't introduce unintended changes or legal issues (e.g., license conflicts).
Contributors should be aware that engaging with these issues is at their own discretion, as the project team has not yet evaluated them. Maintainers should establish a reasonable timeframe for initial triage to manage expectations and potential liability.
### 7.2. `pull: ready for review`
### 7.2. `status: blocked`
#### 7.2.1. Purpose
Signifies that the pull request is not in draft mode and is awaiting maintainer review.
Indicates issues with a planned resolution that depend on the completion of another issue.
#### 7.2.2. Characteristics
PR has been submitted as complete and ready for evaluation. Maintainers should prioritize reviewing these PRs.
Not yet ready for work but expected to be addressed in the future.
#### 7.2.3. Expectations
Ensure contributors understand that "ready for review" doesn't guarantee acceptance or merging. Maintain clear review criteria and communicate them to contributors.
Maintainers should clearly document dependencies to avoid potential conflicts or misunderstandings. Regular review of blocked issues is advisable to prevent indefinite delays that could impact project timelines or contractual obligations.
### 7.3. `pull: requires update`
### 7.3. `status: discarded`
#### 7.3.1. Purpose
Indicates that the maintainer team has requested changes to the pull request.
Designates issues that the project team does not intend to resolve.
#### 7.3.2. Characteristics
Feedback has been provided, and updates are needed before further review or merging. Requires action from the contributor to address the requested changes.
Typically applied to feature requests that don't align with project goals.
#### 7.3.3. Expectations
Clearly communicate the rationale for discarding issues to manage user expectations and maintain transparency. Ensure that discarded issues don't conflict with any promised features or contractual obligations.
### 7.4. `status: discontinued`
#### 7.4.1. Purpose
Applies to feature requests for projects in maintenance mode.
#### 7.4.2. Characteristics
Indicates no new features will be added, but bug fixes and support continue.
#### 7.4.3. Expectations
Clearly communicate the project's maintenance status to manage user expectations and potential liability. Ensure that discontinuation doesn't breach any ongoing support agreements or licenses.
### 7.5. `status: label work required`
#### 7.5.1. Purpose
Indicates issues that need proper labelling and categorisation.
#### 7.5.2. Characteristics
May have ongoing discussions but lack appropriate classification.
#### 7.5.3. Expectations
Proper labelling is crucial for efficient project management and may have implications for compliance tracking and reporting. Establish clear guidelines for labelling to ensure consistency and avoid potential misunderstandings.
### 7.6. `status: ready for dev`
#### 7.6.1. Purpose
Signifies issues that are ready for contribution.
#### 7.6.2. Characteristics
May have an assigned contributor who has expressed interest.
#### 7.6.3. Finding Ready-to-Work Tickets
All properly triaged tickets with the `status: ready for dev` label are available on our **Staff Tickets** project board: https://git.nhcarrigan.com/nhcarrigan/-/projects/2
Team members should refer to this project board to find tickets that are ready to be worked on.
#### 7.6.4. Expectations
Clearly communicate contribution guidelines and any legal requirements (e.g., Contributor Covenant) to potential contributors. Ensure that collaborative efforts are managed in compliance with project licenses and contributor agreements.
### 7.7. `status: ticket work required`
#### 7.7.1. Purpose
Indicates issues lacking sufficient information for proper triage.
#### 7.7.2. Characteristics
Often paired with Conversation Labels for further clarification.
#### 7.7.3. Expectations
Establish clear guidelines for required information to avoid potential misunderstandings or misdirected efforts. Be mindful of data privacy when requesting additional information from issue reporters.
### 7.8. Disclaimer
Status labels reflect the current assessment of the project team and may change as circumstances evolve. While the project team strives to maintain accurate status labels, contributors and users should communicate with maintainers if they notice any discrepancies or have questions about an issue's status.
## 8. Conversation Labels
Conversation labels indicate that an issue has received initial maintainer attention but requires further discussion or information before proceeding. These labels help manage communication and ensure all necessary information is gathered before taking action.
### 8.1. `talk: discussion`
#### 8.1.1. Purpose
Identifies issues that are under active discussion but have not yet been accepted for resolution.
#### 8.1.2. Characteristics
Ongoing dialogue between maintainers, contributors, and/or users. May involve debates about feature requests, implementation strategies, or project direction.
#### 8.1.3. Expectations
Ensure discussions remain constructive and adhere to the project's code of conduct. Be cautious about making commitments or promises during discussions that could create legal obligations. Document key decisions and rationales to maintain transparency and provide a record for future reference.
### 8.2. `talk: question`
#### 8.2.1. Purpose
Indicates issues waiting on additional information from the author for proper triage.
#### 8.2.2. Characteristics
Requires clarification or more details from the issue creator. Cannot proceed with triage or resolution until the requested information is provided.
#### 8.2.3. Expectations
Clearly communicate what information is needed and why it's necessary. Be mindful of data privacy when requesting additional information. Establish and communicate timeframes for expected responses to manage the issue lifecycle efficiently.
### 8.3. Disclaimer
Conversation labels indicate ongoing dialogue and do not guarantee that an issue will be implemented or resolved in a specific manner. Participants should understand that project priorities and decisions may change based on new information or project direction.
## 9. Pull Request Labels
Pull Request (PR) labels are used to indicate the current status of pull requests and guide contributors through the review and merge process.
### 9.1. `pull: merge conflict`
#### 9.1.1. Purpose
Indicates that the pull request has conflicts with the target branch.
#### 9.1.2. Characteristics
Conflicts need to be resolved before the PR can be reviewed or merged. May require action from the original contributor or project maintainers.
#### 9.1.3. Expectations
Clearly communicate the responsibility for resolving conflicts (e.g., whether it's the contributor's or maintainer's role). Ensure that conflict resolution doesn't introduce unintended changes or legal issues (e.g., license conflicts).
### 9.2. `pull: ready for review`
#### 9.2.1. Purpose
Signifies that the pull request is not in draft mode and is awaiting maintainer review.
#### 9.2.2. Characteristics
PR has been submitted as complete and ready for evaluation. Maintainers should prioritise reviewing these PRs.
#### 9.2.3. Expectations
Ensure contributors understand that "ready for review" doesn't guarantee acceptance or merging. Maintain clear review criteria and communicate them to contributors.
### 9.3. `pull: requires update`
#### 9.3.1. Purpose
Indicates that the maintainer team has requested changes to the pull request.
#### 9.3.2. Characteristics
Feedback has been provided, and updates are needed before further review or merging. Requires action from the contributor to address the requested changes.
#### 9.3.3. Expectations
Clearly document requested changes to maintain transparency and avoid misunderstandings. Consider setting timeframes for updates to manage the PR lifecycle effectively.
### 7.4. Disclaimer
### 9.4. Disclaimer
The presence of these labels does not guarantee that a pull request will be merged. All contributions must still meet the project's quality standards, guidelines, and legal requirements.
## 8. Continuous Improvement
## 10. Continuous Improvement
We encourage all project participants to provide feedback on our labeling system. If you have suggestions for improvements or notice any inconsistencies, please reach out to us in our [forums](https://forum.nhcarrigan.com).
We encourage all project participants to provide feedback on our labelling system. If you have suggestions for improvements or notice any inconsistencies, please reach out to us in our [Discord community](https://chat.nhcarrigan.com).
## 9. Legal Notice
## 11. Legal Notice
This labels documentation is provided for informational purposes and to facilitate project management. It does not constitute a legal agreement. All contributions to the project must comply with the project's license, contributor agreement (if applicable), and relevant laws and regulations.
+92 -19
View File
@@ -2,17 +2,37 @@
title: Server Setup
---
This document outlines how we set up our remote servers for running projects.
**ESTABLISHING SERVER CONFIGURATION STANDARDS AND SECURITY REQUIREMENTS**
## 1. Provision a Server
## 1. INTRODUCTION AND LEGAL FRAMEWORK
### 1.1. Policy Overview
This Server Setup Documentation (hereinafter referred to as "the Documentation") establishes mandatory standards, procedures, and security requirements for configuring remote servers used to host projects maintained by our organisation. This Documentation operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Security Policy, and all applicable legal protections by reference.
### 1.2. Scope and Applicability
This Documentation applies to all remote servers used to host projects, services, or infrastructure maintained by our organisation. All personnel responsible for server configuration, deployment, or maintenance must comply with the standards set forth in this Documentation.
**IMPORTANT: Non-compliance with server security and configuration standards set forth in this Documentation may result in security vulnerabilities, service disruptions, or other serious consequences. All server administrators must strictly adhere to these requirements.**
### 1.3. Security and Compliance Requirements
Server configuration must comply with:
- Our Security Policy and security standards
- Applicable data protection and privacy regulations
- Industry best practices for server security
- All relevant legal and regulatory requirements
## 2. PROVISIONING A SERVER
We use DigitalOcean as our provider. Regardless of your choice, provision a new VPS using the **latest Ubuntu LTS version**. Add your `ssh` key AND Naomi's `ssh` key in the setup process.
## 2. Set Up User
## 3. SETTING UP USER ACCOUNTS
You should never run applications on root. SSH into the new VPS to prepare your user.
### 2.1. Creating the User
### 3.1. Creating the User Account
You'll need to set a password for the `root` account first.
@@ -22,10 +42,10 @@ passwd
Once you have set a password, ensure that you have provided it to Naomi to store in the vault.
Create an `nhcarrigan` user for our organisation.
Create an `NHCarrigan` user for our organisation.
```bash
adduser nhcarrigan
adduser NHCarrigan
```
Set a **different** password, and provide that to Naomi as well. For all of the user information, use the default blank values.
@@ -33,13 +53,13 @@ Set a **different** password, and provide that to Naomi as well. For all of the
Add the new user to the sudoers file.
```bash
usermod -aG sudo nhcarrigan
usermod -aG sudo NHCarrigan
```
Then sync the SSH keys so we can authenticate as that user.
```bash
rsync --archive --chown=nhcarrigan:nhcarrigan ~/.ssh /home/nhcarrigan
rsync --archive --chown=NHCarrigan:NHCarrigan ~/.ssh /home/NHCarrigan
```
While you are there, set the timezone for the server to our business' local timezone.
@@ -48,11 +68,11 @@ While you are there, set the timezone for the server to our business' local time
sudo timedatectl set-timezone America/Los_Angeles
```
## 3. Preparing For Web Requests
## 4. PREPARING FOR WEB REQUESTS
To prepare the server to receive web requests, you'll need to follow a few steps.
### 3.1. SSL Certificate
### 4.1. SSL Certificate Configuration
:::note
If the Firewall has been set up, you'll need to temporarily allow port 80 for the certificate to generate.
@@ -88,7 +108,7 @@ When you need to renew the certificate:
sudo certbot renew
```
### 3.2. NGINX
### 4.2. NGINX Configuration
All requests should be routed through NGINX. At no point should an application run directly on ports 80 or 443.
@@ -133,11 +153,11 @@ If so, restart NGINX to apply the changes:
sudo systemctl restart nginx
```
## 4. Securing the Server
## 5. SECURING THE SERVER
We have a minimum level of security that is required on ALL of our servers. This section should not be treated as the best effort, but as the minimal requirements to comply with our policies.
### 4.1. Firewall
### 5.1. Firewall Configuration
We use `ufw` as our firewall. First, enable the SSH port.
@@ -158,7 +178,7 @@ Enable the firewall. You may get dropped from the SSH connection.
sudo ufw enable
```
### 4.2. Fail2Ban
### 5.2. Fail2Ban Configuration
We also use Fail2Ban to block IP addresses which fail to make requests too often.
@@ -289,7 +309,7 @@ And to unban them:
sudo fail2ban-client set nginx-auth unbanip <ip>
```
## 5. Uploading a Project
## 6. UPLOADING PROJECTS
To upload a project, you should **not** use `git` to clone the project to the machine. Instead, start by cloning the project to your local environment and navigating to the directory:
@@ -301,14 +321,14 @@ cd /path/to/project
Then sync the project up to the machine, ignoring any installed packages.
```bash
rsync -av --exclude='node_modules' ./ <server name>:/home/nhcarrigan/<project directory>
rsync -av --exclude='node_modules' ./ <server name>:/home/NHCarrigan/<project directory>
```
## 6. Running a Project
## 7. RUNNING PROJECTS
Now you are ready to start running the project.
### 6.1. Node.js
### 7.1. Node.js Setup
Most of our projects will run on Node. For a new machine, you'll need to set that up.
@@ -338,7 +358,7 @@ Finally, install `pnpm` as the package manager.
npm i -g pnpm
```
### 6.2. PM2
### 7.2. PM2 Process Management
All of our processes run with PM2 to allow for monitoring and auto-restarts. You'll need to install it.
@@ -353,3 +373,56 @@ pm2 start '<script>' --name '<name>'
```
Then run `pm2 save` to save the application list.
## 8. LIMITATION OF LIABILITY AND DISCLAIMERS
### 8.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, and maximum liability caps are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 8.2. Server Configuration Disclaimer
This Documentation establishes mandatory security and configuration standards. However, compliance with these standards does not guarantee:
- Complete protection against all security threats or vulnerabilities
- Uninterrupted service availability or performance
- Compatibility with all applications or use cases
- Protection against all forms of attack or compromise
### 8.3. Security Disclaimer
While this Documentation establishes security requirements, server administrators are responsible for:
- Implementing additional security measures appropriate to their specific threat environment
- Regularly updating and patching all software and dependencies
- Monitoring server logs and security alerts
- Responding promptly to security incidents
- Maintaining compliance with all applicable security regulations and standards
### 8.4. Third-Party Services and Tools
This Documentation references various third-party services, tools, and software packages. Our organisation:
- Does not guarantee the security, availability, or functionality of third-party services
- Is not responsible for issues arising from the use of third-party tools or services
- Recommends that administrators review third-party licenses, terms of service, and security practices
- Does not provide support for third-party tools beyond what is necessary for project functionality
### 8.5. Technical Accuracy Disclaimer
While we strive to maintain accurate and current information in this Documentation, technical standards, software versions, and security best practices evolve continuously. Server administrators are responsible for:
- Verifying current software versions and compatibility
- Adapting configurations to their specific system requirements
- Ensuring compliance with current security standards and regulations
- Consulting additional resources for the most current security recommendations
## 9. CONCLUSION
This Server Setup Documentation establishes mandatory standards and procedures for configuring remote servers used to host projects maintained by our organisation. Strict adherence to these requirements is essential for maintaining security, reliability, and compliance with our organisational policies and legal obligations.
All personnel responsible for server configuration, deployment, or maintenance must familiarise themselves with and comply with the requirements set forth in this Documentation. Questions about server configuration requirements or security standards should be directed to appropriate technical leadership through designated communication channels.
---
*For questions about server configuration requirements or to suggest improvements, please contact technical leadership through the designated channels outlined in our Security Policy.*
+73 -19
View File
@@ -2,27 +2,47 @@
title: Style Guide
---
This document outlines the style guide that applies to all of our projects.
**ESTABLISHING CODE STYLE STANDARDS AND CONVENTIONS FOR ALL PROJECTS**
## 1. Global Conventions
## 1. INTRODUCTION AND LEGAL FRAMEWORK
### 1.1. Policy Overview
This Style Guide (hereinafter referred to as "the Guide") establishes mandatory code style standards, conventions, and formatting requirements applicable to all projects maintained by our organisation. This Guide operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Contributor Covenant, and all applicable legal protections by reference.
### 1.2. Scope and Applicability
This Guide applies to all code contributions, regardless of contributor status, project type, or development context. All contributors are required to comply with the standards set forth in this Guide.
**IMPORTANT: Non-compliance with this Guide may result in rejection of contributions, requests for modification, or other appropriate actions as determined by project maintainers.**
### 1.3. Legal Compliance and Intellectual Property
All code contributions must comply with:
- Our global software licence: Naomi's Public Licence
- Contributor Covenant requirements
- Applicable intellectual property laws and regulations
- Export control and data protection requirements
## 2. GLOBAL CONVENTIONS
These sections apply to all code in any of our projects.
### 1.1. Copyright Notice
### 2.1. Copyright Notice
All code files should begin with a comment section containing the copyright information:
```js
/**
* @copyright nhcarrigan
* @license Naomi's Public License
* @copyright NHCarrigan
* @license Naomi's Public Licence
* @author Naomi Carrigan
*/
```
Note that `copyright` _must_ be assigned to `nhcarrigan`, and our `license` must be applied, but when checking in new code you may attribute yourself as the author, or add yourself to the list for existing code.
Note that `copyright` _must_ be assigned to `NHCarrigan`, and our `license` must be applied, but when checking in new code you may attribute yourself as the author, or add yourself to the list for existing code.
## 2. JavaScript Projects
## 3. JAVASCRIPT AND TYPESCRIPT PROJECTS
The following sections apply to our JavaScript/TypeScript projects. Style conventions are enforced through our [custom ESLint package](/projects/eslint).
@@ -43,11 +63,11 @@ If you are using VSCode, you can add this to your `.vscode/settings.json` file i
Because of this, our style guide will not cover the formatting section of our linter package.
:::
## 2.1. Main Rules
### 3.1. Main Rules
These rules apply to all TypeScript code, and will run on files in `src/**/*.ts`.
### 2.1.1. `eslint` Enforced Rules
#### 3.1.1. ESLint Enforced Rules
- Setters must have a corresponding getter.
- Array methods which return a value must return a value in the callback.
@@ -193,7 +213,7 @@ These rules apply to all TypeScript code, and will run on files in `src/**/*.ts`
- `typeof` comparators must be a valid return type of `typeof`.
- Conditions should always start with the variable, not the constant.
### 2.1.2. `typescript-eslint` Enforced Rules
#### 3.1.2. TypeScript-ESLint Enforced Rules
- Do not use `await` on functions that do not return a Promise.
- Exported type definitions should use the `export type` keyword.
@@ -297,16 +317,16 @@ These rules apply to all TypeScript code, and will run on files in `src/**/*.ts`
- Do not use TypeScript's `///` reference.
- Do not use overloads when the same result can be achieved via union types or optional parameters.
### 2.1.3. `eslint-comments` Enforced Rules
#### 3.1.3. ESLint-Comments Enforced Rules
- Do not use blanket `eslint-disable` directives. All `disable` directives must target specific rules.
- All `disable` directives must include a comment explaining why the linter is being bypassed.
### 2.1.4. `deprecation` Enforced Rules
#### 3.1.4. Deprecation Enforced Rules
- Do not use deprecated methods/features, even if the package still supports them.
### 2.1.5. `import` Enforced Rules
#### 3.1.5. Import Enforced Rules
- Do not use default imports if the module does not have a default export.
- Do not import modules simply to re-export them.
@@ -333,7 +353,7 @@ These rules apply to all TypeScript code, and will run on files in `src/**/*.ts`
- Imports must be sorted alphabetically, first grouped by: builtin node modules, external packages, internal packages, modules in parent directory, modules in current directory, type-only imports.
- There should be no new lines between these groups.
### 2.1.6. `jsdoc` Enforced Rules
#### 3.1.6. JSDoc Enforced Rules
- `@access` tags should be one of `package`, `private`, `protected`, or `public`.
- Asterisks should be aligned.
@@ -343,7 +363,7 @@ These rules apply to all TypeScript code, and will run on files in `src/**/*.ts`
- Should not use `=` (GCC syntax).
- All tags must be valid JSDoc tags.
- `@template` names should be used in the `@typedef`.
- `@license` tag MUST be set to `Naomi's Public License`.
- `@license` tag MUST be set to `Naomi's Public Licence`.
- Tags that do not expect content should not have content.
- `@implements` should only be used on constructors or classes.
- Tag descriptions should not be just a reflection of the name.
@@ -363,7 +383,7 @@ These rules apply to all TypeScript code, and will run on files in `src/**/*.ts`
- There should be no blank lines between tags.
- Any types referenced must be valid types.
### 2.1.7. `unicorn` Enforced Rules
#### 3.1.7. Unicorn Enforced Rules
- Regular expressions should use special shorthand where possible.
- `catch` blocks should always have `error` as the parameter.
@@ -433,7 +453,7 @@ These rules apply to all TypeScript code, and will run on files in `src/**/*.ts`
- `Array.join()` must always be given a separator.
- `Number.toFixed()` must always be given a digits argument.
## 2.2. React Rules
### 3.2. React Rules
These rules apply to TSX, and will run on files in `src/**/*.tsx`.
@@ -499,7 +519,7 @@ These rules apply to TSX, and will run on files in `src/**/*.tsx`.
- The `style` property must always be an object.
- Void elements `img`, `br` etc. must never have children.
## 2.3. Playwright Rules
### 3.3. Playwright Rules
These files apply to Playwright End-to-end tests, and will run on `e2e/**/*.spec.ts`.
@@ -542,7 +562,7 @@ These files apply to Playwright End-to-end tests, and will run on `e2e/**/*.spec
- Promises that contain an `expect` must be awaited.
- Tests must have a title that is not empty.
## 2.4. Vitest Rules
### 3.4. Vitest Rules
These files apply to Vitest unit tests, and will run on `test/**/*.spec.ts`.
@@ -593,3 +613,37 @@ We also mandate the use of `describe`, `it`, and `expect` over `suite`, `test`,
- The `describe` callback should not have any parameters and cannot use `return`.
- All `expect()` calls must have a custom message.
- Tests must have a title that is not empty.
## 4. LIMITATION OF LIABILITY AND DISCLAIMERS
### 4.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, and maximum liability caps are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 4.2. Style Guide Disclaimer
This Guide establishes mandatory standards for code contributions. However, compliance with this Guide does not guarantee acceptance of contributions. Project maintainers reserve the right to:
- Request modifications to code that complies with this Guide
- Reject contributions for reasons beyond style compliance
- Modify or update this Guide at any time without prior notice
- Interpret Guide requirements in specific contexts as necessary
### 4.3. Technical Accuracy Disclaimer
While we strive to maintain accurate and current information in this Guide, technical standards, tooling, and best practices evolve continuously. Contributors are responsible for:
- Verifying current tool versions and compatibility
- Ensuring their development environment matches project requirements
- Adapting to updates in this Guide as they are published
- Consulting project-specific documentation for additional requirements
## 5. CONCLUSION
This Style Guide represents our commitment to maintaining high-quality, consistent, and maintainable code across all projects. By adhering to these standards, contributors help ensure that our codebase remains accessible, professional, and aligned with industry best practices.
All contributors are expected to familiarise themselves with and comply with the requirements set forth in this Guide. Questions about specific requirements or requests for clarification should be directed to project maintainers through appropriate communication channels.
---
*For questions about style requirements or to suggest improvements, please contact project maintainers through the designated channels outlined in our Contributor Covenant.*
+1 -13
View File
@@ -6,19 +6,7 @@ hero:
tagline:
This site contains all of the documentation related to NHCarrigan, its Policies, and its Projects.
actions:
- text: Mission Statement
- text: Let's Go!
link: /about/mission/
variant: secondary
- text: Code of Conduct
link: /community/coc/
variant: secondary
- text: Contributing Guide
link: /dev/contributing/
variant: secondary
- text: Software License
link: /legal/license/
variant: secondary
- text: Contact Us
link: /about/contact/
variant: secondary
---
+57 -69
View File
@@ -6,15 +6,15 @@ title: Acceptable Use Policy
## 1. INTRODUCTION AND SCOPE
### 1.1 Policy Purpose
### 1.1. Policy Purpose
This Acceptable Use Policy ("AUP") establishes comprehensive guidelines for the appropriate use of all services, applications, and platforms provided by nhcarrigan ("we," "us," "our," or "the Company"). This AUP supplements our Terms of Service and other applicable policies to provide detailed guidance on acceptable and prohibited usage patterns.
This Acceptable Use Policy ("AUP") establishes comprehensive guidelines for the appropriate use of all services, applications, and platforms provided by NHCarrigan ("we," "us," "our," or "the Company"). This AUP operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, and all applicable legal protections by reference, and supplements these policies to provide detailed guidance on acceptable and prohibited usage patterns.
### 1.2 Scope of Application
### 1.2. Scope of Application
This AUP applies to all users of our Services, including:
**(a)** All websites, web applications, and online platforms operated by nhcarrigan;
**(a)** All websites, web applications, and online platforms operated by NHCarrigan;
**(b)** Application Programming Interfaces (APIs) and related development tools;
@@ -24,23 +24,11 @@ This AUP applies to all users of our Services, including:
**(e)** Support services, documentation, and auxiliary platforms;
**(f)** Any other services, platforms, or tools provided by nhcarrigan.
**(f)** Any other services, platforms, or tools provided by NHCarrigan.
### 1.3 Integration with Other Policies
### 1.3. Integration with Other Policies
This AUP operates in conjunction with our comprehensive policy framework:
**(a)** Our Terms of Service, which establish the fundamental legal relationship;
**(b)** Our Community Code of Conduct, which governs community interactions;
**(c)** Our Privacy Policy, which governs data collection and processing;
**(d)** Our Service Level Agreement and Warranty Disclaimer, which define service expectations and warranties;
**(e)** Our Content and Moderation Policy, which establishes detailed content standards and moderation procedures;
**(f)** Our Limitation of Liability and Indemnification Policy, which governs all liability and risk allocation matters;
This AUP operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, Service Level Agreement, Content and Moderation Policy, Limitation of Liability and Indemnification Policy, and all applicable legal protections by reference.
**(g)** Our Export Control and Sanctions Compliance Policy, which governs international trade compliance;
@@ -50,13 +38,13 @@ This AUP operates in conjunction with our comprehensive policy framework:
Where conflicts arise between policies, the most restrictive terms shall apply to ensure maximum protection for all users and our organisation.
### 1.4 Acceptance and Compliance
### 1.4. Acceptance and Compliance
By accessing or using any of our Services, you acknowledge that you have read, understood, and agree to comply with this AUP. Continued use of the Services constitutes ongoing acceptance of these terms and any modifications we may make.
## 2. GENERAL ACCEPTABLE USE PRINCIPLES
### 2.1 Fundamental Usage Principles
### 2.1. Fundamental Usage Principles
All use of our Services must be consistent with the following principles:
@@ -70,7 +58,7 @@ All use of our Services must be consistent with the following principles:
**(e)** **Security Awareness**: Users must take reasonable precautions to maintain security and report potential security issues.
### 2.2 Community Standards
### 2.2. Community Standards
Our Services are designed to foster positive, inclusive communities. All usage must:
@@ -84,7 +72,7 @@ Our Services are designed to foster positive, inclusive communities. All usage m
**(e)** **Respect Boundaries**: Acknowledge and respect other users' boundaries and preferences.
### 2.3 Ethical Usage Requirements
### 2.3. Ethical Usage Requirements
Users are expected to:
@@ -100,7 +88,7 @@ Users are expected to:
## 3. PROHIBITED ACTIVITIES AND CONTENT
### 3.1 Illegal Activities
### 3.1. Illegal Activities
Users are strictly prohibited from using our Services for:
@@ -120,7 +108,7 @@ Users are strictly prohibited from using our Services for:
**(h)** **Human Trafficking**: Any form of human trafficking or exploitation.
### 3.2 Abuse and Harassment
### 3.2. Abuse and Harassment
Our Services may not be used for:
@@ -140,7 +128,7 @@ Our Services may not be used for:
**(h)** **Discrimination**: Content or behaviour that discriminates against individuals or groups.
### 3.3 Spam and Unsolicited Communications
### 3.3. Spam and Unsolicited Communications
Prohibited spam and unsolicited communication activities include:
@@ -160,7 +148,7 @@ Prohibited spam and unsolicited communication activities include:
**(h)** **Referral Abuse**: Manipulating referral or affiliate programmes through deceptive means.
### 3.4 Technical Abuse and Security Violations
### 3.4. Technical Abuse and Security Violations
Users may not engage in:
@@ -180,7 +168,7 @@ Users may not engage in:
**(h)** **Circumvention**: Bypassing security measures, access controls, or usage limitations.
### 3.5 Intellectual Property Violations
### 3.5. Intellectual Property Violations
Prohibited intellectual property violations include:
@@ -200,7 +188,7 @@ Prohibited intellectual property violations include:
**(h)** **False Attribution**: Misrepresenting the source or ownership of intellectual property.
### 3.6 Harmful Content
### 3.6. Harmful Content
**Reference to Content and Moderation Policy**: Detailed standards for prohibited content, including violent, adult, exploitative, and harmful content, are comprehensively covered in our Content and Moderation Policy, which is incorporated herein by reference.
@@ -208,7 +196,7 @@ Users may not upload, share, or distribute any content that violates the standar
## 4. SPECIFIC PLATFORM USAGE GUIDELINES
### 4.1 Community Platform Usage
### 4.1. Community Platform Usage
When using our community forums, chat services, and interactive platforms:
@@ -228,7 +216,7 @@ When using our community forums, chat services, and interactive platforms:
**(h)** **Language Standards**: Use clear, respectful language appropriate for the community context.
### 4.2 API and Development Tool Usage
### 4.2. API and Development Tool Usage
When using our APIs and development tools:
@@ -248,7 +236,7 @@ When using our APIs and development tools:
**(h)** **Updates**: Stay informed about API changes and update implementations accordingly.
### 4.3 Content Submission and Sharing
### 4.3. Content Submission and Sharing
When submitting or sharing content through our Services:
@@ -270,7 +258,7 @@ When submitting or sharing content through our Services:
## 5. COMMERCIAL AND BUSINESS USE
### 5.1 Permitted Commercial Activities
### 5.1. Permitted Commercial Activities
The following commercial activities are generally permitted when conducted in accordance with applicable terms:
@@ -290,7 +278,7 @@ The following commercial activities are generally permitted when conducted in ac
**(h)** **Research Activities**: Conducting legitimate research or academic studies.
### 5.2 Prohibited Commercial Activities
### 5.2. Prohibited Commercial Activities
The following commercial activities are prohibited:
@@ -310,7 +298,7 @@ The following commercial activities are prohibited:
**(h)** **Brand Confusion**: Using our brand or trademarks in ways that create confusion.
### 5.3 Commercial Use Authorisation
### 5.3. Commercial Use Authorisation
For commercial activities that may require special authorisation:
@@ -332,7 +320,7 @@ For commercial activities that may require special authorisation:
## 6. RESOURCE USAGE AND PERFORMANCE
### 6.1 Fair Use of System Resources
### 6.1. Fair Use of System Resources
Users must:
@@ -352,7 +340,7 @@ Users must:
**(h)** **Graceful Degradation**: Implement graceful degradation when resources are limited.
### 6.2 Prohibited Resource Usage
### 6.2. Prohibited Resource Usage
The following resource usage patterns are prohibited:
@@ -372,7 +360,7 @@ The following resource usage patterns are prohibited:
**(h)** **Storage Abuse**: Using storage services for inappropriate content or excessive backup purposes.
### 6.3 Performance Impact Mitigation
### 6.3. Performance Impact Mitigation
To minimise performance impact on other users:
@@ -394,7 +382,7 @@ To minimise performance impact on other users:
## 7. DATA HANDLING AND PRIVACY
### 7.1 Personal Data Protection
### 7.1. Personal Data Protection
Users must:
@@ -414,7 +402,7 @@ Users must:
**(h)** **Legal Compliance**: Comply with all applicable data protection laws and regulations.
### 7.2 Prohibited Data Practices
### 7.2. Prohibited Data Practices
Users may not:
@@ -434,7 +422,7 @@ Users may not:
**(h)** **Retention Abuse**: Retain personal data longer than necessary or permitted.
### 7.3 Data Security Requirements
### 7.3. Data Security Requirements
When handling data through our services:
@@ -456,7 +444,13 @@ When handling data through our services:
## 8. ENFORCEMENT AND COMPLIANCE
### 8.1 Monitoring and Detection
### 8.1. Monitoring and Detection
:::tip[Heads Up!]{icon=pen}
The policy or policies in this section are still a work in progress. We have not yet implemented the necessary infrastructure to comply with this section.
We are working very hard to get them in place as soon as possible. If you would like to help, consider [applying to join our team!](https://forms.nhcarrigan.com/o/docs/forms/mCxDu3snk9TzFiDjrT4Vc8/4)
:::
We employ various methods to monitor compliance with this AUP:
@@ -476,7 +470,7 @@ We employ various methods to monitor compliance with this AUP:
**(h)** **Behavioural Analysis**: Monitoring for suspicious or harmful behavioural patterns.
### 8.2 Violation Response Procedures
### 8.2. Violation Response Procedures
When violations are identified, we may take the following actions:
@@ -496,7 +490,7 @@ When violations are identified, we may take the following actions:
**(h)** **Law Enforcement**: Report criminal activities to appropriate law enforcement agencies.
### 8.3 Progressive Enforcement
### 8.3. Progressive Enforcement
Our enforcement approach generally follows a progressive model:
@@ -516,7 +510,7 @@ Our enforcement approach generally follows a progressive model:
**(h)** **Repeated Offenders**: Enhanced penalties for users with previous violation history.
### 8.4 Appeals and Review
### 8.4. Appeals and Review
Users may appeal enforcement actions through:
@@ -524,7 +518,7 @@ Users may appeal enforcement actions through:
**(b)** **Evidence Submission**: Opportunity to provide evidence and explanations;
**(c)** **Independent Review**: Review by staff members not involved in the original decision;
**(c)** **Independent Review**: Review by Team members not involved in the original decision;
**(d)** **Corrective Actions**: Opportunity to take corrective actions to address violations;
@@ -538,7 +532,7 @@ Users may appeal enforcement actions through:
## 9. REPORTING VIOLATIONS
### 9.1 Community Reporting
### 9.1. Community Reporting
We encourage users to report policy violations through:
@@ -558,7 +552,7 @@ We encourage users to report policy violations through:
**(h)** **Follow-up**: Follow-up communication about report status and outcomes.
### 9.2 What to Include in Reports
### 9.2. What to Include in Reports
Effective violation reports should include:
@@ -578,7 +572,7 @@ Effective violation reports should include:
**(h)** **Contact Information**: Your contact information for follow-up questions.
### 9.3 Reporter Protection
### 9.3. Reporter Protection
We are committed to protecting users who report violations:
@@ -600,7 +594,7 @@ We are committed to protecting users who report violations:
## 10. POLICY UPDATES AND MODIFICATIONS
### 10.1 Right to Modify
### 10.1. Right to Modify
We reserve the right to modify this AUP at any time to:
@@ -620,7 +614,7 @@ We reserve the right to modify this AUP at any time to:
**(h)** **Effectiveness**: Improve the effectiveness of policy enforcement.
### 10.2 Notification of Changes
### 10.2. Notification of Changes
Material changes to this AUP will be communicated through:
@@ -636,11 +630,11 @@ Material changes to this AUP will be communicated through:
**(f)** **Version History**: Maintained version history of policy changes;
**(g)** **Effective Date Notice**: Clear indication of when changes become effective;
**(g)** **Change Notice**: Clear indication of when changes become effective;
**(h)** **Transition Periods**: Reasonable transition periods for compliance with new requirements.
### 10.3 User Response to Changes
### 10.3. User Response to Changes
Following notification of policy changes:
@@ -662,7 +656,7 @@ Following notification of policy changes:
## 11. CONTACT INFORMATION AND SUPPORT
### 11.1 Policy Questions and Clarifications
### 11.1. Policy Questions and Clarifications
For questions about this AUP:
@@ -670,19 +664,21 @@ For questions about this AUP:
**Subject Line:** AUP Inquiry - [Brief Description]
**Response Time:** Within 3 business days for policy clarification requests
**Response Time:** Within 7-10 business days for policy clarification requests
### 11.2 Violation Reporting
### 11.2. Violation Reporting
To report policy violations:
**Incident Report Form** (Preferred): Submit reports through our official Incident Report Form: https://forms.nhcarrigan.com/o/docs/forms/t7CYeYS4uyUuLiKFatoEvs/4
**Email:** abuse@nhcarrigan.com
**Subject Line:** Policy Violation Report - [Service/Platform]
**Response Time:** Within 24 hours for urgent safety issues, 48 hours for standard reports
**Response Time:** Within 7-10 business days for all reports
### 11.3 Appeals and Disputes
### 11.3. Appeals and Disputes
For appeals related to AUP enforcement:
@@ -692,23 +688,15 @@ For appeals related to AUP enforcement:
**Process:** Follow our Community Appeals Policy procedures
### 11.4 Technical Support
### 11.4. Technical Support
For technical issues related to policy compliance:
**Email:** support@nhcarrigan.com
**Community Forum:** https://forum.nhcarrigan.com
**Discord Community:** https://chat.nhcarrigan.com
**Response Time:** Within 48 hours for technical support requests
**Document Version:** 1.0
**Last Updated:** 15 September 2025
**Effective Date:** 15 September 2025
**Next Review Date:** 15 September 2026
**Response Time:** Within 7-10 business days for technical support requests
---
@@ -6,18 +6,18 @@ title: Community Growth Policy
## 1. POLICY OVERVIEW AND COMMITMENT
### 1.1 Growth Philosophy and Values
### 1.1. Growth Philosophy and Values
This Community Growth Policy establishes ethical guidelines for how community members can contribute to sustainable, values-aligned community growth. Our approach prioritizes quality relationships over quantity metrics, emphasizing authentic connection, mutual support, and alignment with our core values of social justice, inclusivity, and community empowerment.
This Community Growth Policy establishes ethical guidelines for how community members can contribute to sustainable, values-aligned community growth. Our approach prioritises quality relationships over quantity metrics, emphasising authentic connection, mutual support, and alignment with our core values of social justice, inclusivity, and community empowerment.
### 1.2 Core Growth Principles
### 1.2. Core Growth Principles
**Values-Driven Growth:**
- **Quality Over Quantity**: Focus on meaningful connections rather than numerical growth
- **Authentic Engagement**: Genuine interest in community values and participation
- **Mutual Benefit**: Growth that benefits both new and existing community members
- **Sustainable Practices**: Growth approaches that support long-term community health
- **Inclusive Representation**: Prioritizing diversity and representation in growth efforts
- **Inclusive Representation**: Prioritising diversity and representation in growth efforts
**Anti-Exploitation Stance:**
- **No Predatory Recruitment**: Reject targeting vulnerable individuals for growth purposes
@@ -26,20 +26,20 @@ This Community Growth Policy establishes ethical guidelines for how community me
- **Boundary Respect**: Recognition of personal and cultural boundaries in outreach efforts
- **Community Autonomy**: Support for community self-determination and organic growth
### 1.3 Integration with Community Values
### 1.3. Integration with Community Values
**Social Justice Alignment:**
- **Anti-Oppression Focus**: Growth efforts that actively support marginalized communities
- **Accessibility Prioritization**: Ensuring growth includes people with diverse abilities and needs
- **Anti-Oppression Focus**: Growth efforts that actively support marginalised communities
- **Accessibility Prioritisation**: Ensuring growth includes people with diverse abilities and needs
- **Economic Justice**: Growth that doesn't exclude people based on economic circumstances
- **Environmental Responsibility**: Sustainable growth practices that minimize environmental impact
- **Environmental Responsibility**: Sustainable growth practices that minimise environmental impact
- **Democratic Participation**: Growth that strengthens rather than dilutes community democracy
## 2. INDIVIDUAL MEMBER GROWTH CONTRIBUTIONS
### 2.1 Personal Network Outreach
### 2.1. Personal Network Outreach
#### 2.1.1 Authentic Relationship Building
#### 2.1.1. Authentic Relationship Building
**Effective Outreach Approaches:**
- **Share Personal Experiences**: Talk about what the community means to you personally
@@ -55,7 +55,7 @@ This Community Growth Policy establishes ethical guidelines for how community me
- **Support Integration**: Help new members find their place and feel welcome
- **Long-Term Perspective**: Focus on sustainable relationships rather than quick conversions
#### 2.1.2 Community Representation
#### 2.1.2. Community Representation
**Positive Community Representation:**
- **Authentic Engagement**: Represent the community accurately and honestly
@@ -71,9 +71,9 @@ This Community Growth Policy establishes ethical guidelines for how community me
- **No Exploitation**: Don't target people in vulnerable situations for recruitment purposes
- **Privacy Respect**: Don't share private information about community members or discussions
### 2.2 Content Creation and Sharing
### 2.2. Content Creation and Sharing
#### 2.2.1 Values-Aligned Content
#### 2.2.1. Values-Aligned Content
**Effective Content Strategies:**
- **Educational Resources**: Create content that educates about issues the community cares about
@@ -84,13 +84,13 @@ This Community Growth Policy establishes ethical guidelines for how community me
**Platform-Specific Approaches:**
- **Discord**: Share invites thoughtfully with context about what people can expect
- **Reddit**: Participate authentically in relevant subreddits while mentioning community when appropriate
- **Reddit**: Participate authentically in relevant subreddits whilst mentioning community when appropriate
- **Bluesky/Twitter**: Share community content and values-aligned information with appropriate hashtags
- **LinkedIn**: Professional content that demonstrates community values in professional contexts
- **GitHub**: Technical contributions and documentation that showcase community technical work
- **YouTube**: Educational or informational content that represents community values
#### 2.2.2 Ethical Content Practices
#### 2.2.2. Ethical Content Practices
**Content Quality Standards:**
- **Accuracy**: Ensure all content is accurate and well-researched
@@ -106,9 +106,9 @@ This Community Growth Policy establishes ethical guidelines for how community me
- **Respect Boundaries**: Don't share private community discussions or member information
- **Quality Control**: Don't create low-quality content that reflects poorly on the community
### 2.3 Event Participation and Hosting
### 2.3. Event Participation and Hosting
#### 2.3.1 Community Event Involvement
#### 2.3.1. Community Event Involvement
**Effective Event Participation:**
- **Active Engagement**: Participate meaningfully in community events and activities
@@ -117,20 +117,20 @@ This Community Growth Policy establishes ethical guidelines for how community me
- **Accessibility Support**: Help ensure events are accessible to diverse participants
- **Follow-Up Engagement**: Connect with new participants after events to support integration
**Event Hosting and Organization:**
**Event Hosting and Organisation:**
- **Values Integration**: Ensure all events reflect and support community values
- **Accessibility Planning**: Plan events that are accessible to people with diverse needs
- **Inclusive Environment**: Create environments where diverse participants feel welcome
- **Educational Component**: Include educational elements that support community growth
- **Community Benefit**: Focus on events that benefit both community and broader society
#### 2.3.2 External Event Representation
#### 2.3.2. External Event Representation
**Community Representation at External Events:**
- **Conference Participation**: Represent the community at relevant conferences and gatherings
- **Workshop Facilitation**: Offer workshops that showcase community values and approach
- **Panel Participation**: Participate in panels that advance community values and visibility
- **Networking Events**: Network authentically while representing community values
- **Networking Events**: Network authentically whilst representing community values
- **Educational Presentations**: Present about community work and impact
**Best Practices for External Representation:**
@@ -140,27 +140,27 @@ This Community Growth Policy establishes ethical guidelines for how community me
- **Follow-Up Systems**: Have systems in place to follow up with interested individuals
- **Community Coordination**: Coordinate with community leadership about external representation
## 3. ORGANIZATIONAL GROWTH STRATEGIES
## 3. ORGANISATIONAL GROWTH STRATEGIES
### 3.1 Partnership Development
### 3.1. Partnership Development
#### 3.1.1 Values-Aligned Partnerships
#### 3.1.1. Values-Aligned Partnerships
**Strategic Partnership Criteria:**
- **Shared Values**: Partner organizations must share core social justice values
- **Shared Values**: Partner organisations must share core social justice values
- **Complementary Mission**: Partnerships should enhance rather than compromise community mission
- **Mutual Benefit**: Partnerships should benefit all involved parties
- **Community Input**: Community members should have input on significant partnership decisions
- **Ethical Practices**: Partner organizations must demonstrate ethical practices and accountability
- **Ethical Practices**: Partner organisations must demonstrate ethical practices and accountability
**Partnership Development Process:**
- **Due Diligence**: Thorough research on potential partner organizations and their practices
- **Due Diligence**: Thorough research on potential partner organisations and their practices
- **Community Discussion**: Open community discussion about proposed partnerships
- **Trial Collaboration**: Start with small collaborative projects before formal partnerships
- **Regular Evaluation**: Ongoing evaluation of partnership effectiveness and alignment
- **Exit Strategies**: Clear processes for ending partnerships that no longer serve community values
#### 3.1.2 Cross-Platform Collaboration
#### 3.1.2. Cross-Platform Collaboration
**Multi-Platform Growth Strategies:**
- **Discord Integration**: Leverage Discord community for growth across other platforms
@@ -176,13 +176,13 @@ This Community Growth Policy establishes ethical guidelines for how community me
- **Community Building**: Focus on building authentic communities rather than just followers
- **Cross-Pollination**: Encourage organic connections between platform communities
### 3.2 Targeted Outreach and Recruitment
### 3.2. Targeted Outreach and Recruitment
#### 3.2.1 Diversity-Centred Recruitment
#### 3.2.1. Diversity-Centred Recruitment
**Priority Communities:**
- **Marginalized Identities**: Prioritize outreach to communities that are underrepresented in tech and social justice spaces
- **Geographic Diversity**: Seek geographic diversity while respecting cultural differences
- **Marginalised Identities**: Prioritise outreach to communities that are underrepresented in tech and social justice spaces
- **Geographic Diversity**: Seek geographic diversity whilst respecting cultural differences
- **Economic Accessibility**: Ensure growth includes people from diverse economic backgrounds
- **Accessibility Needs**: Actively recruit people with disabilities and diverse accessibility needs
- **Age Diversity**: Welcome participation across age groups and generational perspectives
@@ -192,13 +192,13 @@ This Community Growth Policy establishes ethical guidelines for how community me
- **Language Accessibility**: Provide materials in multiple languages when possible
- **Cultural Sensitivity**: Respect cultural differences in communication and participation styles
- **Community Liaisons**: Work with community members who have connections to underrepresented communities
- **Safe Space Creation**: Ensure outreach creates genuinely safe spaces for marginalized individuals
- **Safe Space Creation**: Ensure outreach creates genuinely safe spaces for marginalised individuals
#### 3.2.2 Interest-Based Community Building
#### 3.2.2. Interest-Based Community Building
**Skill and Interest Alignment:**
- **Technical Communities**: Outreach to technical communities interested in ethical technology
- **Social Justice Organizations**: Connection with organizations working on related social justice issues
- **Social Justice Organisations**: Connection with organisations working on related social justice issues
- **Gaming Communities**: Authentic participation in gaming communities with shared values
- **Educational Institutions**: Outreach to educational communities interested in community building
- **Professional Networks**: Engagement with professional networks focused on ethical practices
@@ -210,15 +210,15 @@ This Community Growth Policy establishes ethical guidelines for how community me
- **Capacity Assessment**: Assess community capacity for integrating new members effectively
- **Resource Planning**: Ensure adequate resources for supporting community growth
### 3.3 Brand Development and Messaging
### 3.3. Brand Development and Messaging
#### 3.3.1 Community Identity and Values Communication
#### 3.3.1. Community Identity and Values Communication
**Brand Messaging Principles:**
- **Authenticity**: All messaging should authentically represent community culture and values
- **Accessibility**: Communication should be accessible to diverse audiences
- **Inclusivity**: Messaging should welcome diverse participation and representation
- **Impact Focus**: Emphasize concrete community impact and social justice work
- **Impact Focus**: Emphasise concrete community impact and social justice work
- **Community Voice**: Brand should reflect diverse community voices rather than single perspectives
**Consistent Messaging Across Platforms:**
@@ -228,7 +228,7 @@ This Community Growth Policy establishes ethical guidelines for how community me
- **Accessibility Information**: Clear information about community accessibility and inclusion efforts
- **Participation Options**: Clear information about different ways to participate and contribute
#### 3.3.2 Marketing Ethics and Transparency
#### 3.3.2. Marketing Ethics and Transparency
**Ethical Marketing Practices:**
- **Honest Representation**: Never misrepresent community culture, benefits, or expectations
@@ -246,9 +246,9 @@ This Community Growth Policy establishes ethical guidelines for how community me
## 4. COMMUNITY INTEGRATION AND SUPPORT
### 4.1 New Member Onboarding
### 4.1. New Member Onboarding
#### 4.1.1 Welcoming and Orientation Process
#### 4.1.1. Welcoming and Orientation Process
**Comprehensive Onboarding:**
- **Welcome Systems**: Systematic welcome processes for new members across all platforms
@@ -261,10 +261,10 @@ This Community Growth Policy establishes ethical guidelines for how community me
- **Accommodation Assessment**: Assessment of accessibility needs and accommodation provision
- **Multiple Participation Options**: Information about different ways to participate based on capacity and interest
- **Communication Preferences**: Respect for different communication styles and preferences
- **Flexible Engagement**: Recognition that engagement levels and styles vary among community members
- **Flexible Engagement**: Recognition that engagement levels and styles vary amongst community members
- **Support Systems**: Connection to appropriate support systems and resources
#### 4.1.2 Community Culture Integration
#### 4.1.2. Community Culture Integration
**Cultural Assimilation Support:**
- **Community Norms**: Education about community norms, expectations, and culture
@@ -280,9 +280,9 @@ This Community Growth Policy establishes ethical guidelines for how community me
- **Leadership Development**: Pathways for new members to develop leadership skills and take on responsibilities
- **Community Investment**: Support for new members to develop investment in community success
### 4.2 Retention and Engagement
### 4.2. Retention and Engagement
#### 4.2.1 Sustainable Participation
#### 4.2.1. Sustainable Participation
**Long-Term Engagement Strategies:**
- **Meaningful Participation**: Opportunities for community members to contribute meaningfully
@@ -296,12 +296,12 @@ This Community Growth Policy establishes ethical guidelines for how community me
- **Capacity Recognition**: Recognition that participation capacity varies and changes over time
- **Rest and Recovery**: Normalization of breaks and reduced engagement periods
- **Sustainable Volunteerism**: Sustainable approaches to volunteer engagement and responsibility
- **Well-Being Priority**: Prioritization of member well-being over community productivity
- **Well-Being Priority**: Prioritisation of member well-being over community productivity
#### 4.2.2 Community Evolution and Adaptation
#### 4.2.2. Community Evolution and Adaptation
**Growth-Responsive Community Development:**
- **Culture Preservation**: Maintaining community culture and values while accommodating growth
- **Culture Preservation**: Maintaining community culture and values whilst accommodating growth
- **Structure Adaptation**: Adapting community structures to serve larger and more diverse membership
- **Democracy Protection**: Ensuring growth doesn't undermine democratic participation and decision-making
- **Quality Maintenance**: Maintaining community quality and values during periods of rapid growth
@@ -316,9 +316,9 @@ This Community Growth Policy establishes ethical guidelines for how community me
## 5. SUSTAINABILITY AND IMPACT MEASUREMENT
### 5.1 Growth Sustainability
### 5.1. Growth Sustainability
#### 5.1.1 Resource Management and Planning
#### 5.1.1. Resource Management and Planning
**Capacity Planning:**
- **Resource Assessment**: Regular assessment of community capacity to support new members
@@ -332,20 +332,20 @@ This Community Growth Policy establishes ethical guidelines for how community me
- **Social Impact**: Measurement of social impact and community benefit
- **Economic Sustainability**: Sustainable economic approaches to community operations
- **Cultural Sustainability**: Preservation of community culture and values during growth
- **Member Well-Being**: Prioritization of member well-being in growth planning
- **Member Well-Being**: Prioritisation of member well-being in growth planning
#### 5.1.2 Growth Rate Management
#### 5.1.2. Growth Rate Management
**Sustainable Growth Pacing:**
- **Organic Growth Priority**: Prioritization of organic growth over rapid expansion
- **Organic Growth Priority**: Prioritisation of organic growth over rapid expansion
- **Integration Capacity**: Growth that matches community capacity to integrate new members effectively
- **Quality Maintenance**: Growth pacing that maintains community quality and member experience
- **Resource Alignment**: Growth that aligns with available resources and support capacity
- **Community Input**: Community input on appropriate growth rates and targets
### 5.2 Impact Assessment and Measurement
### 5.2. Impact Assessment and Measurement
#### 5.2.1 Community Health Metrics
#### 5.2.1. Community Health Metrics
**Quantitative Measures:**
- **Member Engagement**: Measurement of member engagement and participation across platforms
@@ -361,7 +361,7 @@ This Community Growth Policy establishes ethical guidelines for how community me
- **Conflict Resolution**: Analysis of conflict resolution effectiveness and community harmony
- **Values Integration**: Assessment of how well community values are integrated in daily practice
#### 5.2.2 External Impact Measurement
#### 5.2.2. External Impact Measurement
**Social Justice Impact:**
- **Advocacy Effectiveness**: Measurement of community advocacy and social justice impact
@@ -379,9 +379,9 @@ This Community Growth Policy establishes ethical guidelines for how community me
## 6. ACCOUNTABILITY AND CONTINUOUS IMPROVEMENT
### 6.1 Growth Practice Evaluation
### 6.1. Growth Practice Evaluation
#### 6.1.1 Regular Assessment and Review
#### 6.1.1. Regular Assessment and Review
**Growth Strategy Review:**
- **Quarterly Assessments**: Regular quarterly review of growth strategies and effectiveness
@@ -397,7 +397,7 @@ This Community Growth Policy establishes ethical guidelines for how community me
- **Innovation Integration**: Integration of innovative approaches to community growth
- **Learning Documentation**: Documentation of lessons learned for future growth planning
#### 6.1.2 Community Accountability
#### 6.1.2. Community Accountability
**Transparent Reporting:**
- **Growth Reports**: Regular reports to community on growth activities and results
@@ -413,9 +413,9 @@ This Community Growth Policy establishes ethical guidelines for how community me
- **Conflict Resolution**: Processes for resolving conflicts related to growth practices
- **Value Enforcement**: Enforcement of community values in all growth activities
### 6.2 Continuous Learning and Innovation
### 6.2. Continuous Learning and Innovation
#### 6.2.1 Best Practice Development
#### 6.2.1. Best Practice Development
**Internal Learning:**
- **Experience Documentation**: Documentation of growth experiences and lessons learned
@@ -431,12 +431,12 @@ This Community Growth Policy establishes ethical guidelines for how community me
- **Technology Integration**: Appropriate integration of new technologies for community growth
- **Innovation Adoption**: Adoption of innovative approaches to ethical community building
#### 6.2.2 Future Planning and Vision
#### 6.2.2. Future Planning and Vision
**Long-Term Vision Development:**
- **Community Vision**: Development of long-term vision for community growth and impact
- **Strategic Planning**: Strategic planning for sustainable community development
- **Impact Goals**: Setting and working toward long-term social impact goals
- **Impact Goals**: Setting and working towards long-term social impact goals
- **Innovation Integration**: Planning for integration of emerging technologies and approaches
- **Movement Contribution**: Planning for community contribution to broader social justice movements
@@ -449,8 +449,5 @@ This Community Growth Policy establishes ethical guidelines for how community me
---
*This Community Growth Policy establishes ethical guidelines for sustainable, values-aligned community growth. It works in conjunction with our Community Support Policy, Crisis and Mental Health Management Policy, and staff training materials to ensure holistic community development. All growth activities should prioritize quality relationships, authentic engagement, and alignment with social justice values over numerical metrics or rapid expansion.*
*This Community Growth Policy establishes ethical guidelines for sustainable, values-aligned community growth. It works in conjunction with our Community Support Policy, Crisis and Mental Health Management Policy, and staff training materials to ensure holistic community development. All growth activities should prioritise quality relationships, authentic engagement, and alignment with social justice values over numerical metrics or rapid expansion.*
**Document Version**: 1.0
**Last Updated**: 25 September 2025
**Next Review Date**: 25 March 2026
@@ -6,11 +6,11 @@ title: Community Support Policy
## 1. POLICY OVERVIEW AND PURPOSE
### 1.1 Policy Statement
### 1.1. Policy Statement
This Community Support Policy establishes the framework for how community members can both seek and provide support within our community ecosystem. This policy is designed to create a safe, inclusive, and mutually supportive environment that honours our values of social justice, accessibility, and community empowerment while maintaining appropriate boundaries and safety standards.
This Community Support Policy establishes the framework for how community members can both seek and provide support within our community ecosystem. This policy is designed to create a safe, inclusive, and mutually supportive environment that honours our values of social justice, accessibility, and community empowerment whilst maintaining appropriate boundaries and safety standards.
### 1.2 Integration with Community Values
### 1.2. Integration with Community Values
**Core Principles:**
- **Mutual Support**: Community members support each other through shared experiences and knowledge
@@ -20,23 +20,21 @@ This Community Support Policy establishes the framework for how community member
- **Safety First**: Protection of vulnerable community members and support providers
- **Cultural Responsiveness**: Respect for diverse cultural approaches to support and healing
### 1.3 Scope and Application
### 1.3. Scope and Application
This policy applies to all forms of support exchange within our community platforms, including:
- Discord channels and direct messages
- Forums and discussion boards
- Reddit community spaces
- Social media interactions
- GitHub collaborative spaces
- Guild Wars 2 guild interactions
- LinkedIn professional networking
- Any other community-operated platforms
## 2. SEEKING SUPPORT WITHIN THE COMMUNITY
### 2.1 Types of Community Support Available
### 2.1. Types of Community Support Available
#### 2.1.1 Peer Support Categories
#### 2.1.1. Peer Support Categories
**Emotional and Social Support:**
- Listening and empathy from community members with shared experiences
@@ -64,14 +62,14 @@ This policy applies to all forms of support exchange within our community platfo
- Assistance with community projects and initiatives
- Collaborative problem-solving on shared challenges
- Skill sharing and mentorship opportunities
- Accessibility assistance and accommodation support
- Accessibility assistance and accommodation support (request accommodations via our [Accessibility Accommodation Request Form](https://forms.nhcarrigan.com/o/docs/forms/2FXY87PB6aaMHspcnXYCZX/4))
- Platform-specific guidance and orientation
#### 2.1.2 Specialized Support Areas
#### 2.1.2. Specialised Support Areas
**Identity-Based Support:**
- Support groups for specific identities and experiences
- Culturally responsive support for marginalized communities
- Culturally responsive support for marginalised communities
- LGBTQ+ affirming support and resources
- Neurodiversity-affirming spaces and assistance
- Support for survivors of various forms of trauma
@@ -97,14 +95,13 @@ This policy applies to all forms of support exchange within our community platfo
- API documentation and implementation guidance
- Bug triage and feature development collaboration
### 2.2 How to Seek Support
### 2.2. How to Seek Support
#### 2.2.1 Identifying Appropriate Support Channels
#### 2.2.1. Identifying Appropriate Support Channels
**Platform-Specific Guidelines:**
- **Discord**: Use designated support channels (#general-support, #tech-help) or reach out to trusted community members
- **Forums**: Create posts in appropriate categories with clear, descriptive titles
- **Reddit**: Utilize community-specific support threads and appropriate flair
- **Discord Forums**: Create posts in appropriate forum channels with clear, descriptive titles
- **Reddit**: Utilise community-specific support threads and appropriate flair
- **GitHub**: Use issue templates for bug reports, feature requests, and technical support
- **Social Media**: Engage appropriately with community hashtags and threads
@@ -117,7 +114,7 @@ This policy applies to all forms of support exchange within our community platfo
- **Show Appreciation**: Acknowledge and thank those who provide support
- **Follow Up**: Update the community on resolution or continued needs when appropriate
#### 2.2.2 Technical Support Specific Guidelines
#### 2.2.2. Technical Support Specific Guidelines
**For Product and Development Issues:**
- **Include System Information**: Provide relevant system details (OS, browser version, device type)
@@ -129,14 +126,20 @@ This policy applies to all forms of support exchange within our community platfo
- **Expected vs Actual**: Clearly describe what you expected to happen versus what actually occurred
**Best Practices for Technical Support Requests:**
- **Use Appropriate Templates**: Follow issue templates or forum formats when available
- **Use Appropriate Templates**: Follow issue templates or discussion formats when available
- **Search Existing Issues**: Check if your issue has already been reported or resolved
- **One Issue Per Request**: Keep support requests focused on a single problem
- **Provide Screenshots**: Include screenshots or screen recordings when they help illustrate the issue
- **Test Environment**: Specify if you're using development, staging, or production environments
- **Recent Changes**: Note any recent changes to your setup that might be related to the issue
#### 2.2.3 Emergency and Crisis Support
#### 2.2.3. Emergency and Crisis Support
:::tip[Heads Up!]{icon=pen}
The policy or policies in this section are still a work in progress. We have not yet implemented the necessary infrastructure to comply with this section.
We are working very hard to get them in place as soon as possible. If you would like to help, consider [applying to join our team!](https://forms.nhcarrigan.com/o/docs/forms/mCxDu3snk9TzFiDjrT4Vc8/4)
:::
**Important Limitations:**
- Community members are **NOT** mental health professionals
@@ -151,15 +154,15 @@ This policy applies to all forms of support exchange within our community platfo
- Integration with our Crisis and Mental Health Management Policy
- Resource databases for professional services and emergency support
### 2.3 Receiving Support Effectively
### 2.3. Receiving Support Effectively
#### 2.3.1 Engagement Guidelines
#### 2.3.1. Engagement Guidelines
**Active Participation:**
- **Communicate Clearly**: Share what you need and what would be helpful
- **Be Open to Different Perspectives**: Community members bring diverse experiences and viewpoints
- **Respect Advice Boundaries**: Understand the difference between peer support and professional advice
- **Engage Authentically**: Be genuine while maintaining appropriate privacy boundaries
- **Engage Authentically**: Be genuine whilst maintaining appropriate privacy boundaries
- **Follow Through**: Let supporters know how their assistance worked out when appropriate
**Privacy and Safety:**
@@ -168,23 +171,23 @@ This policy applies to all forms of support exchange within our community platfo
- **Report Concerns**: If support interactions become inappropriate, contact staff immediately
- **Protect Others' Privacy**: Respect the privacy of others who may be mentioned in your support requests
#### 2.3.2 Managing Multiple Support Sources
#### 2.3.2. Managing Multiple Support Sources
**Coordination Strategies:**
- **Professional Services First**: Prioritize professional mental health, medical, or legal services when needed
- **Professional Services First**: Prioritise professional mental health, medical, or legal services when needed
- **Community Support as Supplement**: Use community support to complement, not replace, professional services
- **Avoid Overwhelming Supporters**: Be mindful of the capacity and boundaries of community volunteers
- **Update Supporters**: Let community supporters know when situations change or resolve
## 3. PROVIDING SUPPORT TO COMMUNITY MEMBERS
### 3.1 Peer Support Responsibilities and Boundaries
### 3.1. Peer Support Responsibilities and Boundaries
#### 3.1.1 Role Definition and Limitations
#### 3.1.1. Role Definition and Limitations
**What Peer Support IS:**
- Sharing personal experiences and what has worked for you
- Listening with empathy and without judgment
- Listening with empathy and without judgement
- Providing resources and information from your own knowledge
- Offering practical assistance within your capacity and expertise
- Being present and available when you can be
@@ -201,7 +204,7 @@ This policy applies to all forms of support exchange within our community platfo
- Crisis intervention or emergency response services
- Solutions to complex problems requiring professional expertise
#### 3.1.2 Professional Boundary Maintenance
#### 3.1.2. Professional Boundary Maintenance
**Clear Communication About Limitations:**
- Always clarify that you are not a professional service provider
@@ -210,16 +213,16 @@ This policy applies to all forms of support exchange within our community platfo
- Be honest about your own knowledge limitations and experience boundaries
- Avoid giving advice outside your areas of experience or expertise
### 3.2 Best Practices for Providing Support
### 3.2. Best Practices for Providing Support
#### 3.2.1 Effective Support Techniques
#### 3.2.1. Effective Support Techniques
**Active Listening and Empathy:**
- **Listen First**: Focus on understanding before trying to solve or advise
- **Validate Experiences**: Acknowledge the person's feelings and experiences as valid
- **Ask Questions**: Clarify what type of support the person is seeking
- **Reflect Understanding**: Demonstrate that you understand what they're sharing
- **Avoid Minimizing**: Don't downplay or dismiss concerns, even if they seem minor to you
- **Avoid Minimising**: Don't downplay or dismiss concerns, even if they seem minor to you
**Resource Sharing and Information:**
- **Share Relevant Experience**: Offer insights from your own similar experiences when appropriate
@@ -228,14 +231,14 @@ This policy applies to all forms of support exchange within our community platfo
- **Follow Up**: Check in when appropriate to see how things are going
- **Maintain Confidentiality**: Respect privacy and don't share personal details with others
#### 3.2.3 Technical Support Best Practices
#### 3.2.3. Technical Support Best Practices
**Troubleshooting Methodology:**
- **Systematic Approach**: Work through problems systematically rather than jumping to conclusions
- **Reproduce First**: Attempt to reproduce the issue yourself when possible
- **Check Documentation**: Verify your understanding against official documentation
- **Test Solutions**: Test suggested solutions in safe environments before recommending
- **Know Your Limits**: Recognize when issues exceed your technical knowledge
- **Know Your Limits**: Recognise when issues exceed your technical knowledge
- **Escalate Appropriately**: Direct complex technical issues to maintainers or core developers
**Code and Integration Support:**
@@ -249,12 +252,12 @@ This policy applies to all forms of support exchange within our community platfo
**API and Product Support:**
- **Version Compatibility**: Help users understand version requirements and compatibility
- **Rate Limiting**: Educate users about API rate limits and best practices
- **Authentication**: Assist with proper authentication and authorization setup
- **Authentication**: Assist with proper authentication and authorisation setup
- **Error Handling**: Help implement proper error handling and retry logic
- **Integration Patterns**: Share common integration patterns and examples
- **Deprecation Awareness**: Keep users informed about deprecated features and migration paths
#### 3.2.4 Cultural and Trauma-Informed Support
#### 3.2.4. Cultural and Trauma-Informed Support
**Cultural Responsiveness:**
- **Respect Differences**: Acknowledge that cultural backgrounds shape experiences and coping strategies
@@ -264,15 +267,15 @@ This policy applies to all forms of support exchange within our community platfo
- **Address Your Limitations**: Acknowledge when cultural differences are outside your experience
**Trauma-Informed Approach:**
- **Assume Possibility of Trauma**: Recognize that many people have experienced trauma
- **Prioritize Safety**: Create interactions that feel safe and non-threatening
- **Assume Possibility of Trauma**: Recognise that many people have experienced trauma
- **Prioritise Safety**: Create interactions that feel safe and non-threatening
- **Offer Choice and Control**: Let people make their own decisions about sharing and participation
- **Emphasize Collaboration**: Work with people rather than directing or controlling their experience
- **Emphasise Collaboration**: Work with people rather than directing or controlling their experience
- **Build Trust**: Be reliable, consistent, and honest in your interactions
### 3.3 Support Provider Self-Care and Sustainability
### 3.3. Support Provider Self-Care and Sustainability
#### 3.3.1 Managing Your Own Capacity
#### 3.3.1. Managing Your Own Capacity
**Setting Healthy Boundaries:**
- **Know Your Limits**: Be realistic about your time, energy, and emotional capacity
@@ -283,46 +286,46 @@ This policy applies to all forms of support exchange within our community platfo
**Preventing Burnout:**
- **Distribute Support Load**: Encourage multiple people to provide support rather than taking everything on yourself
- **Recognize Warning Signs**: Know the signs of emotional exhaustion and burnout
- **Recognise Warning Signs**: Know the signs of emotional exhaustion and burnout
- **Practice Self-Care**: Maintain your own well-being through whatever practices work for you
- **Professional Support**: Seek professional support for your own challenges when needed
- **Community Among Supporters**: Connect with other support providers for mutual support
#### 3.3.2 Handling Difficult Support Situations
#### 3.3.2. Handling Difficult Support Situations
**When to Escalate to Staff:**
- **Safety Concerns**: Any indication of immediate danger to self or others
- **Harassment or Abuse**: Inappropriate behavior during support interactions
- **Harassment or Abuse**: Inappropriate behaviour during support interactions
- **Professional Service Needs**: Situations clearly requiring professional intervention
- **Boundary Violations**: When support requests become inappropriate or overwhelming
- **Community Policy Violations**: Any behavior that violates community standards
- **Community Policy Violations**: Any behaviour that violates community standards
**Managing Challenging Interactions:**
- **Stay Calm**: Maintain composure even when interactions become difficult
- **Redirect Appropriately**: Guide people to more appropriate resources when needed
- **Document Concerns**: Keep records of concerning interactions for staff review
- **Seek Consultation**: Ask staff or experienced community members for guidance when unsure
- **Protect Yourself**: Prioritize your own safety and well-being in all interactions
- **Protect Yourself**: Prioritise your own safety and well-being in all interactions
## 4. PLATFORM-SPECIFIC SUPPORT GUIDELINES
### 4.1 Discord Support Protocols
### 4.1. Discord Support Protocols
#### 4.1.1 Channel Organization and Usage
#### 4.1.1. Channel Organisation and Usage
**Designated Support Channels:**
- **#support**: General questions and peer support requests
- **#support-ticket**: Technical assistance and troubleshooting
- **#accessibility**: Accessibility-related assistance and resources
- **#accessibility**: Accessibility-related assistance and resources (for accommodation requests, use our [Accessibility Accommodation Request Form](https://forms.nhcarrigan.com/o/docs/forms/2FXY87PB6aaMHspcnXYCZX/4))
- **Identity-specific channels**: Support spaces for specific communities and identities
**Direct Message Guidelines:**
- **Respect Consent**: Always ask before moving support to direct messages
- **Maintain Documentation**: Keep records of concerning interactions for staff review
- **Escalation Protocols**: Know when and how to involve Discord moderators and staff
- **Privacy Protection**: Respect confidentiality while ensuring safety
- **Privacy Protection**: Respect confidentiality whilst ensuring safety
#### 4.1.2 Discord-Specific Safety Measures
#### 4.1.2. Discord-Specific Safety Measures
**Moderation Integration:**
- **Staff Notification**: Clear processes for alerting staff to concerning situations
@@ -330,13 +333,13 @@ This policy applies to all forms of support exchange within our community platfo
- **Evidence Preservation**: Proper documentation of problematic interactions
- **Community Protection**: Mechanisms for protecting vulnerable community members
### 4.2 Forum and Reddit Support
### 4.2. Discord Forum Channels and Reddit Support
#### 4.2.1 Public Support Best Practices
#### 4.2.1. Public Support Best Practices
**Post Guidelines:**
- **Descriptive Titles**: Clear titles that indicate the type of support needed
- **Appropriate Categorization**: Use correct flairs and categories for support requests
- **Appropriate Categorisation**: Use correct flairs and categories for support requests
- **Privacy Considerations**: Share only what you're comfortable being public
- **Follow-Up Responsibility**: Update threads when situations resolve or change
@@ -346,7 +349,7 @@ This policy applies to all forms of support exchange within our community platfo
- **Resource Sharing**: Provide links to helpful resources and information
- **Respectful Disagreement**: Handle differing perspectives constructively
#### 4.2.2 Community Upvoting and Visibility
#### 4.2.2. Community Upvoting and Visibility
**Helpful Content Promotion:**
- **Upvote Helpful Responses**: Use voting systems to promote good support
@@ -354,9 +357,9 @@ This policy applies to all forms of support exchange within our community platfo
- **Community Curation**: Help ensure quality support content is visible
- **Constructive Feedback**: Provide feedback that improves support quality
### 4.3 Professional Platform Support (LinkedIn, GitHub)
### 4.3. Professional Platform Support (LinkedIn, GitHub)
#### 4.3.1 Professional Context Considerations
#### 4.3.1. Professional Context Considerations
**LinkedIn Support:**
- **Professional Boundaries**: Maintain appropriate professional boundaries
@@ -373,14 +376,14 @@ This policy applies to all forms of support exchange within our community platfo
- **Learning Facilitation**: Supporting technical learning and development
- **API Integration**: Assistance with integrating community APIs and services
#### 4.3.2 Code-Specific Technical Support
#### 4.3.2. Code-Specific Technical Support
**Issue Management:**
- **Issue Templates**: Use and help others use appropriate issue templates
- **Label Usage**: Apply appropriate labels to categorize issues effectively
- **Label Usage**: Apply appropriate labels to categorise issues effectively
- **Milestone Tracking**: Help track issues against project milestones and releases
- **Duplicate Detection**: Identify and link duplicate issues to reduce fragmentation
- **Triage Assistance**: Help maintainers triage and prioritize issues
- **Triage Assistance**: Help maintainers triage and prioritise issues
- **Resolution Documentation**: Document solutions and workarounds in issue comments
**Code Collaboration:**
@@ -401,9 +404,9 @@ This policy applies to all forms of support exchange within our community platfo
## 5. SAFETY AND RISK MANAGEMENT
### 5.1 Identifying and Managing Risk
### 5.1. Identifying and Managing Risk
#### 5.1.1 Risk Assessment for Support Situations
#### 5.1.1. Risk Assessment for Support Situations
**High-Risk Indicators:**
- **Immediate Safety Concerns**: Threats of self-harm or harm to others
@@ -422,13 +425,13 @@ This policy applies to all forms of support exchange within our community platfo
- **Follow-Up Procedures**: Ongoing monitoring and support coordination
- **Community Protection**: Measures to protect vulnerable community members
#### 5.1.3 Technical Support Risk Management
#### 5.1.3. Technical Support Risk Management
**Security-Related Support Risks:**
- **Credential Exposure**: Prevent sharing of passwords, API keys, or other sensitive credentials in support channels
- **Code Injection**: Be cautious of code suggestions that could introduce security vulnerabilities
- **Malicious Code**: Screen for and prevent sharing of potentially malicious code or links
- **Social Engineering**: Recognize and prevent social engineering attempts disguised as support requests
- **Social Engineering**: Recognise and prevent social engineering attempts disguised as support requests
- **Phishing Prevention**: Help community members identify and avoid phishing attempts
**Technical Support Safety Protocols:**
@@ -439,7 +442,7 @@ This policy applies to all forms of support exchange within our community platfo
- **Rollback Plans**: Help users understand how to reverse changes if needed
- **Documentation Requirements**: Ensure critical changes are properly documented
#### 5.1.2 Community Safety Measures
#### 5.1.2. Community Safety Measures
**Protective Policies:**
- **Harassment Prevention**: Clear policies preventing exploitation of vulnerable community members
@@ -448,9 +451,9 @@ This policy applies to all forms of support exchange within our community platfo
- **Staff Oversight**: Regular staff monitoring and oversight of support interactions
- **Community Feedback**: Mechanisms for reporting concerning support interactions
### 5.2 Crisis Intervention and Professional Referral
### 5.2. Crisis Intervention and Professional Referral
#### 5.2.1 Crisis Recognition and Response
#### 5.2.1. Crisis Recognition and Response
**Crisis Identification:**
- **Warning Signs**: Recognition of signs indicating professional intervention needs
@@ -463,10 +466,10 @@ This policy applies to all forms of support exchange within our community platfo
- **Resource Databases**: Comprehensive databases of professional services
- **Referral Processes**: Clear processes for connecting people to professional help
- **Ongoing Coordination**: Coordination between community support and professional services
- **Privacy Compliance**: Respect for privacy while ensuring safety
- **Privacy Compliance**: Respect for privacy whilst ensuring safety
- **Follow-Up Support**: Continued community support alongside professional services
#### 5.2.2 Legal and Ethical Obligations
#### 5.2.2. Legal and Ethical Obligations
**Mandatory Reporting:**
- **Legal Requirements**: Compliance with local laws regarding mandatory reporting
@@ -484,9 +487,9 @@ This policy applies to all forms of support exchange within our community platfo
## 6. QUALITY ASSURANCE AND CONTINUOUS IMPROVEMENT
### 6.1 Support Quality Standards
### 6.1. Support Quality Standards
#### 6.1.1 Effective Support Characteristics
#### 6.1.1. Effective Support Characteristics
**Quality Indicators:**
- **Respectful Interaction**: All support interactions demonstrate respect and dignity
@@ -500,12 +503,12 @@ This policy applies to all forms of support exchange within our community platfo
**Feedback and Evaluation:**
- **Community Feedback**: Regular feedback collection from support recipients
- **Peer Evaluation**: Peer feedback among support providers
- **Peer Evaluation**: Peer feedback amongst support providers
- **Staff Review**: Regular staff review of support quality and safety
- **Continuous Improvement**: Ongoing improvement of support practices and resources
- **Training Updates**: Regular updates to support training and resources
#### 6.1.2 Resource Maintenance and Updates
#### 6.1.2. Resource Maintenance and Updates
**Resource Quality Assurance:**
- **Regular Review**: Periodic review of shared resources for accuracy and relevance
@@ -514,16 +517,16 @@ This policy applies to all forms of support exchange within our community platfo
- **Accessibility Assessment**: Regular assessment of resource accessibility
- **Cultural Appropriateness**: Ongoing evaluation of cultural appropriateness of resources
### 6.2 Community Learning and Development
### 6.2. Community Learning and Development
#### 6.2.1 Skill Building and Education
#### 6.2.1. Skill Building and Education
**Support Skills Development:**
- **Peer Education**: Educational opportunities for improving support skills
- **Cultural Competency**: Ongoing learning about cultural responsiveness
- **Trauma-Informed Approaches**: Education about trauma-informed support practices
- **Boundary Management**: Training on maintaining healthy support boundaries
- **Crisis Recognition**: Education about recognizing crisis situations
- **Crisis Recognition**: Education about recognising crisis situations
- **Technical Competency**: Ongoing learning about products, APIs, and technical systems
- **Security Awareness**: Education about security best practices and threat recognition
- **Code Review Skills**: Training on effective and constructive code review practices
@@ -535,7 +538,7 @@ This policy applies to all forms of support exchange within our community platfo
- **Skill Sharing**: Opportunities for community members to share relevant skills and knowledge
- **Professional Development**: Support for community members pursuing relevant professional development
#### 6.2.2 Innovation and Improvement
#### 6.2.2. Innovation and Improvement
**Support System Evolution:**
- **New Approach Development**: Innovation in peer support approaches and methods
@@ -546,7 +549,7 @@ This policy applies to all forms of support exchange within our community platfo
**Partnership and Collaboration:**
- **Professional Service Partnerships**: Appropriate partnerships with professional service providers
- **Community Organization Collaboration**: Collaboration with other community organizations
- **Community Organisation Collaboration**: Collaboration with other community organisations
- **Resource Sharing Networks**: Participation in resource sharing networks
- **Best Practice Communities**: Participation in communities focused on peer support best practices
- **Research Participation**: Appropriate participation in research on effective community support
@@ -555,6 +558,3 @@ This policy applies to all forms of support exchange within our community platfo
*This Community Support Policy is designed to create a safe, supportive, and sustainable framework for mutual aid within our community. This policy works in conjunction with our Crisis and Mental Health Management Policy, Community Code of Conduct, and staff training materials to ensure comprehensive community support. For questions about this policy or to report concerns about support interactions, please contact community staff through established channels.*
**Document Version**: 1.0
**Last Updated**: 25 September 2025
**Next Review Date**: 25 March 2026
+69 -81
View File
@@ -6,11 +6,11 @@ title: Content and Moderation Policy
## 1. INTRODUCTION AND SCOPE
### 1.1 Policy Purpose and Objectives
### 1.1. Policy Purpose and Objectives
This Content and Moderation Policy ("Policy") establishes comprehensive standards for content creation, sharing, and moderation across all services, platforms, and applications operated by nhcarrigan ("we," "us," "our," or "the Company"). This Policy aims to maintain safe, inclusive, and productive environments whilst balancing free expression with community safety and legal compliance.
This Content and Moderation Policy ("Policy") establishes comprehensive standards for content creation, sharing, and moderation across all services, platforms, and applications operated by NHCarrigan ("we," "us," "our," or "the Company"). This Policy aims to maintain safe, inclusive, and productive environments whilst balancing free expression with community safety and legal compliance.
### 1.2 Scope of Application
### 1.2. Scope of Application
This Policy applies to all content and user interactions across:
@@ -30,31 +30,15 @@ This Policy applies to all content and user interactions across:
**(h)** Any other platforms or services that facilitate user content or communication.
### 1.3 Integration with Other Policies
### 1.3. Integration with Other Policies
This Policy operates in conjunction with our comprehensive policy framework:
**(a)** Our Terms of Service, which establish the fundamental legal relationship;
**(b)** Our Community Code of Conduct, which establishes behavioural expectations;
**(c)** Our Acceptable Use Policy, which defines prohibited activities and usage patterns;
**(d)** Our Privacy Policy, which governs data collection and processing in moderation activities;
**(e)** Our Limitation of Liability and Indemnification Policy, which governs all liability and risk allocation matters;
**(f)** Our Service Level Agreement and Warranty Disclaimer, which define service expectations;
**(g)** Our Export Control and Sanctions Compliance Policy, which governs international compliance;
**(h)** Our API Terms and Conditions, which govern developer services;
This Policy operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, Acceptable Use Policy, Limitation of Liability and Indemnification Policy, Service Level Agreement, Export Control and Sanctions Compliance Policy, API Terms and Conditions, and all applicable legal protections by reference.
**(i)** Our Appeals Policy, which provides procedures for challenging moderation decisions;
**(j)** Platform-specific community guidelines and rules where applicable.
### 1.4 Definitions and Terminology
### 1.4. Definitions and Terminology
For the purposes of this Policy:
@@ -72,7 +56,7 @@ For the purposes of this Policy:
## 2. CONTENT STANDARDS AND GUIDELINES
### 2.1 Acceptable Content Principles
### 2.1. Acceptable Content Principles
All content on our platforms must adhere to the following principles:
@@ -92,7 +76,7 @@ All content on our platforms must adhere to the following principles:
**(h)** **Community Benefit**: Content should benefit the broader community and support our platform objectives.
### 2.2 Encouraged Content Types
### 2.2. Encouraged Content Types
We particularly welcome and encourage:
@@ -112,7 +96,7 @@ We particularly welcome and encourage:
**(h)** **Well-Documented**: Content that provides clear documentation, examples, and references.
### 2.3 Content Quality Standards
### 2.3. Content Quality Standards
Quality content on our platforms should demonstrate:
@@ -132,7 +116,7 @@ Quality content on our platforms should demonstrate:
**(h)** **Accessible Format**: Content formatted for accessibility and ease of consumption.
### 2.4 Platform-Specific Guidelines
### 2.4. Platform-Specific Guidelines
Different platforms may have additional specific guidelines:
@@ -154,7 +138,7 @@ Different platforms may have additional specific guidelines:
## 3. PROHIBITED CONTENT CATEGORIES
### 3.1 Illegal and Harmful Content
### 3.1. Illegal and Harmful Content
The following types of content are strictly prohibited:
@@ -174,7 +158,7 @@ The following types of content are strictly prohibited:
**(h)** **Human Trafficking**: Content related to human trafficking or modern slavery.
### 3.2 Inappropriate and Offensive Content
### 3.2. Inappropriate and Offensive Content
Content that violates community standards includes:
@@ -194,7 +178,7 @@ Content that violates community standards includes:
**(h)** **Degrading Content**: Content that degrades or dehumanises individuals or groups.
### 3.3 Spam and Low-Quality Content
### 3.3. Spam and Low-Quality Content
Prohibited spam and low-quality content includes:
@@ -214,7 +198,7 @@ Prohibited spam and low-quality content includes:
**(h)** **Bot-Generated Content**: Automated content that doesn't add value to discussions.
### 3.4 Intellectual Property Violations
### 3.4. Intellectual Property Violations
Content that violates intellectual property rights includes:
@@ -234,7 +218,7 @@ Content that violates intellectual property rights includes:
**(h)** **False Attribution**: Misrepresenting the ownership or source of intellectual property.
### 3.5 Misinformation and Deceptive Content
### 3.5. Misinformation and Deceptive Content
Prohibited misinformation and deceptive practices include:
@@ -256,7 +240,13 @@ Prohibited misinformation and deceptive practices include:
## 4. MODERATION APPROACH AND METHODOLOGY
### 4.1 Multi-Layered Moderation System
### 4.1. Multi-Layered Moderation System
:::tip[Heads Up!]{icon=pen}
The policy or policies in this section are still a work in progress. We have not yet implemented the necessary infrastructure to comply with this section.
We are working very hard to get them in place as soon as possible. If you would like to help, consider [applying to join our team!](https://forms.nhcarrigan.com/o/docs/forms/mCxDu3snk9TzFiDjrT4Vc8/4)
:::
Our moderation approach employs multiple layers:
@@ -276,7 +266,7 @@ Our moderation approach employs multiple layers:
**(h)** **Quality Assurance**: Quality assurance processes for moderation consistency and accuracy.
### 4.2 Proactive and Reactive Moderation
### 4.2. Proactive and Reactive Moderation
We employ both proactive and reactive moderation strategies:
@@ -300,7 +290,7 @@ We employ both proactive and reactive moderation strategies:
**(d)** **Incident Response**: Response to significant content-related incidents.
### 4.3 Context-Sensitive Moderation
### 4.3. Context-Sensitive Moderation
Our moderation decisions consider:
@@ -320,7 +310,7 @@ Our moderation decisions consider:
**(h)** **Legal Requirements**: Compliance with applicable legal requirements in different jurisdictions.
### 4.4 Moderation Decision Framework
### 4.4. Moderation Decision Framework
Moderation decisions follow a structured framework:
@@ -342,7 +332,7 @@ Moderation decisions follow a structured framework:
## 5. ENFORCEMENT ACTIONS AND CONSEQUENCES
### 5.1 Range of Enforcement Actions
### 5.1. Range of Enforcement Actions
We may take the following enforcement actions for policy violations:
@@ -362,7 +352,7 @@ We may take the following enforcement actions for policy violations:
**(h)** **Account Termination**: Permanently terminating user accounts for serious or repeated violations.
### 5.2 Progressive Enforcement Approach
### 5.2. Progressive Enforcement Approach
Our enforcement generally follows a progressive approach:
@@ -386,7 +376,7 @@ Our enforcement generally follows a progressive approach:
**(b)** Removal from community platforms;
**(c)** Potential legal action for serious violations.
### 5.3 Immediate Action Circumstances
### 5.3. Immediate Action Circumstances
Immediate severe enforcement may be applied for:
@@ -406,7 +396,7 @@ Immediate severe enforcement may be applied for:
**(h)** **Terms of Service Violations**: Serious violations of fundamental terms of service.
### 5.4 Account Status and Restrictions
### 5.4. Account Status and Restrictions
Account restrictions may include:
@@ -428,7 +418,7 @@ Account restrictions may include:
## 6. COMMUNITY REPORTING AND PARTICIPATION
### 6.1 Community Reporting Mechanisms
### 6.1. Community Reporting Mechanisms
We provide multiple ways for community members to report problematic content:
@@ -448,7 +438,7 @@ We provide multiple ways for community members to report problematic content:
**(h)** **Batch Reporting**: Mechanisms for reporting multiple related violations efficiently.
### 6.2 What to Include in Reports
### 6.2. What to Include in Reports
Effective reports should include:
@@ -468,9 +458,9 @@ Effective reports should include:
**(h)** **Contact Information**: Your contact information for follow-up questions (where desired).
### 6.3 Community Moderation Programme
### 6.3. Community Moderation Programme
We may establish community moderation programmes that include:
We establish community moderation programmes that include:
**(a)** **Volunteer Moderators**: Community volunteers who help with content moderation;
@@ -488,7 +478,7 @@ We may establish community moderation programmes that include:
**(h)** **Feedback Mechanisms**: Regular feedback and improvement processes for community moderation.
### 6.4 Reporter Protection and Support
### 6.4. Reporter Protection and Support
We are committed to protecting community members who report violations:
@@ -510,7 +500,7 @@ We are committed to protecting community members who report violations:
## 7. APPEALS AND REVIEW PROCESS
### 7.1 Right to Appeal
### 7.1. Right to Appeal
Users have the right to appeal moderation decisions including:
@@ -530,7 +520,7 @@ Users have the right to appeal moderation decisions including:
**(h)** **Policy Interpretations**: Appeals regarding interpretation of policy provisions.
### 7.2 Appeals Process
### 7.2. Appeals Process
The appeals process includes the following steps:
@@ -550,7 +540,7 @@ The appeals process includes the following steps:
**(h)** **Follow-up**: Follow-up to ensure proper implementation and user satisfaction.
### 7.3 Appeal Requirements and Information
### 7.3. Appeal Requirements and Information
Effective appeals should include:
@@ -570,7 +560,7 @@ Effective appeals should include:
**(h)** **Supporting Documentation**: Any supporting documentation, screenshots, or references.
### 7.4 Appeal Outcomes and Implementation
### 7.4. Appeal Outcomes and Implementation
Appeal decisions may result in:
@@ -592,7 +582,13 @@ Appeal decisions may result in:
## 8. TRANSPARENCY AND ACCOUNTABILITY
### 8.1 Transparency Reporting
### 8.1. Transparency Reporting
:::tip[Heads Up!]{icon=pen}
The policy or policies in this section are still a work in progress. We have not yet implemented the necessary infrastructure to comply with this section.
We are working very hard to get them in place as soon as possible. If you would like to help, consider [applying to join our team!](https://forms.nhcarrigan.com/o/docs/forms/mCxDu3snk9TzFiDjrT4Vc8/4)
:::
We are committed to transparency in our moderation practices through:
@@ -612,7 +608,7 @@ We are committed to transparency in our moderation practices through:
**(h)** **Community Feedback**: Reports on community feedback and input on moderation practices.
### 8.2 Accountability Mechanisms
### 8.2. Accountability Mechanisms
We maintain accountability through:
@@ -632,7 +628,7 @@ We maintain accountability through:
**(h)** **Stakeholder Engagement**: Engagement with community stakeholders on moderation practices.
### 8.3 Community Input and Participation
### 8.3. Community Input and Participation
We seek community input through:
@@ -652,7 +648,7 @@ We seek community input through:
**(h)** **Co-Creation Processes**: Collaborative development of community standards and guidelines.
### 8.4 External Accountability
### 8.4. External Accountability
We engage in external accountability through:
@@ -674,7 +670,7 @@ We engage in external accountability through:
## 9. SPECIAL CONSIDERATIONS AND CONTEXTS
### 9.1 Cultural and Regional Sensitivity
### 9.1. Cultural and Regional Sensitivity
Our moderation practices consider:
@@ -694,7 +690,7 @@ Our moderation practices consider:
**(h)** **Inclusive Practices**: Promotion of inclusive practices that welcome diverse perspectives.
### 9.2 Vulnerable Populations
### 9.2. Vulnerable Populations
We provide enhanced protections for:
@@ -714,7 +710,7 @@ We provide enhanced protections for:
**(h)** **Digital Literacy**: Support for users with varying levels of digital literacy.
### 9.3 Crisis and Emergency Response
### 9.3. Crisis and Emergency Response
During crises or emergencies, we may:
@@ -734,7 +730,7 @@ During crises or emergencies, we may:
**(h)** **Post-Crisis Review**: Conduct post-crisis reviews to improve future emergency responses.
### 9.4 Emerging Technologies and Trends
### 9.4. Emerging Technologies and Trends
We adapt our moderation practices to address:
@@ -756,7 +752,7 @@ We adapt our moderation practices to address:
## 10. TRAINING AND DEVELOPMENT
### 10.1 Moderator Training Programmes
### 10.1. Moderator Training Programmes
Our moderation training includes:
@@ -776,7 +772,7 @@ Our moderation training includes:
**(h)** **Continuous Education**: Ongoing education and professional development opportunities.
### 10.2 Quality Assurance and Consistency
### 10.2. Quality Assurance and Consistency
We maintain quality through:
@@ -796,7 +792,7 @@ We maintain quality through:
**(h)** **Improvement Planning**: Systematic planning for continuous improvement in moderation quality.
### 10.3 Technology and Tools Training
### 10.3. Technology and Tools Training
Training on moderation technology includes:
@@ -816,7 +812,7 @@ Training on moderation technology includes:
**(h)** **Integration Tools**: Understanding integration between different moderation tools and platforms.
### 10.4 Wellbeing and Support
### 10.4. Wellbeing and Support
We provide support for moderation staff including:
@@ -838,7 +834,7 @@ We provide support for moderation staff including:
## 11. POLICY EVOLUTION AND UPDATES
### 11.1 Continuous Policy Development
### 11.1. Continuous Policy Development
Our content policies evolve through:
@@ -858,7 +854,7 @@ Our content policies evolve through:
**(h)** **Social Evolution**: Response to changing social norms and expectations.
### 11.2 Policy Update Process
### 11.2. Policy Update Process
Policy updates follow a structured process:
@@ -878,7 +874,7 @@ Policy updates follow a structured process:
**(h)** **Monitoring and Evaluation**: Ongoing monitoring and evaluation of policy effectiveness.
### 11.3 Communication of Changes
### 11.3. Communication of Changes
Policy changes are communicated through:
@@ -898,7 +894,7 @@ Policy changes are communicated through:
**(h)** **Feedback Channels**: Channels for feedback on policy changes and implementation.
### 11.4 Emergency Policy Updates
### 11.4. Emergency Policy Updates
In emergency situations, we may:
@@ -920,7 +916,7 @@ In emergency situations, we may:
## 12. CONTACT INFORMATION AND SUPPORT
### 12.1 Content Policy Questions
### 12.1. Content Policy Questions
For questions about our content policies:
@@ -928,9 +924,9 @@ For questions about our content policies:
**Subject Line:** Content Policy Inquiry - [Brief Description]
**Response Time:** Within 3 business days for policy clarification requests
**Response Time:** Within 7-10 business days for policy clarification requests
### 12.2 Content Reporting
### 12.2. Content Reporting
To report problematic content:
@@ -940,9 +936,9 @@ To report problematic content:
**Emergency Reports:** For urgent safety concerns, use subject line "URGENT - Content Report"
**Response Time:** Within 24 hours for urgent reports, 48 hours for standard reports
**Response Time:** Within 7-10 business days for all reports
### 12.3 Moderation Appeals
### 12.3. Moderation Appeals
For appeals of moderation decisions:
@@ -952,28 +948,20 @@ For appeals of moderation decisions:
**Process:** Follow detailed appeals process outlined in our Community Appeals Policy
**Response Time:** Within 5 business days for appeal reviews
**Response Time:** Within 7-10 business days for appeal reviews
### 12.4 Community Support
### 12.4. Community Support
For general community support and guidance:
**Email:** community@nhcarrigan.com
**Community Forum:** https://forum.nhcarrigan.com/community-support
**Discord Community:** https://chat.nhcarrigan.com
**Response Time:** Within 48 hours for community support requests
**Response Time:** Within 7-10 business days for community support requests
**Live Chat:** Available during business hours for immediate assistance
**Document Version:** 1.0
**Last Updated:** 15 September 2025
**Effective Date:** 15 September 2025
**Next Review Date:** 15 March 2026
---
*This Content and Moderation Policy establishes our commitment to maintaining safe, inclusive, and productive communities. By participating in our platforms, you agree to abide by these content standards and acknowledge our moderation practices. For questions about content policies or to report violations, please contact us at moderation@nhcarrigan.com.*
+58 -62
View File
@@ -6,11 +6,11 @@ title: Crisis and Mental Health Management Policy
## 1. INTRODUCTION AND SCOPE
### 1.1 Policy Purpose and Objectives
### 1.1. Policy Purpose and Objectives
This Crisis and Mental Health Management Policy ("Policy") establishes comprehensive protocols for identifying, responding to, and managing mental health crises and related situations across all services, platforms, and applications operated by nhcarrigan ("we," "us," "our," or "the Company"). This Policy aims to provide appropriate support whilst maintaining clear boundaries regarding our capabilities and legal obligations.
This Crisis and Mental Health Management Policy ("Policy") establishes comprehensive protocols for identifying, responding to, and managing mental health crises and related situations across all services, platforms, and applications operated by NHCarrigan ("we," "us," "our," or "the Company"). This Policy aims to provide appropriate support whilst maintaining clear boundaries regarding our capabilities and legal obligations.
### 1.2 Important Disclaimers and Limitations
### 1.2. Important Disclaimers and Limitations
**CRITICAL NOTICE:**
@@ -24,11 +24,11 @@ This Crisis and Mental Health Management Policy ("Policy") establishes comprehen
**(e)** Our responses are limited to basic support, resource provision, and appropriate referrals.
### 1.3 Scope of Application
### 1.3. Scope of Application
This Policy applies to:
**(a)** All staff members, volunteers, and community moderators;
**(a)** All Team members (volunteers), Staff (paid employees), and community moderators;
**(b)** All platforms, services, and communication channels we operate;
@@ -40,15 +40,9 @@ This Policy applies to:
**(f)** Emergency reporting obligations and legal compliance requirements.
### 1.4 Integration with Other Policies
### 1.4. Integration with Other Policies
This Policy operates in conjunction with:
**(a)** Our Content and Moderation Policy, which governs harmful content including self-harm materials;
**(b)** Our Privacy Policy, which governs confidentiality and information sharing;
**(c)** Our Terms of Service, which establish fundamental service limitations;
This Policy operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, Content and Moderation Policy, and all applicable legal protections by reference.
**(d)** Our Limitation of Liability Policy, which governs risk allocation;
@@ -58,7 +52,7 @@ This Policy operates in conjunction with:
## 2. RECOGNITION AND IDENTIFICATION
### 2.1 Crisis Indicators
### 2.1. Crisis Indicators
We train our team to recognise potential mental health crisis indicators including:
@@ -78,7 +72,7 @@ We train our team to recognise potential mental health crisis indicators includi
**(h)** **Sudden Behavioural Changes:** Dramatic changes in communication patterns or behaviour.
### 2.2 Risk Assessment Levels
### 2.2. Risk Assessment Levels
We categorise potential situations into three risk levels:
@@ -100,7 +94,7 @@ We categorise potential situations into three risk levels:
**(c)** Discussions about mental health challenges without crisis indicators;
**(d)** Seeking community support for mental health issues.
### 2.3 False Positives and Context Consideration
### 2.3. False Positives and Context Consideration
Our team is trained to consider:
@@ -122,7 +116,7 @@ Our team is trained to consider:
## 3. IMMEDIATE RESPONSE PROTOCOLS
### 3.1 High-Risk Situation Response
### 3.1. High-Risk Situation Response
For HIGH RISK situations involving imminent danger:
@@ -144,7 +138,7 @@ For HIGH RISK situations involving imminent danger:
**(h)** **Maintain Confidentiality:** Limit information sharing to essential personnel only.
### 3.2 Medium-Risk Situation Response
### 3.2. Medium-Risk Situation Response
For MEDIUM RISK situations involving concerning behaviour:
@@ -166,7 +160,7 @@ For MEDIUM RISK situations involving concerning behaviour:
**(h)** **Monitor for Escalation:** Watch for signs of increasing risk level.
### 3.3 Low-Risk Situation Response
### 3.3. Low-Risk Situation Response
For LOW RISK situations involving general mental health concerns:
@@ -188,7 +182,7 @@ For LOW RISK situations involving general mental health concerns:
**(h)** **Available Support:** Make clear what ongoing support we can and cannot provide.
### 3.4 Response Templates and Guidelines
### 3.4. Response Templates and Guidelines
**APPROPRIATE RESPONSES:**
@@ -220,7 +214,7 @@ For LOW RISK situations involving general mental health concerns:
## 4. EMERGENCY REPORTING AND LEGAL OBLIGATIONS
### 4.1 Mandatory Reporting Requirements
### 4.1. Mandatory Reporting Requirements
We are legally obligated to report to appropriate authorities when:
@@ -240,7 +234,7 @@ We are legally obligated to report to appropriate authorities when:
**(h)** **Emergency Circumstances:** When emergency services intervention may be necessary.
### 4.2 Information Sharing Protocols
### 4.2. Information Sharing Protocols
When reporting is necessary:
@@ -260,7 +254,7 @@ When reporting is necessary:
**(h)** **Professional Standards:** Follow all applicable professional and legal standards.
### 4.3 Jurisdictional Considerations
### 4.3. Jurisdictional Considerations
Our reporting obligations vary by jurisdiction and may include:
@@ -280,7 +274,13 @@ Our reporting obligations vary by jurisdiction and may include:
**(h)** **Treaty Obligations:** International agreements on emergency assistance.
### 4.4 Emergency Contact Protocols
### 4.4. Emergency Contact Protocols
:::tip[Heads Up!]{icon=pen}
The policy or policies in this section are still a work in progress. We have not yet implemented the necessary infrastructure to comply with this section.
We are working very hard to get them in place as soon as possible. If you would like to help, consider [applying to join our team!](https://forms.nhcarrigan.com/o/docs/forms/mCxDu3snk9TzFiDjrT4Vc8/4)
:::
For immediate emergencies, we maintain:
@@ -302,7 +302,13 @@ For immediate emergencies, we maintain:
## 5. RESOURCES AND REFERRALS
### 5.1 Crisis Resources Database
:::tip[Heads Up!]{icon=pen}
The policy or policies in this section are still a work in progress. We have not yet implemented the necessary infrastructure to comply with this section.
We are working very hard to get them in place as soon as possible. If you would like to help, consider [applying to join our team!](https://forms.nhcarrigan.com/o/docs/forms/mCxDu3snk9TzFiDjrT4Vc8/4)
:::
### 5.1. Crisis Resources Database
We maintain an up-to-date database of:
@@ -322,7 +328,7 @@ We maintain an up-to-date database of:
**(g)** **Emergency Services:** 911 (US), 999 (UK), 112 (EU), 000 (Australia);
**(h)** **Local Crisis Centers:** Regional crisis intervention centres.
**(h)** **Local Crisis Centres:** Regional crisis intervention centres.
**ONGOING SUPPORT RESOURCES:**
@@ -336,13 +342,13 @@ We maintain an up-to-date database of:
**(e)** **Peer Support Networks:** Peer-led mental health support groups;
**(f)** **Community Mental Health Centers:** Local community-based services;
**(f)** **Community Mental Health Centres:** Local community-based services;
**(g)** **University Counselling Centers:** For students and academic community;
**(g)** **University Counselling Centres:** For students and academic community;
**(h)** **Employee Assistance Programs:** Workplace mental health resources.
### 5.2 Specialised Resources
### 5.2. Specialised Resources
**DEMOGRAPHIC-SPECIFIC RESOURCES:**
@@ -362,7 +368,7 @@ We maintain an up-to-date database of:
**(h)** **Accessibility Resources:** Services for individuals with disabilities.
### 5.3 Resource Quality Assurance
### 5.3. Resource Quality Assurance
All resources in our database are:
@@ -382,7 +388,7 @@ All resources in our database are:
**(h)** **Quality Monitored:** Ongoing monitoring of service quality and availability.
### 5.4 Resource Presentation Guidelines
### 5.4. Resource Presentation Guidelines
When providing resources:
@@ -404,7 +410,7 @@ When providing resources:
## 6. TEAM TRAINING AND PREPAREDNESS
### 6.1 Mandatory Training Requirements
### 6.1. Mandatory Training Requirements
All team members receive training on:
@@ -424,7 +430,7 @@ All team members receive training on:
**(h)** **Self-Care Practices:** Managing the emotional impact of crisis work.
### 6.2 Specialised Training for Response Team
### 6.2. Specialised Training for Response Team
Designated crisis response team members receive additional training in:
@@ -444,7 +450,7 @@ Designated crisis response team members receive additional training in:
**(h)** **Trauma-Informed Approaches:** Understanding trauma impacts on communication.
### 6.3 Ongoing Education and Updates
### 6.3. Ongoing Education and Updates
Our training programme includes:
@@ -464,7 +470,7 @@ Our training programme includes:
**(h)** **Performance Review:** Regular assessment of crisis response effectiveness.
### 6.4 Support for Team Members
### 6.4. Support for Team Members
We provide support for team members including:
@@ -486,7 +492,7 @@ We provide support for team members including:
## 7. DOCUMENTATION AND RECORD KEEPING
### 7.1 Documentation Requirements
### 7.1. Documentation Requirements
All crisis situations must be documented with:
@@ -506,7 +512,7 @@ All crisis situations must be documented with:
**(h)** **Resolution Status:** Current status and any resolution achieved.
### 7.2 Privacy and Confidentiality
### 7.2. Privacy and Confidentiality
Crisis documentation must balance thorough record-keeping with privacy:
@@ -526,7 +532,7 @@ Crisis documentation must balance thorough record-keeping with privacy:
**(h)** **Regular Review:** Regular review of documentation practices for privacy compliance.
### 7.3 Reporting and Analysis
### 7.3. Reporting and Analysis
We conduct regular analysis of crisis situations to:
@@ -546,7 +552,7 @@ We conduct regular analysis of crisis situations to:
**(h)** **Legal Compliance:** Ensure ongoing compliance with legal obligations.
### 7.4 Quality Assurance
### 7.4. Quality Assurance
Our documentation system includes:
@@ -568,7 +574,7 @@ Our documentation system includes:
## 8. COMMUNITY EDUCATION AND PREVENTION
### 8.1 Mental Health Awareness
### 8.1. Mental Health Awareness
We promote mental health awareness through:
@@ -588,7 +594,7 @@ We promote mental health awareness through:
**(h)** **Crisis Prevention:** Educational content about recognising crisis warning signs.
### 8.2 Community Guidelines for Mental Health Discussions
### 8.2. Community Guidelines for Mental Health Discussions
Our community guidelines establish:
@@ -608,7 +614,7 @@ Our community guidelines establish:
**(h)** **Harmful Content:** Prohibition on content that could harm vulnerable individuals.
### 8.3 Proactive Support Measures
### 8.3. Proactive Support Measures
We implement proactive measures including:
@@ -628,13 +634,13 @@ We implement proactive measures including:
**(h)** **Community Connection:** Features that promote healthy community connection.
### 8.4 Partnership Development
### 8.4. Partnership Development
We develop partnerships with:
**(a)** **Mental Health Organisations:** Local and national mental health organisations;
**(b)** **Crisis Centers:** Crisis intervention centres and hotlines;
**(b)** **Crisis Centres:** Crisis intervention centres and hotlines;
**(c)** **Educational Institutions:** Schools and universities with mental health programmes;
@@ -650,7 +656,7 @@ We develop partnerships with:
## 9. LEGAL COMPLIANCE AND LIABILITY
### 9.1 Limitation of Liability
### 9.1. Limitation of Liability
**IMPORTANT LEGAL DISCLAIMERS:**
@@ -670,7 +676,7 @@ We develop partnerships with:
**(h)** This policy does not create professional therapeutic relationships.
### 9.2 Duty of Care Limitations
### 9.2. Duty of Care Limitations
Our duty of care is limited to:
@@ -690,7 +696,7 @@ Our duty of care is limited to:
**(h)** **Continuous Improvement:** Regular review and improvement of procedures.
### 9.3 Professional Boundaries
### 9.3. Professional Boundaries
We maintain clear boundaries by:
@@ -710,7 +716,7 @@ We maintain clear boundaries by:
**(h)** **Ethical Standards:** Adhering to ethical standards for non-professional support.
### 9.4 Legal Consultation Framework
### 9.4. Legal Consultation Framework
We maintain legal consultation capabilities for:
@@ -732,7 +738,7 @@ We maintain legal consultation capabilities for:
## 10. CONTACT INFORMATION AND RESOURCES
### 10.1 Internal Crisis Response Team
### 10.1. Internal Crisis Response Team
**Crisis Response Team:** crisis-response@nhcarrigan.com
@@ -742,7 +748,7 @@ We maintain legal consultation capabilities for:
**24/7 Emergency Escalation:** Available through designated emergency contact procedures
### 10.2 External Emergency Resources
### 10.2. External Emergency Resources
**IMMEDIATE CRISIS RESOURCES:**
@@ -758,7 +764,7 @@ We maintain legal consultation capabilities for:
**(f)** **Emergency Services:** 911 (US), 999 (UK), 112 (EU), 000 (Australia)
### 10.3 Professional Mental Health Resources
### 10.3. Professional Mental Health Resources
**(a)** **Psychology Today:** https://www.psychologytoday.com
@@ -770,7 +776,7 @@ We maintain legal consultation capabilities for:
**(e)** **International Association for Suicide Prevention:** https://www.iasp.info
### 10.4 Community Support and Information
### 10.4. Community Support and Information
**Community Support:** community@nhcarrigan.com
@@ -782,16 +788,6 @@ We maintain legal consultation capabilities for:
---
**Document Version:** 1.0
**Last Updated:** 25 September 2025
**Effective Date:** 25 September 2025
**Next Review Date:** 25 March 2026
---
*This Crisis and Mental Health Management Policy establishes our commitment to supporting community wellbeing whilst maintaining clear professional boundaries. We are not mental health professionals and cannot provide therapeutic services. If you or someone you know is in crisis, please contact emergency services or professional crisis intervention services immediately.*
**IF YOU ARE IN IMMEDIATE DANGER, CONTACT EMERGENCY SERVICES: 911 (US), 999 (UK), 112 (EU), 000 (Australia)**
+63 -65
View File
@@ -6,7 +6,7 @@ title: DMCA and Intellectual Property Compliance Policy
## 1. POLICY OVERVIEW AND PRINCIPLES
### 1.1 Fundamental Principles
### 1.1. Fundamental Principles
This Digital Millennium Copyright Act and Intellectual Property Compliance Policy ("Policy") is founded upon the following core principles:
@@ -18,7 +18,7 @@ This Digital Millennium Copyright Act and Intellectual Property Compliance Polic
**(d)** Ignorance of applicable law or this Policy does not constitute a valid defence for non-compliance.
### 1.2 Scope of Application
### 1.2. Scope of Application
This Policy applies to:
@@ -30,7 +30,7 @@ This Policy applies to:
**(d)** All third-party integrations and linked content.
### 1.3 Legal Framework
### 1.3. Legal Framework
This Policy is designed to comply with:
@@ -44,7 +44,7 @@ This Policy is designed to comply with:
## 2. COPYRIGHT PROTECTION AND COMPLIANCE
### 2.1 Prohibition on Unauthorised Sharing
### 2.1. Prohibition on Unauthorised Sharing
You must not share copyrighted material through our Services unless you have:
@@ -54,7 +54,7 @@ You must not share copyrighted material through our Services unless you have:
**(c)** Legal basis for the sharing under applicable copyright exceptions or limitations.
### 2.2 Proper Attribution Requirements
### 2.2. Proper Attribution Requirements
When sharing material is permitted, you must:
@@ -66,7 +66,7 @@ When sharing material is permitted, you must:
**(d)** Clearly indicate any modifications made to the original material.
### 2.3 Linking vs. Copying
### 2.3. Linking vs. Copying
**(a)** **Permitted Practice:** Linking to legitimately published content is generally acceptable and encouraged;
@@ -74,7 +74,7 @@ When sharing material is permitted, you must:
**(c)** **User-Generated Content:** Be aware that content posted on social media platforms and similar services may be subject to copyright protection.
### 2.4 Due Diligence Requirements
### 2.4. Due Diligence Requirements
When uncertain about the copyright status of material:
@@ -88,7 +88,7 @@ When uncertain about the copyright status of material:
## 3. FAIR USE AND EDUCATIONAL PURPOSES
### 3.1 Fair Use Principles
### 3.1. Fair Use Principles
Limited use of copyrighted material may be permissible under fair use doctrines for:
@@ -100,7 +100,7 @@ Limited use of copyrighted material may be permissible under fair use doctrines
**(d)** Other purposes recognised under applicable fair use provisions.
### 3.2 Fair Use Assessment Factors
### 3.2. Fair Use Assessment Factors
When claiming fair use, you must consider:
@@ -112,7 +112,7 @@ When claiming fair use, you must consider:
**(d)** **Market Impact:** The effect of your use on the potential market for the original work.
### 3.3 Educational Use Clarification
### 3.3. Educational Use Clarification
**(a)** Educational context does not automatically qualify as fair use;
@@ -122,7 +122,7 @@ When claiming fair use, you must consider:
**(d)** Commercial educational uses face higher scrutiny than non-profit educational activities.
### 3.4 Documentation and Source Citation
### 3.4. Documentation and Source Citation
When relying on fair use:
@@ -136,7 +136,7 @@ When relying on fair use:
## 4. ATTRIBUTION AND CITATION STANDARDS
### 4.1 Mandatory Attribution Elements
### 4.1. Mandatory Attribution Elements
When using or referencing others' work, you must provide:
@@ -152,7 +152,7 @@ When using or referencing others' work, you must provide:
**(f)** A clear indication of any modifications made to the original.
### 4.2 Digital Citation Best Practices
### 4.2. Digital Citation Best Practices
For digital content:
@@ -164,7 +164,7 @@ For digital content:
**(d)** Follow established citation standards appropriate to your field or context.
### 4.3 Academic and Professional Citations
### 4.3. Academic and Professional Citations
When creating academic or professional content:
@@ -178,7 +178,7 @@ When creating academic or professional content:
## 5. ORIGINAL CONTENT CREATION AND LICENSING
### 5.1 Original Content Rights
### 5.1. Original Content Rights
When creating and sharing original content through our Services:
@@ -190,7 +190,7 @@ When creating and sharing original content through our Services:
**(d)** Copyright notices may be added to clarify ownership and rights.
### 5.2 Third-Party Content in Original Works
### 5.2. Third-Party Content in Original Works
When incorporating third-party elements into your original creations:
@@ -202,7 +202,7 @@ When incorporating third-party elements into your original creations:
**(d)** Consider the impact on your ability to license the resulting work.
### 5.3 Community Usage Rights
### 5.3. Community Usage Rights
By sharing content in our community spaces, you grant:
@@ -214,7 +214,7 @@ By sharing content in our community spaces, you grant:
**(d)** Such other rights as may be specified in our Terms of Service.
### 5.4 Licensing Recommendations
### 5.4. Licensing Recommendations
We encourage content creators to:
@@ -228,7 +228,7 @@ We encourage content creators to:
## 6. OPEN SOURCE AND CREATIVE COMMONS COMPLIANCE
### 6.1 Open Source Software
### 6.1. Open Source Software
When using open source software:
@@ -240,7 +240,7 @@ When using open source software:
**(d)** Be aware of licence compatibility issues when combining multiple open source components.
### 6.2 Creative Commons Materials
### 6.2. Creative Commons Materials
When using Creative Commons licensed content:
@@ -254,7 +254,7 @@ When using Creative Commons licensed content:
**(e)** Understand the implications of no-derivatives restrictions.
### 6.3 Licence Verification
### 6.3. Licence Verification
**(a)** Verify licence information from authoritative sources;
@@ -264,7 +264,7 @@ When using Creative Commons licensed content:
**(d)** Maintain records of your licence compliance efforts.
### 6.4 Contributing to Open Projects
### 6.4. Contributing to Open Projects
When contributing to open source or Creative Commons projects:
@@ -278,7 +278,7 @@ When contributing to open source or Creative Commons projects:
## 7. CODE SHARING AND TECHNICAL CONTENT
### 7.1 Code Snippets and Examples
### 7.1. Code Snippets and Examples
**(a)** **Short Code Snippets:** Generally acceptable under fair use for educational or troubleshooting purposes;
@@ -288,7 +288,7 @@ When contributing to open source or Creative Commons projects:
**(d)** **Modified Code:** Must respect original licence requirements and indicate modifications.
### 7.2 Educational Code Sharing
### 7.2. Educational Code Sharing
When sharing code for educational purposes:
@@ -300,7 +300,7 @@ When sharing code for educational purposes:
**(d)** Respect any restrictions on commercial use or redistribution.
### 7.3 Technical Documentation
### 7.3. Technical Documentation
**(a)** Original technical documentation is encouraged and valued;
@@ -310,7 +310,7 @@ When sharing code for educational purposes:
**(d)** Consider creating transformative content rather than copying existing documentation.
### 7.4 Open Source Best Practices
### 7.4. Open Source Best Practices
When sharing your own code:
@@ -324,7 +324,7 @@ When sharing your own code:
## 8. PLAGIARISM PREVENTION AND ACADEMIC INTEGRITY
### 8.1 Definition and Prohibition
### 8.1. Definition and Prohibition
Plagiarism, defined as presenting others' work as your own, is strictly prohibited and includes:
@@ -336,7 +336,7 @@ Plagiarism, defined as presenting others' work as your own, is strictly prohibit
**(d)** Self-plagiarism (reusing your own previously published work without disclosure).
### 8.2 Consequences of Plagiarism
### 8.2. Consequences of Plagiarism
Plagiarism may result in:
@@ -350,7 +350,7 @@ Plagiarism may result in:
**(e)** Permanent record of violation affecting future community participation.
### 8.3 Prevention Measures
### 8.3. Prevention Measures
To avoid plagiarism:
@@ -364,7 +364,7 @@ To avoid plagiarism:
**(e)** When in doubt, provide attribution rather than risk infringement.
### 8.4 Academic and Professional Standards
### 8.4. Academic and Professional Standards
**(a)** Follow the citation standards appropriate to your field or institution;
@@ -376,7 +376,7 @@ To avoid plagiarism:
## 9. TRADEMARK COMPLIANCE
### 9.1 Trademark Recognition and Respect
### 9.1. Trademark Recognition and Respect
When referencing trademarked products, services, or organisations:
@@ -388,7 +388,7 @@ When referencing trademarked products, services, or organisations:
**(d)** Respect trademark guidelines published by trademark owners.
### 9.2 Nominative Fair Use
### 9.2. Nominative Fair Use
You may use trademarks for:
@@ -400,7 +400,7 @@ You may use trademarks for:
**(d)** Parody and criticism (with careful consideration of other legal restrictions).
### 9.3 Prohibited Trademark Uses
### 9.3. Prohibited Trademark Uses
You must not:
@@ -412,7 +412,7 @@ You must not:
**(d)** Use trademarks in a way that dilutes their distinctiveness or harms their reputation.
### 9.4 Community Brand Protection
### 9.4. Community Brand Protection
**(a)** Respect our own trademarks and brand elements;
@@ -424,11 +424,11 @@ You must not:
## 10. DMCA COMPLIANCE AND TAKEDOWN PROCEDURES
### 10.1 DMCA Policy Statement
### 10.1. DMCA Policy Statement
We comply with the Digital Millennium Copyright Act and maintain procedures for addressing claims of copyright infringement. We respect the rights of copyright owners whilst protecting the legitimate interests of our users.
### 10.2 Submitting DMCA Takedown Notices
### 10.2. Submitting DMCA Takedown Notices
To submit a valid DMCA takedown notice, contact **dmca@nhcarrigan.com** with the following information:
@@ -444,7 +444,7 @@ To submit a valid DMCA takedown notice, contact **dmca@nhcarrigan.com** with the
**(f)** **Physical or Electronic Signature:** Your physical or electronic signature.
### 10.3 Processing DMCA Notices
### 10.3. Processing DMCA Notices
Upon receipt of a valid DMCA takedown notice:
@@ -456,7 +456,7 @@ Upon receipt of a valid DMCA takedown notice:
**(d)** We will document the takedown for our records and potential future reference.
### 10.4 Response Timeline
### 10.4. Response Timeline
We endeavour to process DMCA takedown notices within:
@@ -468,11 +468,11 @@ We endeavour to process DMCA takedown notices within:
## 11. DMCA COUNTER-NOTIFICATION PROCESS
### 11.1 Right to Counter-Notification
### 11.1. Right to Counter-Notification
If you believe your content was removed in error or misidentification, you may submit a counter-notification to **dmca@nhcarrigan.com**.
### 11.2 Counter-Notification Requirements
### 11.2. Counter-Notification Requirements
A valid counter-notification must include:
@@ -488,7 +488,7 @@ A valid counter-notification must include:
**(f)** **Physical or Electronic Signature:** Your physical or electronic signature.
### 11.3 Counter-Notification Processing
### 11.3. Counter-Notification Processing
Upon receipt of a valid counter-notification:
@@ -500,17 +500,17 @@ Upon receipt of a valid counter-notification:
**(d)** We will document the counter-notification and restoration for our records.
### 11.4 Legal Consequences
### 11.4. Legal Consequences
Both takedown notices and counter-notifications are made under penalty of perjury. False claims may result in liability for damages, attorney's fees, and other legal consequences under applicable law.
## 12. REPEAT INFRINGER POLICY
### 12.1 Policy Statement
### 12.1. Policy Statement
We maintain a policy for addressing repeat copyright infringers to ensure ongoing DMCA compliance and protect the rights of copyright holders.
### 12.2 Tracking and Documentation
### 12.2. Tracking and Documentation
We maintain records of:
@@ -522,7 +522,7 @@ We maintain records of:
**(d)** User violation history and patterns.
### 12.3 Consequences for Repeat Infringement
### 12.3. Consequences for Repeat Infringement
Users who repeatedly infringe copyright may face:
@@ -534,7 +534,7 @@ Users who repeatedly infringe copyright may face:
**(d)** **Severe Cases:** Immediate termination for egregious or commercial infringement.
### 12.4 Appeals Process
### 12.4. Appeals Process
Users subject to repeat infringer sanctions may:
@@ -548,7 +548,7 @@ Users subject to repeat infringer sanctions may:
## 13. EDUCATION AND AWARENESS
### 13.1 Community Education Commitment
### 13.1. Community Education Commitment
We are committed to educating our community about intellectual property rights and responsibilities through:
@@ -560,7 +560,7 @@ We are committed to educating our community about intellectual property rights a
**(d)** Clear examples of acceptable and unacceptable practices.
### 13.2 Resources and Guidance
### 13.2. Resources and Guidance
We provide access to:
@@ -572,7 +572,7 @@ We provide access to:
**(d)** Contact information for additional support and guidance.
### 13.3 Seeking Clarification
### 13.3. Seeking Clarification
Community members are encouraged to:
@@ -584,7 +584,7 @@ Community members are encouraged to:
**(d)** Participate in educational activities and discussions.
### 13.4 Professional Development
### 13.4. Professional Development
We encourage community members to:
@@ -598,7 +598,7 @@ We encourage community members to:
## 14. POLICY UPDATES AND COMPLIANCE
### 14.1 Regular Policy Review
### 14.1. Regular Policy Review
This Policy is reviewed regularly to ensure:
@@ -610,7 +610,7 @@ This Policy is reviewed regularly to ensure:
**(d)** Consistency with best practices in the field.
### 14.2 Update Notifications
### 14.2. Update Notifications
Changes to this Policy will be communicated through:
@@ -618,35 +618,35 @@ Changes to this Policy will be communicated through:
**(b)** Email notifications to registered users;
**(c)** Community forum announcements and discussions;
**(c)** Community announcements and discussions;
**(d)** Documentation updates with clear change logs.
### 14.3 Continued Use and Acceptance
### 14.3. Continued Use and Acceptance
Continued participation in our community following Policy updates constitutes acceptance of the revised terms. If you do not agree to the updated Policy, you must cease using our Services.
### 14.4 Feedback and Suggestions
### 14.4. Feedback and Suggestions
We welcome feedback on this Policy and suggestions for improvement. Please contact us at **dmca@nhcarrigan.com** with your comments and recommendations.
## 15. CONTACT INFORMATION AND SUPPORT
### 15.1 Primary Contact
### 15.1. Primary Contact
For all matters related to this Policy, including DMCA notices, questions, and reports of violations:
**Email:** dmca@nhcarrigan.com
### 15.2 Additional Resources
### 15.2. Additional Resources
**General Support:** privacy@nhcarrigan.com
**Community Forum:** https://forum.nhcarrigan.com
**Discord Community:** https://chat.nhcarrigan.com
**Legal Inquiries:** legal@nhcarrigan.com
### 15.3 Response Commitments
### 15.3. Response Commitments
We commit to:
@@ -658,7 +658,7 @@ We commit to:
**(d)** Maintaining accurate records of all communications and actions taken.
### 15.4 Emergency Procedures
### 15.4. Emergency Procedures
For urgent copyright infringement matters that pose immediate legal risk:
@@ -672,7 +672,7 @@ For urgent copyright infringement matters that pose immediate legal risk:
## 16. LEGAL DISCLAIMER
### 16.1 Policy Limitations
### 16.1. Policy Limitations
This Policy:
@@ -684,7 +684,7 @@ This Policy:
**(d)** May not address all applicable laws in every jurisdiction.
### 16.2 Professional Consultation
### 16.2. Professional Consultation
Users are encouraged to:
@@ -696,7 +696,7 @@ Users are encouraged to:
**(d)** Understand that our guidance cannot replace professional legal advice.
### 16.3 Limitation of Liability
### 16.3. Limitation of Liability
**IMPORTANT: Comprehensive liability limitations and warranty disclaimers applicable to this Policy and all our services are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
@@ -708,9 +708,7 @@ In addition to those comprehensive protections:
**(c)** Professional legal advice should be sought for significant legal decisions.
**Last Updated:** [Date to be inserted]
**Effective Date:** [Date to be inserted]
---
+57 -59
View File
@@ -6,11 +6,11 @@ title: Export Control and Sanctions Compliance Policy
## 1. INTRODUCTION AND SCOPE
### 1.1 Policy Purpose and Objectives
### 1.1. Policy Purpose and Objectives
This Export Control and Sanctions Compliance Policy ("Policy") establishes comprehensive procedures and requirements for compliance with export control laws, economic sanctions programmes, and international trade regulations applicable to nhcarrigan ("we," "us," "our," or "the Company") and users of our services, applications, and platforms (collectively, the "Services"). This Policy ensures lawful international distribution and use of our technology and services whilst preventing unauthorised access by restricted parties.
This Export Control and Sanctions Compliance Policy ("Policy") establishes comprehensive procedures and requirements for compliance with export control laws, economic sanctions programmes, and international trade regulations applicable to NHCarrigan ("we," "us," "our," or "the Company") and users of our services, applications, and platforms (collectively, the "Services"). This Policy ensures lawful international distribution and use of our technology and services whilst preventing unauthorised access by restricted parties.
### 1.2 Regulatory Framework
### 1.2. Regulatory Framework
This Policy addresses compliance with multiple regulatory regimes including:
@@ -30,11 +30,11 @@ This Policy addresses compliance with multiple regulatory regimes including:
**(h)** **Emerging Regulations**: New and evolving export control and sanctions regulations worldwide.
### 1.3 Application and Scope
### 1.3. Application and Scope
This Policy applies to:
**(a)** **Technology Services**: All software, applications, cloud services, and digital technologies provided by nhcarrigan;
**(a)** **Technology Services**: All software, applications, cloud services, and digital technologies provided by NHCarrigan;
**(b)** **Data and Information**: Technical data, source code, algorithms, and proprietary information;
@@ -50,9 +50,9 @@ This Policy applies to:
**(h)** **Research and Development**: Research collaborations, technical exchanges, and development partnerships.
### 1.4 Compliance Commitment
### 1.4. Compliance Commitment
nhcarrigan is committed to:
NHCarrigan is committed to:
**(a)** **Legal Compliance**: Full compliance with all applicable export control and sanctions laws;
@@ -72,7 +72,7 @@ nhcarrigan is committed to:
## 2. CLASSIFICATION AND CONTROL DETERMINATIONS
### 2.1 Technology Classification
### 2.1. Technology Classification
We have classified our technology and services according to applicable export control regulations:
@@ -92,7 +92,7 @@ We have classified our technology and services according to applicable export co
**(h)** **Third-Party Components**: Third-party software components and dependencies are evaluated for their export control implications.
### 2.2 Control Determinations
### 2.2. Control Determinations
Based on classification analysis, our services are subject to the following control determinations:
@@ -112,7 +112,7 @@ Based on classification analysis, our services are subject to the following cont
**(h)** **Artificial Intelligence**: AI and machine learning capabilities may be subject to emerging export control regulations.
### 2.3 License Requirements and Exceptions
### 2.3. License Requirements and Exceptions
We utilise the following licensing approaches:
@@ -132,7 +132,7 @@ We utilise the following licensing approaches:
**(h)** **Transit Licences**: We obtain transit licences when required for temporary presence in controlled jurisdictions.
### 2.4 Ongoing Classification Reviews
### 2.4. Ongoing Classification Reviews
We maintain ongoing classification reviews through:
@@ -154,7 +154,7 @@ We maintain ongoing classification reviews through:
## 3. SANCTIONS COMPLIANCE PROGRAMME
### 3.1 Sanctions Screening and Monitoring
### 3.1. Sanctions Screening and Monitoring
We implement comprehensive sanctions screening including:
@@ -174,7 +174,7 @@ We implement comprehensive sanctions screening including:
**(h)** **Third-Party Screening**: Screening of all third-party service providers and business partners.
### 3.2 Prohibited Parties and Jurisdictions
### 3.2. Prohibited Parties and Jurisdictions
We maintain comprehensive restrictions on:
@@ -194,7 +194,7 @@ We maintain comprehensive restrictions on:
**(h)** **Shell Companies**: Shell companies or entities designed to circumvent sanctions restrictions.
### 3.3 Geographic Restrictions
### 3.3. Geographic Restrictions
Our services are subject to geographic restrictions including:
@@ -214,7 +214,7 @@ Our services are subject to geographic restrictions including:
**(h)** **Payment Restrictions**: Restrictions on payment processing for certain jurisdictions.
### 3.4 Sanctions Violation Response
### 3.4. Sanctions Violation Response
When potential sanctions violations are identified:
@@ -236,7 +236,7 @@ When potential sanctions violations are identified:
## 4. USER AND CUSTOMER COMPLIANCE
### 4.1 User Registration and Verification
### 4.1. User Registration and Verification
All users must comply with our registration and verification procedures:
@@ -256,7 +256,7 @@ All users must comply with our registration and verification procedures:
**(h)** **Ongoing Obligations**: Acceptance of ongoing compliance obligations and monitoring requirements.
### 4.2 Prohibited End Uses and End Users
### 4.2. Prohibited End Uses and End Users
Users are prohibited from:
@@ -276,7 +276,7 @@ Users are prohibited from:
**(h)** **Unauthorised Transfers**: Transfers to prohibited parties or for prohibited end uses.
### 4.3 User Compliance Obligations
### 4.3. User Compliance Obligations
All users agree to:
@@ -296,7 +296,7 @@ All users agree to:
**(h)** **Audit Rights**: Accept our right to audit compliance with export control and sanctions obligations.
### 4.4 Enhanced Due Diligence Requirements
### 4.4. Enhanced Due Diligence Requirements
For certain users and transactions, we implement enhanced due diligence including:
@@ -318,7 +318,7 @@ For certain users and transactions, we implement enhanced due diligence includin
## 5. TECHNOLOGY TRANSFER CONTROLS
### 5.1 Technical Data and Source Code
### 5.1. Technical Data and Source Code
Transfer of technical data and source code is subject to:
@@ -338,7 +338,7 @@ Transfer of technical data and source code is subject to:
**(h)** **Retention Policies**: Implementation of appropriate retention and deletion policies for technical data.
### 5.2 Foreign National Employee Controls
### 5.2. Foreign National Employee Controls
For foreign national employees and contractors:
@@ -358,7 +358,7 @@ For foreign national employees and contractors:
**(h)** **Termination Procedures**: Appropriate procedures for termination and technology access revocation.
### 5.3 Research and Development Collaborations
### 5.3. Research and Development Collaborations
For research and development activities:
@@ -378,7 +378,7 @@ For research and development activities:
**(h)** **Government Funding**: Compliance with government funding requirements and restrictions.
### 5.4 Cloud and Remote Services
### 5.4. Cloud and Remote Services
For cloud and remote service provision:
@@ -400,7 +400,13 @@ For cloud and remote service provision:
## 6. COMPLIANCE MONITORING AND ENFORCEMENT
### 6.1 Automated Monitoring Systems
### 6.1. Automated Monitoring Systems
:::tip[Heads Up!]{icon=pen}
The policy or policies in this section are still a work in progress. We have not yet implemented the necessary infrastructure to comply with this section.
We are working very hard to get them in place as soon as possible. If you would like to help, consider [applying to join our team!](https://forms.nhcarrigan.com/o/docs/forms/mCxDu3snk9TzFiDjrT4Vc8/4)
:::
We employ automated systems for compliance monitoring including:
@@ -420,13 +426,13 @@ We employ automated systems for compliance monitoring including:
**(h)** **Integration Systems**: Integration with government databases and sanctions list feeds.
### 6.2 Manual Review Procedures
### 6.2. Manual Review Procedures
Supplementing automated systems, we maintain manual review procedures including:
**(a)** **High-Risk Transactions**: Manual review of all high-risk transactions and relationships;
**(b)** **Complex Cases**: Human review of complex compliance cases requiring judgment and analysis;
**(b)** **Complex Cases**: Human review of complex compliance cases requiring judgement and analysis;
**(c)** **Exception Handling**: Manual processing of cases requiring special consideration or exceptions;
@@ -440,7 +446,7 @@ Supplementing automated systems, we maintain manual review procedures including:
**(h)** **Continuous Improvement**: Continuous improvement of manual review processes and procedures.
### 6.3 Violation Detection and Response
### 6.3. Violation Detection and Response
When potential violations are detected:
@@ -460,7 +466,7 @@ When potential violations are detected:
**(h)** **Stakeholder Communication**: Appropriate communication with stakeholders regarding violations and response.
### 6.4 Enforcement Actions
### 6.4. Enforcement Actions
Compliance violations may result in:
@@ -482,7 +488,7 @@ Compliance violations may result in:
## 7. TRAINING AND AWARENESS
### 7.1 Employee Training Programmes
### 7.1. Employee Training Programmes
All employees receive comprehensive export control and sanctions training including:
@@ -502,7 +508,7 @@ All employees receive comprehensive export control and sanctions training includ
**(h)** **Certification Programmes**: Support for professional certification in export control and sanctions compliance.
### 7.2 Management and Leadership Training
### 7.2. Management and Leadership Training
Management and leadership receive enhanced training including:
@@ -522,7 +528,7 @@ Management and leadership receive enhanced training including:
**(h)** **Continuous Improvement**: Leadership in continuous improvement of compliance programmes.
### 7.3 Customer and Partner Education
### 7.3. Customer and Partner Education
We provide education and resources for customers and partners including:
@@ -542,7 +548,7 @@ We provide education and resources for customers and partners including:
**(h)** **Documentation Support**: Support in developing compliance documentation and procedures.
### 7.4 Awareness and Communication
### 7.4. Awareness and Communication
We maintain ongoing awareness and communication through:
@@ -564,7 +570,7 @@ We maintain ongoing awareness and communication through:
## 8. RECORD KEEPING AND DOCUMENTATION
### 8.1 Documentation Requirements
### 8.1. Documentation Requirements
We maintain comprehensive documentation including:
@@ -584,7 +590,7 @@ We maintain comprehensive documentation including:
**(h)** **Violation Records**: Complete records of any violations and remedial actions taken.
### 8.2 Retention Periods
### 8.2. Retention Periods
Documentation is retained according to the following schedule:
@@ -604,7 +610,7 @@ Documentation is retained according to the following schedule:
**(h)** **Classification Records**: Classification determinations retained for life of technology or product.
### 8.3 Data Security and Access Controls
### 8.3. Data Security and Access Controls
Compliance documentation is protected through:
@@ -624,7 +630,7 @@ Compliance documentation is protected through:
**(h)** **Breach Response**: Incident response procedures for security breaches affecting compliance records.
### 8.4 Government Access and Cooperation
### 8.4. Government Access and Cooperation
We cooperate fully with government access requests through:
@@ -646,7 +652,7 @@ We cooperate fully with government access requests through:
## 9. INTERNATIONAL OPERATIONS AND SUBSIDIARIES
### 9.1 Global Compliance Framework
### 9.1. Global Compliance Framework
Our international operations follow a unified compliance framework including:
@@ -666,7 +672,7 @@ Our international operations follow a unified compliance framework including:
**(h)** **Regular Auditing**: Regular auditing of international compliance programmes and activities.
### 9.2 Regional Compliance Programmes
### 9.2. Regional Compliance Programmes
We maintain regional compliance programmes including:
@@ -686,7 +692,7 @@ We maintain regional compliance programmes including:
**(h)** **Cultural Adaptation**: Adaptation of compliance programmes to local cultural and business practices.
### 9.3 Cross-Border Data Flows
### 9.3. Cross-Border Data Flows
Management of cross-border data flows includes:
@@ -706,7 +712,7 @@ Management of cross-border data flows includes:
**(h)** **Incident Response**: Incident response procedures for cross-border data incidents.
### 9.4 Joint Ventures and Partnerships
### 9.4. Joint Ventures and Partnerships
For international joint ventures and partnerships:
@@ -728,7 +734,7 @@ For international joint ventures and partnerships:
## 10. EMERGING TECHNOLOGIES AND FUTURE COMPLIANCE
### 10.1 Emerging Technology Assessment
### 10.1. Emerging Technology Assessment
We proactively assess emerging technologies including:
@@ -748,7 +754,7 @@ We proactively assess emerging technologies including:
**(h)** **Space Technologies**: Export control implications of space and satellite technologies.
### 10.2 Regulatory Monitoring and Anticipation
### 10.2. Regulatory Monitoring and Anticipation
We actively monitor regulatory developments including:
@@ -768,7 +774,7 @@ We actively monitor regulatory developments including:
**(h)** **Government Engagement**: Active engagement with government authorities on regulatory development.
### 10.3 Adaptive Compliance Framework
### 10.3. Adaptive Compliance Framework
Our compliance framework adapts to changes through:
@@ -788,7 +794,7 @@ Our compliance framework adapts to changes through:
**(h)** **Continuous Learning**: Continuous learning and improvement of compliance capabilities.
### 10.4 Innovation and Compliance Balance
### 10.4. Innovation and Compliance Balance
We balance innovation with compliance through:
@@ -810,7 +816,7 @@ We balance innovation with compliance through:
## 11. CONTACT INFORMATION AND SUPPORT
### 11.1 Export Control and Sanctions Compliance
### 11.1. Export Control and Sanctions Compliance
For export control and sanctions compliance matters:
@@ -818,11 +824,11 @@ For export control and sanctions compliance matters:
**Subject Line:** Export Control Compliance - [Brief Description]
**Response Time:** Within 24 hours for compliance inquiries
**Response Time:** Within 7-10 business days for compliance inquiries
**Emergency Contact:** Available for urgent compliance matters
### 11.2 License Applications and Government Relations
### 11.2. License Applications and Government Relations
For license applications and government relations:
@@ -830,11 +836,11 @@ For license applications and government relations:
**Subject Line:** Export License Matter - [License Type]
**Response Time:** Within 2 business days for licensing matters
**Response Time:** Within 7-10 business days for licensing matters
**Government Relations:** Dedicated team for government agency coordination
### 11.3 Sanctions Screening and Verification
### 11.3. Sanctions Screening and Verification
For sanctions screening and verification requests:
@@ -846,7 +852,7 @@ For sanctions screening and verification requests:
**Automated Systems:** Real-time automated screening available through our systems
### 11.4 Training and Education
### 11.4. Training and Education
For export control and sanctions training:
@@ -856,15 +862,7 @@ For export control and sanctions training:
**Training Portal:** Access to online training modules and resources
**Response Time:** Within 3 business days for training requests
**Document Version:** 1.0
**Last Updated:** 15 September 2025
**Effective Date:** 15 September 2025
**Next Review Date:** 15 March 2026
**Response Time:** Within 7-10 business days for training requests
---
+54 -48
View File
@@ -6,11 +6,11 @@ title: Government Actions and Compliance
## 1. INTRODUCTION AND POLICY STATEMENT
### 1.1 Transparency Commitment
### 1.1. Transparency Commitment
This transparency report is published to maintain complete transparency regarding any actions taken by government agencies, law enforcement authorities, or other legal entities that may result in the disclosure of user data or information stored by nhcarrigan ("we," "us," "our," or "the Company").
This transparency report is published to maintain complete transparency regarding any actions taken by government agencies, law enforcement authorities, or other legal entities that may result in the disclosure of user data or information stored by NHCarrigan ("we," "us," "our," or "the Company").
### 1.2 Scope and Coverage
### 1.2. Scope and Coverage
This report covers:
@@ -20,9 +20,9 @@ This report covers:
**(c)** Any asset seizures, data searches, or investigative actions affecting our systems or data;
**(d)** All time periods from the inception of nhcarrigan operations to the date of this report.
**(d)** All time periods from the inception of NHCarrigan operations to the date of this report.
### 1.3 Reporting Principles
### 1.3. Reporting Principles
Our transparency reporting is guided by the following principles:
@@ -36,7 +36,7 @@ Our transparency reporting is guided by the following principles:
## 2. POLICY DECLARATIONS
### 2.1 Proactive Information Sharing
### 2.1. Proactive Information Sharing
We explicitly declare that:
@@ -48,7 +48,7 @@ We explicitly declare that:
**(d)** All government data requests must follow proper legal channels and procedures.
### 2.2 System Integrity and Access
### 2.2. System Integrity and Access
We firmly commit that:
@@ -60,7 +60,7 @@ We firmly commit that:
**(d)** Any access to user data by authorities must be pursuant to valid legal process and within the bounds of applicable law.
### 2.3 Legal Process Requirements
### 2.3. Legal Process Requirements
For any disclosure of user information, we require:
@@ -72,7 +72,7 @@ For any disclosure of user information, we require:
**(d)** Compliance with applicable data protection and privacy laws.
### 2.4 User Notification Policy
### 2.4. User Notification Policy
Subject to legal restrictions and court orders:
@@ -86,13 +86,13 @@ Subject to legal restrictions and court orders:
## 3. INFORMATION REQUESTS
### 3.1 Summary Statistics
### 3.1. Summary Statistics
**Total Requests Received:** 0 (Zero)
**Time Period Covered:** From inception of nhcarrigan operations through the date of this report
**Time Period Covered:** From inception of NHCarrigan operations through the date of this report
### 3.2 Types of Information Requests
### 3.2. Types of Information Requests
We categorise information requests as follows:
@@ -104,13 +104,13 @@ We categorise information requests as follows:
**(d)** **Regulatory Inquiries:** From regulatory bodies regarding compliance or oversight.
### 3.3 Detailed Request Log
### 3.3. Detailed Request Log
| Request Date | Agency/Authority | Type of Request | Information Requested | Legal Basis | Response Date | Result/Action Taken | User Notification |
|--------------|------------------|-----------------|----------------------|-------------|---------------|---------------------|-------------------|
| No requests received to date | | | | | | | |
### 3.4 Response Procedures
### 3.4. Response Procedures
When we receive information requests, our standard procedure includes:
@@ -124,15 +124,15 @@ When we receive information requests, our standard procedure includes:
## 4. WARRANTS AND SUBPOENAS
### 4.1 Summary Statistics
### 4.1. Summary Statistics
**Total Warrants Received:** 0 (Zero)
**Total Subpoenas Received:** 0 (Zero)
**Time Period Covered:** From inception of nhcarrigan operations through the date of this report
**Time Period Covered:** From inception of NHCarrigan operations through the date of this report
### 4.2 Types of Legal Process
### 4.2. Types of Legal Process
We track the following types of legal process:
@@ -144,13 +144,13 @@ We track the following types of legal process:
**(d)** **National Security Letters:** Administrative subpoenas related to national security investigations (where applicable).
### 4.3 Detailed Process Log
### 4.3. Detailed Process Log
| Service Date | Court/Agency | Type of Process | Scope of Request | Response Required | Response Date | Compliance Action | Challenge Filed | User Notification |
|--------------|--------------|-----------------|------------------|-------------------|---------------|-------------------|-----------------|-------------------|
| No legal process served to date | | | | | | | | |
### 4.4 Legal Challenge Policy
### 4.4. Legal Challenge Policy
Our policy regarding legal challenges includes:
@@ -164,13 +164,13 @@ Our policy regarding legal challenges includes:
## 5. ASSET SEIZURES AND SEARCHES
### 5.1 Summary Statistics
### 5.1. Summary Statistics
**Total Seizures/Searches:** 0 (Zero)
**Time Period Covered:** From inception of nhcarrigan operations through the date of this report
**Time Period Covered:** From inception of NHCarrigan operations through the date of this report
### 5.2 Types of Seizures and Searches
### 5.2. Types of Seizures and Searches
We categorise enforcement actions as follows:
@@ -182,13 +182,13 @@ We categorise enforcement actions as follows:
**(d)** **Data Preservation:** Requirements to preserve specific data pending legal proceedings.
### 5.3 Detailed Action Log
### 5.3. Detailed Action Log
| Action Date | Agency | Type of Action | Scope of Search/Seizure | Legal Authority | Property/Data Affected | Recovery/Return | Impact Assessment |
|-------------|--------|----------------|-------------------------|-----------------|------------------------|-----------------|-------------------|
| No seizures or searches to date | | | | | | | |
### 5.4 Response and Mitigation Procedures
### 5.4. Response and Mitigation Procedures
In the event of asset seizures or searches, our procedures include:
@@ -202,7 +202,7 @@ In the event of asset seizures or searches, our procedures include:
## 6. DATA PROTECTION AND PRIVACY SAFEGUARDS
### 6.1 Technical Safeguards
### 6.1. Technical Safeguards
We implement technical measures to protect user data:
@@ -214,7 +214,7 @@ We implement technical measures to protect user data:
**(d)** **Data Minimisation:** Collection and retention of only necessary user information.
### 6.2 Legal Safeguards
### 6.2. Legal Safeguards
Our legal protections include:
@@ -226,7 +226,7 @@ Our legal protections include:
**(d)** **Jurisdictional Analysis:** Careful analysis of jurisdictional issues in cross-border requests.
### 6.3 Operational Safeguards
### 6.3. Operational Safeguards
Our operational procedures include:
@@ -238,7 +238,7 @@ Our operational procedures include:
**(d)** **Recovery Procedures:** Plans for service recovery following any enforcement actions.
### 6.4 International Considerations
### 6.4. International Considerations
For cross-border requests, we consider:
@@ -252,7 +252,7 @@ For cross-border requests, we consider:
## 7. REPORTING METHODOLOGY AND LIMITATIONS
### 7.1 Data Collection
### 7.1. Data Collection
This transparency report is compiled using:
@@ -264,7 +264,7 @@ This transparency report is compiled using:
**(d)** **Legal Review:** Quarterly review by qualified legal counsel for completeness and accuracy.
### 7.2 Reporting Limitations
### 7.2. Reporting Limitations
This report is subject to the following limitations:
@@ -276,7 +276,7 @@ This report is subject to the following limitations:
**(d)** **Aggregation Requirements:** Some jurisdictions may require statistical aggregation rather than detailed reporting.
### 7.3 Update Schedule
### 7.3. Update Schedule
This report is updated according to the following schedule:
@@ -288,7 +288,13 @@ This report is updated according to the following schedule:
**(d)** **Legal Milestone Updates:** Updates following resolution of significant legal matters.
### 7.4 Verification and Accuracy
### 7.4. Verification and Accuracy
:::tip[Heads Up!]{icon=pen}
The policy or policies in this section are still a work in progress. We have not yet implemented the necessary infrastructure to comply with this section.
We are working very hard to get them in place as soon as possible. If you would like to help, consider [applying to join our team!](https://forms.nhcarrigan.com/o/docs/forms/mCxDu3snk9TzFiDjrT4Vc8/4)
:::
We ensure report accuracy through:
@@ -302,7 +308,7 @@ We ensure report accuracy through:
## 8. CONTACT INFORMATION AND SUPPORT
### 8.1 Legal Process Service
### 8.1. Legal Process Service
For service of legal process:
@@ -312,7 +318,7 @@ For service of legal process:
**Business Hours:** Monday through Friday, 9:00 AM to 5:00 PM Pacific Standard Time
### 8.2 General Inquiries
### 8.2. General Inquiries
For questions about this transparency report:
@@ -320,27 +326,27 @@ For questions about this transparency report:
**Subject Line:** Government Transparency Report Inquiry
### 8.3 Media and Press Inquiries
### 8.3. Media and Press Inquiries
For media inquiries regarding government actions:
**Email:** press@nhcarrigan.com
**Response Time:** Within 24 hours for urgent matters
**Response Time:** Within 7-10 business days for all matters
### 8.4 User Support
### 8.4. User Support
For users concerned about government access to their data:
**Email:** privacy@nhcarrigan.com
**Forum:** https://forum.nhcarrigan.com
**Discord Community:** https://chat.nhcarrigan.com
**Response Time:** Within 48 hours for privacy-related inquiries
**Response Time:** Within 7-10 business days for privacy-related inquiries
## 9. FUTURE DEVELOPMENTS
### 9.1 Policy Evolution
### 9.1. Policy Evolution
We continuously review and improve our government transparency policies based on:
@@ -352,7 +358,7 @@ We continuously review and improve our government transparency policies based on
**(d)** **Operational Experience:** Lessons learned from any government interactions.
### 9.2 Enhanced Reporting
### 9.2. Enhanced Reporting
We are committed to enhancing this transparency report through:
@@ -364,7 +370,7 @@ We are committed to enhancing this transparency report through:
**(d)** **International Perspective:** Expanding coverage to include international legal developments.
### 9.3 Stakeholder Engagement
### 9.3. Stakeholder Engagement
We engage with stakeholders through:
@@ -378,7 +384,7 @@ We engage with stakeholders through:
## 10. LEGAL DISCLAIMER
### 10.1 Report Limitations
### 10.1. Report Limitations
This transparency report:
@@ -390,7 +396,7 @@ This transparency report:
**(d)** Represents our good faith effort to provide accurate and complete information.
### 10.2 Legal Compliance
### 10.2. Legal Compliance
This report is prepared in compliance with:
@@ -402,7 +408,7 @@ This report is prepared in compliance with:
**(d)** National security and law enforcement confidentiality requirements.
### 10.3 No Warranties
### 10.3. No Warranties
**IMPORTANT: Comprehensive warranty disclaimers and liability limitations applicable to this report and all our services are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
@@ -414,11 +420,11 @@ In addition to those comprehensive protections, this transparency report is prov
**(c)** Changes in circumstances after publication date.
**Report Period:** From inception of nhcarrigan operations through [Date to be inserted]
**Report Period:** From inception of NHCarrigan operations through
**Publication Date:** [Date to be inserted]
**Publication Date:**
**Next Scheduled Update:** [Date to be inserted]
**Next Scheduled Update:**
---
+46 -66
View File
@@ -6,35 +6,23 @@ title: Limitation of Liability and Indemnification Policy
## 1. INTRODUCTION AND SCOPE
### 1.1 Policy Purpose and Importance
### 1.1. Policy Purpose and Importance
This Limitation of Liability and Indemnification Policy ("Policy") establishes comprehensive protections for nhcarrigan ("we," "us," "our," or "the Company") and clarifies the allocation of risk and responsibility between the Company and users of our services, applications, and platforms (collectively, the "Services"). This Policy is fundamental to our ability to provide innovative services whilst managing legal and financial risks.
This Limitation of Liability and Indemnification Policy ("Policy") establishes comprehensive protections for NHCarrigan ("we," "us," "our," or "the Company") and clarifies the allocation of risk and responsibility between the Company and users of our services, applications, and platforms (collectively, the "Services"). This Policy is fundamental to our ability to provide innovative services whilst managing legal and financial risks.
### 1.2 Integration with Other Legal Documents
### 1.2. Integration with Other Legal Documents
This Policy operates in conjunction with and supplements:
**(a)** Our Terms of Service, which establish the fundamental user relationship;
**(b)** Our Service Level Agreement, which defines service expectations and remedies;
**(c)** Our Acceptable Use Policy, which defines prohibited activities;
**(d)** Our Privacy Policy, which governs data collection and processing;
**(e)** Our API Terms and Conditions, which govern developer services;
**(f)** Any additional service-specific terms or agreements.
This Policy operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, Acceptable Use Policy, Service Level Agreement, API Terms and Conditions, and all applicable legal protections by reference.
Where conflicts exist between documents, the most restrictive liability limitation shall apply to ensure maximum protection for the Company.
### 1.3 Scope of Application
### 1.3. Scope of Application
This Policy applies to:
**(a)** All users, customers, developers, and third parties interacting with our Services;
**(b)** All services, applications, platforms, and tools provided by nhcarrigan;
**(b)** All services, applications, platforms, and tools provided by NHCarrigan;
**(c)** All content, data, and information processed through our Services;
@@ -48,7 +36,7 @@ This Policy applies to:
**(h)** All jurisdictions where our Services are accessed or used.
### 1.4 Legal Framework and Enforceability
### 1.4. Legal Framework and Enforceability
This Policy is designed to:
@@ -70,7 +58,7 @@ This Policy is designed to:
## 2. COMPREHENSIVE LIABILITY DISCLAIMERS
### 2.1 General Service Disclaimers
### 2.1. General Service Disclaimers
**IMPORTANT NOTICE: THE FOLLOWING DISCLAIMERS ARE FUNDAMENTAL TO OUR SERVICE RELATIONSHIP AND CONSTITUTE ESSENTIAL TERMS OF YOUR AGREEMENT WITH US.**
@@ -98,7 +86,7 @@ We expressly disclaim and exclude all warranties including, but not limited to:
**(h)** **Security**: No warranty that Services will be secure or that data will be protected from unauthorised access.
### 2.2 Technology and Software Disclaimers
### 2.2. Technology and Software Disclaimers
Regarding our technology, software, and digital services:
@@ -118,7 +106,7 @@ Regarding our technology, software, and digital services:
**(h)** **Scalability**: No warranty regarding scalability or ability to handle increased usage demands.
### 2.3 Content and Information Disclaimers
### 2.3. Content and Information Disclaimers
Regarding content and information provided through our Services:
@@ -138,7 +126,7 @@ Regarding content and information provided through our Services:
**(h)** **Verification**: No obligation to verify the accuracy or completeness of any content or information.
### 2.4 Business and Commercial Disclaimers
### 2.4. Business and Commercial Disclaimers
For business and commercial use of our Services:
@@ -160,7 +148,7 @@ For business and commercial use of our Services:
## 3. COMPREHENSIVE LIMITATION OF LIABILITY
### 3.1 Exclusion of Consequential and Indirect Damages
### 3.1. Exclusion of Consequential and Indirect Damages
**TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, NHCARRIGAN SHALL NOT BE LIABLE FOR ANY INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL, PUNITIVE, OR EXEMPLARY DAMAGES, INCLUDING BUT NOT LIMITED TO:**
@@ -180,7 +168,7 @@ For business and commercial use of our Services:
**(h)** **Personal Injury**: Personal injury, emotional distress, or mental anguish (except where prohibited by law).
### 3.2 Exclusion of Direct Damages
### 3.2. Exclusion of Direct Damages
**TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, WE ALSO DISCLAIM LIABILITY FOR DIRECT DAMAGES INCLUDING:**
@@ -200,7 +188,7 @@ For business and commercial use of our Services:
**(h)** **Force Majeure**: Damages from events beyond our reasonable control.
### 3.3 Maximum Liability Cap
### 3.3. Maximum Liability Cap
**IN JURISDICTIONS THAT DO NOT PERMIT COMPLETE EXCLUSION OF LIABILITY:**
@@ -220,7 +208,7 @@ For business and commercial use of our Services:
**(h)** **Currency Conversion**: All monetary limits are stated in United States Dollars with conversion at current exchange rates.
### 3.4 Liability Limitation Scope
### 3.4. Liability Limitation Scope
**These liability limitations apply regardless of:**
@@ -242,9 +230,9 @@ For business and commercial use of our Services:
## 4. COMPREHENSIVE INDEMNIFICATION PROVISIONS
### 4.1 User Indemnification Obligations
### 4.1. User Indemnification Obligations
**Users agree to indemnify, defend, and hold harmless nhcarrigan, its parent companies, subsidiaries, affiliates, officers, directors, employees, agents, contractors, licensors, and service providers (collectively, the "Indemnified Parties") from and against any and all claims, demands, actions, damages, losses, costs, liabilities, and expenses (including reasonable attorneys' fees and court costs) arising from or relating to:**
**Users agree to indemnify, defend, and hold harmless NHCarrigan, its parent companies, subsidiaries, affiliates, officers, directors, employees, agents, contractors, licensors, and service providers (collectively, the "Indemnified Parties") from and against any and all claims, demands, actions, damages, losses, costs, liabilities, and expenses (including reasonable attorneys' fees and court costs) arising from or relating to:**
**(a)** **Service Usage**: Your use, misuse, or inability to use the Services in any manner;
@@ -262,7 +250,7 @@ For business and commercial use of our Services:
**(h)** **Downstream Usage**: Any use of Services by third parties through your account or authorisation.
### 4.2 Commercial and Business Indemnification
### 4.2. Commercial and Business Indemnification
**For commercial and business users, indemnification extends to:**
@@ -282,7 +270,7 @@ For business and commercial use of our Services:
**(h)** **Licensing Violations**: Claims from violation of software licences or intellectual property rights.
### 4.3 Developer and API Indemnification
### 4.3. Developer and API Indemnification
**Developers and API users agree to additional indemnification for:**
@@ -302,7 +290,7 @@ For business and commercial use of our Services:
**(h)** **Compliance Failures**: Claims from failure to comply with API terms or usage restrictions.
### 4.4 Indemnification Process and Procedures
### 4.4. Indemnification Process and Procedures
**The indemnification process includes:**
@@ -324,7 +312,7 @@ For business and commercial use of our Services:
## 5. RISK ALLOCATION AND USER RESPONSIBILITY
### 5.1 User Assumption of Risk
### 5.1. User Assumption of Risk
**By using our Services, users expressly acknowledge and assume the following risks:**
@@ -344,7 +332,7 @@ For business and commercial use of our Services:
**(h)** **Market Risks**: Risks of market changes, competitive pressures, or business model evolution.
### 5.2 User Responsibility for Risk Management
### 5.2. User Responsibility for Risk Management
**Users are solely responsible for:**
@@ -364,7 +352,7 @@ For business and commercial use of our Services:
**(h)** **Contingency Planning**: Developing contingency plans for service interruptions or failures.
### 5.3 Company Risk Management Limitations
### 5.3. Company Risk Management Limitations
**Our risk management efforts are limited to:**
@@ -384,7 +372,7 @@ For business and commercial use of our Services:
**(h)** **Continuous Improvement**: Continuously improving our services and risk management practices.
### 5.4 Shared Responsibility Model
### 5.4. Shared Responsibility Model
**Our service relationship operates under a shared responsibility model:**
@@ -402,7 +390,7 @@ For business and commercial use of our Services:
## 6. FORCE MAJEURE AND EXTERNAL FACTORS
### 6.1 Force Majeure Events
### 6.1. Force Majeure Events
**We shall not be liable for any failure to perform or delay in performance due to force majeure events, including but not limited to:**
@@ -422,7 +410,7 @@ For business and commercial use of our Services:
**(h)** **Regulatory Changes**: Sudden regulatory changes that materially affect our ability to provide Services.
### 6.2 Third-Party Dependencies
### 6.2. Third-Party Dependencies
**Our Services rely on various third-party providers and dependencies, and we disclaim liability for:**
@@ -442,7 +430,7 @@ For business and commercial use of our Services:
**(h)** **Regulatory Authorities**: Actions by regulatory authorities that affect third-party service provision.
### 6.3 Technology Limitations
### 6.3. Technology Limitations
**We disclaim liability for limitations inherent in technology:**
@@ -464,7 +452,7 @@ For business and commercial use of our Services:
## 7. JURISDICTIONAL VARIATIONS AND ENFORCEABILITY
### 7.1 Jurisdictional Adaptation
### 7.1. Jurisdictional Adaptation
**These liability limitations are designed to be enforceable across jurisdictions:**
@@ -484,7 +472,7 @@ For business and commercial use of our Services:
**(h)** **Conflict of Laws**: Clear conflict of law provisions to determine applicable liability rules.
### 7.2 Consumer Protection Considerations
### 7.2. Consumer Protection Considerations
**In jurisdictions with consumer protection laws:**
@@ -504,7 +492,7 @@ For business and commercial use of our Services:
**(h)** **Regulatory Compliance**: Compliance with consumer protection regulations and guidance.
### 7.3 Business and Commercial Enforceability
### 7.3. Business and Commercial Enforceability
**For business and commercial relationships:**
@@ -524,7 +512,7 @@ For business and commercial use of our Services:
**(h)** **Professional Standards**: Compliance with professional standards and best practices.
### 7.4 International Enforcement
### 7.4. International Enforcement
**For international service provision:**
@@ -546,7 +534,7 @@ For business and commercial use of our Services:
## 8. INSURANCE AND RISK TRANSFER
### 8.1 User Insurance Recommendations
### 8.1. User Insurance Recommendations
**We strongly recommend that users maintain:**
@@ -566,7 +554,7 @@ For business and commercial use of our Services:
**(h)** **Industry-Specific**: Industry-specific insurance coverage for regulated sectors.
### 8.2 Risk Transfer Mechanisms
### 8.2. Risk Transfer Mechanisms
**Our liability limitations facilitate risk transfer through:**
@@ -586,7 +574,7 @@ For business and commercial use of our Services:
**(h)** **Risk Sharing**: Enabling risk sharing arrangements between commercial parties.
### 8.3 Insurance Coordination
### 8.3. Insurance Coordination
**These liability limitations coordinate with insurance coverage through:**
@@ -608,7 +596,7 @@ For business and commercial use of our Services:
## 9. SURVIVAL AND ENFORCEMENT
### 9.1 Survival of Provisions
### 9.1. Survival of Provisions
**The following provisions survive termination of any agreement or relationship:**
@@ -628,7 +616,7 @@ For business and commercial use of our Services:
**(h)** **Governing Law**: Governing law and jurisdiction provisions continue to apply to all matters.
### 9.2 Enforcement Mechanisms
### 9.2. Enforcement Mechanisms
**These limitations are enforceable through:**
@@ -648,7 +636,7 @@ For business and commercial use of our Services:
**(h)** **Compliance Monitoring**: Ongoing monitoring of compliance with limitation requirements.
### 9.3 Amendment and Modification
### 9.3. Amendment and Modification
**These liability limitations may be amended only through:**
@@ -668,7 +656,7 @@ For business and commercial use of our Services:
**(h)** **User Notice**: Appropriate notice to users of any changes affecting their obligations or rights.
### 9.4 Integration and Interpretation
### 9.4. Integration and Interpretation
**These provisions shall be interpreted and applied as follows:**
@@ -690,7 +678,7 @@ For business and commercial use of our Services:
## 10. CONTACT INFORMATION AND LEGAL SUPPORT
### 10.1 Legal and Liability Questions
### 10.1. Legal and Liability Questions
For questions about liability limitations and legal matters:
@@ -698,11 +686,11 @@ For questions about liability limitations and legal matters:
**Subject Line:** Liability and Legal Inquiry - [Brief Description]
**Response Time:** Within 5 business days for legal inquiries
**Response Time:** Within 7-10 business days for legal inquiries
**Legal Counsel:** All complex legal matters are reviewed by qualified legal counsel
### 10.2 Claims and Disputes
### 10.2. Claims and Disputes
For claims potentially subject to liability limitations:
@@ -712,9 +700,9 @@ For claims potentially subject to liability limitations:
**Notice Requirement:** Formal notice required for all claims seeking damages
**Response Time:** Within 10 business days for claim acknowledgement
**Response Time:** Within 7-10 business days for claim acknowledgement
### 10.3 Insurance and Risk Management
### 10.3. Insurance and Risk Management
For insurance and risk management coordination:
@@ -724,9 +712,9 @@ For insurance and risk management coordination:
**Coverage Questions:** Questions about insurance coverage and risk transfer
**Response Time:** Within 7 business days for insurance-related inquiries
**Response Time:** Within 7-10 business days for insurance-related inquiries
### 10.4 Emergency Legal Matters
### 10.4. Emergency Legal Matters
For urgent legal matters requiring immediate attention:
@@ -736,15 +724,7 @@ For urgent legal matters requiring immediate attention:
**Phone:** Emergency contact information available to qualified legal representatives
**Response Time:** Within 24 hours for emergency legal matters
**Document Version:** 1.0
**Last Updated:** 15 September 2025
**Effective Date:** 15 September 2025
**Next Review Date:** 15 March 2026
**Response Time:** Within 7-10 business days for all legal matters
---
File diff suppressed because it is too large Load Diff
+58 -59
View File
@@ -6,15 +6,15 @@ title: Privacy Policy
## 1. INTRODUCTION AND SCOPE
### 1.1 About This Policy
### 1.1. About This Policy
This Privacy Policy ("Policy") sets out how nhcarrigan ("we," "us," "our," or "the Company") collects, uses, stores, and protects your personal information when you use our services, applications, and platforms (collectively, the "Services").
This Privacy Policy ("Policy") sets out how NHCarrigan ("we," "us," "our," or "the Company") collects, uses, stores, and protects your personal information when you use our services, applications, and platforms (collectively, the "Services").
### 1.2 Policy Applicability
### 1.2. Policy Applicability
This Policy applies to:
**(a)** All services, websites, and applications operated by nhcarrigan;
**(a)** All services, websites, and applications operated by NHCarrigan;
**(b)** All users of our Services, regardless of location;
@@ -22,7 +22,7 @@ This Policy applies to:
**(d)** Both current and former users of our Services.
### 1.3 Additional Policies
### 1.3. Additional Policies
Specific Services may be subject to additional privacy notices or terms ("Service-Specific Policies"). Where such policies exist:
@@ -32,7 +32,7 @@ Specific Services may be subject to additional privacy notices or terms ("Servic
**(c)** We shall clearly identify when additional policies apply.
### 1.4 Policy Updates
### 1.4. Policy Updates
We reserve the right to update this Policy at any time. Changes may:
@@ -42,7 +42,7 @@ We reserve the right to update this Policy at any time. Changes may:
**(c)** Require your continued consent through ongoing use of our Services.
### 1.5 Acceptance and Consent
### 1.5. Acceptance and Consent
By using our Services, you:
@@ -52,13 +52,13 @@ By using our Services, you:
**(c)** Agree to be bound by the current version of this Policy.
### 1.6 Contact for Privacy Matters
### 1.6. Contact for Privacy Matters
For all privacy-related inquiries, please contact us at: **privacy@nhcarrigan.com**
## 2. INFORMATION WE COLLECT
### 2.1 Types of Personal Information
### 2.1. Types of Personal Information
We may collect the following categories of personal information:
@@ -72,7 +72,7 @@ We may collect the following categories of personal information:
**(e)** **Account Information:** Registration details, preferences, and account settings.
### 2.2 Methods of Collection
### 2.2. Methods of Collection
We collect personal information through:
@@ -82,7 +82,7 @@ We collect personal information through:
**(c)** **Third-Party Sources:** Information from integrated services and platforms (with your consent).
### 2.3 Undocumented Collection
### 2.3. Undocumented Collection
Despite our best efforts to maintain comprehensive documentation:
@@ -96,7 +96,7 @@ Despite our best efforts to maintain comprehensive documentation:
## 3. HOW WE USE YOUR INFORMATION
### 3.1 Primary Purposes
### 3.1. Primary Purposes
We process your personal information for the following purposes:
@@ -110,7 +110,7 @@ We process your personal information for the following purposes:
**(e)** **Legal Compliance:** To fulfil our legal obligations and protect our rights.
### 3.2 Legal Basis for Processing
### 3.2. Legal Basis for Processing
Our legal basis for processing personal information includes:
@@ -122,7 +122,7 @@ Our legal basis for processing personal information includes:
**(d)** **Legal Obligation:** Where required by applicable law.
### 3.3 Automated Decision-Making
### 3.3. Automated Decision-Making
We may use automated systems for:
@@ -136,7 +136,7 @@ You have the right to request human review of automated decisions that significa
## 4. DATA SHARING AND DISCLOSURE
### 4.1 Internal Access
### 4.1. Internal Access
Access to your personal information within our organisation is restricted to:
@@ -146,7 +146,7 @@ Access to your personal information within our organisation is restricted to:
**(c)** Individuals involved in legal compliance and security matters.
### 4.2 Third-Party Sharing
### 4.2. Third-Party Sharing
We may share your information with:
@@ -158,11 +158,11 @@ We may share your information with:
**(d)** **Successors:** In the event of a merger, acquisition, or business transfer.
### 4.3 Data Sale Prohibition
### 4.3. Data Sale Prohibition
We do not and will not sell your personal information to third parties for commercial purposes.
### 4.4 International Transfers
### 4.4. International Transfers
Your information may be transferred to and processed in countries other than your own. We ensure appropriate safeguards are in place for such transfers, including:
@@ -174,7 +174,7 @@ Your information may be transferred to and processed in countries other than you
## 5. YOUR PRIVACY RIGHTS
### 5.1 General Rights
### 5.1. General Rights
Regardless of your location, you have the following rights regarding your personal information:
@@ -188,29 +188,25 @@ Regardless of your location, you have the following rights regarding your person
**(e)** **Right to Data Portability:** Receive your information in a structured, commonly used format.
### 5.2 Exercising Your Rights
### 5.2. Exercising Your Rights
To exercise any of these rights:
**(a)** Submit requests to **privacy@nhcarrigan.com** from the email address associated with your account;
**(a)** Submit requests through our **Privacy Request Form** (Preferred): https://forms.nhcarrigan.com/o/docs/forms/qEJgBWGDfyHv6x51VU9aVX/4
**(b)** Provide sufficient information to verify your identity;
**(b)** Alternatively, submit requests to **privacy@nhcarrigan.com** from the email address associated with your account;
**(c)** Specify clearly which right you wish to exercise;
**(c)** Provide sufficient information to verify your identity;
**(d)** Include any relevant details or documentation to support your request.
**(d)** Specify clearly which right you wish to exercise;
### 5.3 Response Timeframes
**(e)** Include any relevant details or documentation to support your request.
We endeavour to respond to all privacy requests within:
### 5.3. Response Timeframes
**(a)** **Simple requests:** Five (5) business days;
We endeavour to respond to all privacy requests within 7-10 business days. For complex requests that require additional time, we will notify you and respond within thirty (30) days as required by applicable data protection laws (including GDPR).
**(b)** **Complex requests:** Thirty (30) days, with notification if additional time is required;
**(c)** **Urgent security matters:** Within twenty-four (24) hours where possible.
### 5.4 Limitations on Rights
### 5.4. Limitations on Rights
Your privacy rights may be limited where:
@@ -224,7 +220,7 @@ Your privacy rights may be limited where:
## 6. DATA RETENTION AND DELETION
### 6.1 Retention Principles
### 6.1. Retention Principles
We retain personal information based on the following principles:
@@ -234,7 +230,7 @@ We retain personal information based on the following principles:
**(c)** **Legal Requirements:** Some information may be retained to comply with legal obligations.
### 6.2 Retention Periods
### 6.2. Retention Periods
General retention periods include:
@@ -246,7 +242,13 @@ General retention periods include:
**(d)** **Legal and Compliance Data:** Retained as required by applicable laws.
### 6.3 Automated Deletion
### 6.3. Automated Deletion
:::tip[Heads Up!]{icon=pen}
The policy or policies in this section are still a work in progress. We have not yet implemented the necessary infrastructure to comply with this section.
We are working very hard to get them in place as soon as possible. If you would like to help, consider [applying to join our team!](https://forms.nhcarrigan.com/o/docs/forms/mCxDu3snk9TzFiDjrT4Vc8/4)
:::
Where technically feasible, we implement automated systems to:
@@ -256,7 +258,7 @@ Where technically feasible, we implement automated systems to:
**(c)** Regularly review and purge unnecessary information.
### 6.4 Backup Retention
### 6.4. Backup Retention
For system recovery purposes:
@@ -268,7 +270,7 @@ For system recovery purposes:
## 7. DATA SECURITY
### 7.1 Security Measures
### 7.1. Security Measures
We implement comprehensive security measures including:
@@ -280,7 +282,7 @@ We implement comprehensive security measures including:
**(d)** **Regular Audits:** Periodic security assessments and vulnerability testing.
### 7.2 Personnel Security
### 7.2. Personnel Security
All team members with access to personal information:
@@ -292,7 +294,7 @@ All team members with access to personal information:
**(d)** Face disciplinary action for unauthorised access or misuse.
### 7.3 Incident Response
### 7.3. Incident Response
In the event of a data breach:
@@ -304,7 +306,7 @@ In the event of a data breach:
**(d)** We will provide regular updates on our investigation and remediation efforts.
### 7.4 Third-Party Security
### 7.4. Third-Party Security
Third-party service providers must:
@@ -318,7 +320,7 @@ Third-party service providers must:
## 8. COOKIES AND TRACKING TECHNOLOGIES
### 8.1 Use of Cookies
### 8.1. Use of Cookies
We use cookies and similar technologies to:
@@ -330,7 +332,7 @@ We use cookies and similar technologies to:
**(d)** Maintain security and prevent fraud.
### 8.2 Types of Cookies
### 8.2. Types of Cookies
We may use the following types of cookies:
@@ -342,7 +344,7 @@ We may use the following types of cookies:
**(d)** **Targeting Cookies:** Used to deliver relevant content (with consent).
### 8.3 Cookie Management
### 8.3. Cookie Management
You can manage cookies through:
@@ -356,11 +358,11 @@ Please note that disabling certain cookies may affect the functionality of our S
## 9. CHILDREN'S PRIVACY
### 9.1 Age Restrictions
### 9.1. Age Restrictions
Our Services are not intended for children under the age of thirteen (13), or the minimum digital age of consent in your jurisdiction, whichever is higher.
### 9.2 Collection from Children
### 9.2. Collection from Children
We do not knowingly collect personal information from children under the applicable minimum age. If we become aware that we have collected such information:
@@ -370,7 +372,7 @@ We do not knowingly collect personal information from children under the applica
**(c)** We will take steps to prevent future collection.
### 9.3 Parental Rights
### 9.3. Parental Rights
Parents and guardians have the right to:
@@ -382,15 +384,15 @@ Parents and guardians have the right to:
## 10. CONTACT INFORMATION AND COMPLAINTS
### 10.1 Privacy Contact
### 10.1. Privacy Contact
For all privacy-related matters, contact our Data Protection Officer at:
**Email:** privacy@nhcarrigan.com
**Forum:** https://forum.nhcarrigan.com (for general inquiries)
**Discord Community:** https://chat.nhcarrigan.com (for general inquiries)
### 10.2 Information to Include
### 10.2. Information to Include
When contacting us about privacy matters, please provide:
@@ -402,7 +404,7 @@ When contacting us about privacy matters, please provide:
**(d)** Supporting documentation if applicable.
### 10.3 Response Commitment
### 10.3. Response Commitment
We commit to:
@@ -414,7 +416,7 @@ We commit to:
**(d)** Following up to ensure your concerns have been adequately addressed.
### 10.4 Complaints and Escalation
### 10.4. Complaints and Escalation
If you are not satisfied with our response:
@@ -424,13 +426,13 @@ If you are not satisfied with our response:
**(c)** You may seek independent legal advice regarding your rights.
### 10.5 Supervisory Authority Contact
### 10.5. Supervisory Authority Contact
For complaints in jurisdictions with data protection authorities, you may contact your local supervisory authority. In the European Union, you can find your local authority at: https://edpb.europa.eu/about-edpb/board/members_en
## 11. UPDATES AND EFFECTIVE DATE
## 11. UPDATES
### 11.1 Policy Updates
### 11.1. Policy Updates
We may update this Policy periodically to reflect:
@@ -442,7 +444,7 @@ We may update this Policy periodically to reflect:
**(d)** Technological developments and security enhancements.
### 11.2 Notification of Changes
### 11.2. Notification of Changes
We will notify you of material changes through:
@@ -452,13 +454,10 @@ We will notify you of material changes through:
**(c)** Updates to our website and documentation.
### 11.3 Version History
### 11.3. Version History
Previous versions of this Policy are available upon request for transparency and reference purposes.
**Last Updated:** 15 September 2025
**Effective Date:** 15 September 2025
---
+69 -71
View File
@@ -6,13 +6,13 @@ title: Security Policy
## 1. INTRODUCTION AND SCOPE
### 1.1 Policy Overview
### 1.1. Policy Overview
This Security Policy ("Policy") establishes the procedures and terms under which we handle the reporting and resolution of security vulnerabilities discovered in our applications, systems, and services. By participating in our security reporting process, you acknowledge and agree to comply with all provisions of this Policy.
### 1.2 Scope of Coverage
### 1.2. Scope of Coverage
This Policy applies to all applications, services, and systems maintained by nhcarrigan, including but not limited to:
This Policy applies to all applications, services, and systems maintained by NHCarrigan, including but not limited to:
**(a)** All primary websites and web applications operated under our domain;
@@ -26,7 +26,7 @@ This Policy applies to all applications, services, and systems maintained by nhc
**(f)** Associated documentation, support systems, and auxiliary platforms.
### 1.3 Security Principles
### 1.3. Security Principles
Our security programme is founded on the following principles:
@@ -38,23 +38,25 @@ Our security programme is founded on the following principles:
**(d)** **User Protection:** Our primary focus is protecting the confidentiality, integrity, and availability of user data and systems.
### 1.4 Legal Framework
### 1.4. Legal Framework
This Policy is designed to operate within the framework of applicable laws and regulations, including but not limited to computer fraud and abuse laws, data protection regulations, and responsible disclosure principles recognised in the security research community.
## 2. VULNERABILITY REPORTING PROCEDURES
### 2.1 Reporting Channels
### 2.1. Reporting Channels
If you discover a security vulnerability within any of our systems or applications, please report it exclusively through our designated secure reporting channel:
**Security Vulnerability Report Form** (Preferred): https://forms.nhcarrigan.com/o/docs/forms/wgdbBkS4tjCGoVZTqtmMNx/4
**Primary Contact:** security@nhcarrigan.com
**Subject Line Format:** [SECURITY] Brief description of vulnerability
**Alternative Contact:** For urgent matters requiring immediate attention, you may also contact our general support team with clear indication of the security nature of your report.
### 2.2 Public Disclosure Prohibition
### 2.2. Public Disclosure Prohibition
To protect our users and systems, you must not disclose security vulnerabilities publicly or through any public channels until we have had reasonable opportunity to investigate and address the issue. Prohibited disclosure methods include, but are not limited to:
@@ -70,7 +72,7 @@ To protect our users and systems, you must not disclose security vulnerabilities
**(f)** Any other medium accessible to the general public.
### 2.3 Required Information for Vulnerability Reports
### 2.3. Required Information for Vulnerability Reports
To facilitate effective investigation and resolution, please include the following information in your vulnerability report:
@@ -86,7 +88,7 @@ To facilitate effective investigation and resolution, please include the followi
**(f)** **Discovery Context:** Information about how the vulnerability was discovered and any tools or techniques used.
### 2.4 Information Handling and Confidentiality
### 2.4. Information Handling and Confidentiality
All vulnerability reports and related communications will be handled with strict confidentiality in accordance with our privacy policy and applicable data protection laws. We commit to:
@@ -100,7 +102,7 @@ All vulnerability reports and related communications will be handled with strict
## 3. RESPONSE PROCEDURES AND TIMELINES
### 3.1 Initial Acknowledgement
### 3.1. Initial Acknowledgement
We will acknowledge receipt of your vulnerability report within the following timeframes:
@@ -110,7 +112,7 @@ We will acknowledge receipt of your vulnerability report within the following ti
**(c)** **Complex Reports:** Within five (5) business days for reports requiring initial technical assessment before acknowledgement.
### 3.2 Assessment and Verification Process
### 3.2. Assessment and Verification Process
Following initial acknowledgement, our security team will:
@@ -124,7 +126,7 @@ Following initial acknowledgement, our security team will:
**(e)** Develop an appropriate response and remediation plan.
### 3.3 Communication and Updates
### 3.3. Communication and Updates
Throughout the investigation and resolution process, we will:
@@ -136,7 +138,7 @@ Throughout the investigation and resolution process, we will:
**(d)** Keep you informed of any changes to our remediation plans or timelines.
### 3.4 Resolution Timeline
### 3.4. Resolution Timeline
We are committed to resolving confirmed vulnerabilities within the following timeframes:
@@ -152,7 +154,7 @@ We are committed to resolving confirmed vulnerabilities within the following tim
## 4. COORDINATED DISCLOSURE POLICY
### 4.1 Coordinated Disclosure Principles
### 4.1. Coordinated Disclosure Principles
We practice coordinated disclosure to balance transparency with security. This approach ensures that:
@@ -162,7 +164,7 @@ We practice coordinated disclosure to balance transparency with security. This a
**(c)** The security research community benefits from shared knowledge whilst minimising potential harm.
### 4.2 Disclosure Timeline
### 4.2. Disclosure Timeline
Our standard coordinated disclosure timeline follows this process:
@@ -172,9 +174,9 @@ Our standard coordinated disclosure timeline follows this process:
**(c)** **Remediation Period:** Development and deployment of fixes (30-90 days depending on complexity);
**(d)** **Public Disclosure:** Joint announcement of vulnerability and resolution (after fix deployment and reasonable notice period).
**(d)** **Public Disclosure:** Joint announcement of vulnerability and resolution (after fix deployment and reasonable notice period). Aggregated and sanitized vulnerability reports are published at: https://security.nhcarrigan.com/report/
### 4.3 Public Acknowledgement
### 4.3. Public Acknowledgement
With your explicit consent, we may publicly acknowledge your contribution in discovering and reporting the vulnerability after it has been resolved. Such acknowledgement may include:
@@ -186,7 +188,7 @@ With your explicit consent, we may publicly acknowledge your contribution in dis
**(d)** References in relevant security documentation or case studies.
### 4.4 Researcher Discretion
### 4.4. Researcher Discretion
You retain the right to:
@@ -200,11 +202,11 @@ You retain the right to:
## 5. LEGAL SAFE HARBOUR PROVISIONS
### 5.1 Authorisation for Security Research
### 5.1. Authorisation for Security Research
We explicitly authorise security research and vulnerability disclosure activities conducted in accordance with this Policy and applicable laws. This authorisation is intended to encourage responsible security research whilst protecting both researchers and our organisation.
### 5.2 Scope of Safe Harbour Protection
### 5.2. Scope of Safe Harbour Protection
Our safe harbour provisions apply to security research activities that:
@@ -218,7 +220,7 @@ Our safe harbour provisions apply to security research activities that:
**(e)** Are conducted without commercial motivation or malicious intent.
### 5.3 Protected Activities
### 5.3. Protected Activities
Under this safe harbour, we will not initiate legal action against researchers for activities including:
@@ -230,7 +232,7 @@ Under this safe harbour, we will not initiate legal action against researchers f
**(d)** Downloading or accessing data that is the direct result of a security vulnerability, provided such access is limited to demonstrating the issue.
### 5.4 Limitations and Exclusions
### 5.4. Limitations and Exclusions
This safe harbour protection does not apply to:
@@ -246,7 +248,7 @@ This safe harbour protection does not apply to:
**(f)** Activities conducted after we have requested cessation or identified security policy violations.
### 5.5 Compliance Requirements
### 5.5. Compliance Requirements
To maintain safe harbour protection, researchers must:
@@ -262,11 +264,11 @@ To maintain safe harbour protection, researchers must:
## 6. BUG BOUNTY PROGRAMME
### 6.1 Current Programme Status
### 6.1. Current Programme Status
At present, we do not operate a formal monetary bug bounty programme. Our security efforts rely on the goodwill and community spirit of security researchers who contribute to improving our security posture on a voluntary basis.
### 6.2 Non-Monetary Recognition
### 6.2. Non-Monetary Recognition
While we do not currently offer financial rewards, we deeply appreciate security researchers' contributions and provide recognition through:
@@ -278,7 +280,7 @@ While we do not currently offer financial rewards, we deeply appreciate security
**(d)** **Networking Opportunities:** Introduction to other security professionals and organisations within our network.
### 6.3 Future Programme Development
### 6.3. Future Programme Development
We continuously evaluate the possibility of implementing a formal bug bounty programme. Factors influencing this decision include:
@@ -290,7 +292,7 @@ We continuously evaluate the possibility of implementing a formal bug bounty pro
**(d)** Alignment with our organisational priorities and community values.
### 6.4 Alternative Contribution Opportunities
### 6.4. Alternative Contribution Opportunities
Security researchers interested in contributing to our security efforts may also consider:
@@ -304,7 +306,7 @@ Security researchers interested in contributing to our security efforts may also
## 7. DATA PROTECTION AND PRIVACY
### 7.1 Handling of Submitted Information
### 7.1. Handling of Submitted Information
All information provided in vulnerability reports will be processed and protected in accordance with our Privacy Policy and applicable data protection laws. This includes:
@@ -316,7 +318,7 @@ All information provided in vulnerability reports will be processed and protecte
**(d)** Maintaining confidentiality of researcher information and contact details.
### 7.2 Data Retention Policies
### 7.2. Data Retention Policies
We retain vulnerability reports and related communications:
@@ -328,7 +330,7 @@ We retain vulnerability reports and related communications:
**(d)** **Historical Analysis:** Anonymised trend data may be retained indefinitely for security improvement purposes.
### 7.3 Confidentiality Commitments
### 7.3. Confidentiality Commitments
We commit to treating all vulnerability reports as confidential information and will not:
@@ -340,7 +342,7 @@ We commit to treating all vulnerability reports as confidential information and
**(d)** Publicly discuss specific vulnerability details before coordinated disclosure.
### 7.4 Researcher Privacy Rights
### 7.4. Researcher Privacy Rights
Security researchers maintain standard privacy rights regarding their personal information, including:
@@ -354,11 +356,11 @@ Security researchers maintain standard privacy rights regarding their personal i
## 8. PROACTIVE SECURITY MEASURES
### 8.1 Security Monitoring and Assessment
### 8.1. Security Monitoring and Assessment
To maintain the highest possible security standards and protect user data, we implement comprehensive proactive security measures across all our systems and applications.
### 8.2 Automated Security Scanning
### 8.2. Automated Security Scanning
Our security programme includes regular automated scanning and assessment using industry-standard tools:
@@ -370,7 +372,7 @@ Our security programme includes regular automated scanning and assessment using
**(d)** **Dependency Scanning:** Continuous monitoring of third-party libraries and components for known vulnerabilities.
### 8.3 Security Tool Integration
### 8.3. Security Tool Integration
We utilise a comprehensive suite of security tools integrated into our development and deployment processes:
@@ -384,19 +386,21 @@ We utilise a comprehensive suite of security tools integrated into our developme
**(e)** **Trivy:** Comprehensive vulnerability scanning for containers, filesystems, and cloud configurations.
### 8.4 Public Security Reporting
### 8.4. Public Security Reporting
We maintain transparency about our security posture through publicly accessible security reports and dashboards:
**(a)** **Quality Dashboard:** Real-time security and quality metrics available at https://quality.nhcarrigan.link;
**(a)** **Security Vulnerability Reports:** Aggregated and sanitized security vulnerability reports for all our products are published at: https://security.nhcarrigan.com/report/
**(b)** **Security Reports:** Comprehensive security scan results published at https://security.nhcarrigan.com;
**(b)** **Quality Dashboard:** Real-time security and quality metrics available;
**(c)** **Regular Updates:** Weekly scanning cycles ensure up-to-date security information;
**(c)** **Security Reports:** Comprehensive security scan results published;
**(d)** **Trend Analysis:** Historical data tracking to identify and address security trends over time.
**(d)** **Regular Updates:** Weekly scanning cycles ensure up-to-date security information;
### 8.5 Security Development Lifecycle
**(e)** **Trend Analysis:** Historical data tracking to identify and address security trends over time.
### 8.5. Security Development Lifecycle
Our development processes incorporate security at every stage:
@@ -410,7 +414,7 @@ Our development processes incorporate security at every stage:
## 9. COMPLIANCE AND REGULATORY CONSIDERATIONS
### 9.1 Legal Compliance Requirements
### 9.1. Legal Compliance Requirements
All security research and vulnerability disclosure activities must comply with applicable laws and regulations, including but not limited to:
@@ -422,7 +426,7 @@ All security research and vulnerability disclosure activities must comply with a
**(d)** Industry-specific regulations applicable to our services or user base.
### 9.2 International Considerations
### 9.2. International Considerations
Given the global nature of our services and user base, researchers should be aware that:
@@ -434,7 +438,7 @@ Given the global nature of our services and user base, researchers should be awa
**(d)** Researchers are responsible for ensuring their activities comply with laws in their jurisdiction.
### 9.3 Ethical Guidelines
### 9.3. Ethical Guidelines
Beyond legal compliance, we expect all security research to adhere to widely recognised ethical guidelines:
@@ -446,7 +450,7 @@ Beyond legal compliance, we expect all security research to adhere to widely rec
**(d)** **Community Benefit:** Focus on activities that benefit the broader security community and user protection.
### 9.4 Reporting Regulatory Concerns
### 9.4. Reporting Regulatory Concerns
If vulnerability research reveals potential regulatory compliance issues or legal violations:
@@ -460,39 +464,41 @@ If vulnerability research reveals potential regulatory compliance issues or lega
## 10. CONTACT INFORMATION AND SUPPORT
### 10.1 Primary Security Contact
### 10.1. Primary Security Contact
For all security-related matters, including vulnerability reports, questions about this Policy, and general security inquiries:
**Security Vulnerability Report Form** (Preferred for vulnerability reports): https://forms.nhcarrigan.com/o/docs/forms/wgdbBkS4tjCGoVZTqtmMNx/4
**Email:** security@nhcarrigan.com
**Response Time:** We aim to respond to all security inquiries within 24 hours during business days
**Response Time:** We aim to respond to all security inquiries within 7-10 business days
**Emergency Contact:** For critical security issues requiring immediate attention, mark your email with [URGENT] in the subject line
### 10.2 Alternative Contact Methods
### 10.2. Alternative Contact Methods
If you are unable to use our primary email contact:
**General Support:** contact@nhcarrigan.com (clearly mark security-related messages)
**Community Forum:** https://forum.nhcarrigan.com (for general security discussions only, not vulnerability reports)
**Discord Community:** https://chat.nhcarrigan.com (for general security discussions only, not vulnerability reports)
**Documentation:** This Policy and related security documentation is maintained at our official documentation site
### 10.3 Response Commitments and Service Levels
### 10.3. Response Commitments and Service Levels
We commit to maintaining the following response standards:
**(a)** **Initial Acknowledgement:** All security reports acknowledged within 24-72 hours;
**(a)** **Initial Acknowledgement:** All security reports acknowledged within 7-10 business days;
**(b)** **Status Updates:** Regular progress updates provided at least weekly for active investigations;
**(c)** **Technical Clarification:** Response to technical questions within 2-3 business days;
**(c)** **Technical Clarification:** Response to technical questions within 7-10 business days;
**(d)** **Escalation Path:** Clear escalation procedures for urgent matters or communication issues.
### 10.4 Communication Preferences and Requirements
### 10.4. Communication Preferences and Requirements
To ensure effective communication:
@@ -504,7 +510,7 @@ To ensure effective communication:
**(d)** **Time Zone Considerations:** Our primary response times are based on Pacific Standard Time business hours.
### 10.5 Support Resources
### 10.5. Support Resources
Additional resources available to security researchers:
@@ -518,7 +524,7 @@ Additional resources available to security researchers:
## 11. POLICY UPDATES AND MAINTENANCE
### 11.1 Regular Review and Updates
### 11.1. Regular Review and Updates
This Security Policy is reviewed and updated regularly to ensure:
@@ -530,7 +536,7 @@ This Security Policy is reviewed and updated regularly to ensure:
**(d)** **Operational Experience:** Refinement based on our experience with vulnerability reports and security incidents.
### 11.2 Change Notification Process
### 11.2. Change Notification Process
Changes to this Policy will be communicated through:
@@ -542,19 +548,17 @@ Changes to this Policy will be communicated through:
**(d)** **Industry Channels:** Notification through relevant security community channels where appropriate.
### 11.3 Effective Date and Implementation
### 11.3. Policy Implementation
Policy updates will:
**(a)** Include clear effective dates for all changes;
**(a)** Provide reasonable notice periods for significant changes;
**(b)** Provide reasonable notice periods for significant changes;
**(b)** Maintain backward compatibility for ongoing vulnerability reports;
**(c)** Maintain backward compatibility for ongoing vulnerability reports;
**(c)** Include transition procedures for any changes affecting active security research.
**(d)** Include transition procedures for any changes affecting active security research.
### 11.4 Feedback and Continuous Improvement
### 11.4. Feedback and Continuous Improvement
We welcome feedback on this Policy from:
@@ -568,11 +572,11 @@ We welcome feedback on this Policy from:
## 12. ACKNOWLEDGEMENTS AND RECOGNITION
### 12.1 Community Appreciation
### 12.1. Community Appreciation
We extend our sincere gratitude to the global security research community for their valuable contributions to improving the security of our systems and protecting our users. The collaborative approach to security research benefits everyone and represents the best of community-driven innovation.
### 12.2 Commitment to Excellence
### 12.2. Commitment to Excellence
This Security Policy represents our ongoing commitment to:
@@ -584,7 +588,7 @@ This Security Policy represents our ongoing commitment to:
**(d)** **User Protection:** Prioritising the security and privacy of our users above all other considerations.
### 12.3 Future Development
### 12.3. Future Development
We are committed to the ongoing development and improvement of our security programme, including:
@@ -596,12 +600,6 @@ We are committed to the ongoing development and improvement of our security prog
**(d)** Engagement with the broader security community and industry initiatives.
**Last Updated:** 15 September 2025
**Effective Date:** 15 September 2025
**Policy Version:** 2.0
---
*By reporting a security vulnerability to us, you acknowledge that you have read, understood, and agree to comply with this Security Policy. This Policy is designed to promote responsible security research whilst protecting the interests of our users, our organisation, and the broader community. For questions about this Policy or to report security vulnerabilities, please contact us at security@nhcarrigan.com.*
+58 -68
View File
@@ -6,27 +6,19 @@ title: Service Level Agreement and Warranty Disclaimer
## 1. INTRODUCTION AND SCOPE
### 1.1 Purpose and Application
### 1.1. Purpose and Application
This Service Level Agreement and Warranty Disclaimer ("SLA") establishes the terms and conditions governing the availability, performance, and reliability of services provided by nhcarrigan ("we," "us," "our," or "the Company"). This SLA applies to all users of our services, applications, and platforms (collectively, the "Services").
This Service Level Agreement and Warranty Disclaimer ("SLA") establishes the terms and conditions governing the availability, performance, and reliability of services provided by NHCarrigan ("we," "us," "our," or "the Company"). This SLA applies to all users of our services, applications, and platforms (collectively, the "Services").
### 1.2 Integration with Other Policies
### 1.2. Integration with Other Policies
This SLA supplements and operates in conjunction with:
This SLA operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, Acceptable Use Policy, and all applicable legal protections by reference.
**(a)** Our Terms of Service, which govern the general terms of service usage;
**(b)** Our Privacy Policy, which governs data collection and processing;
**(c)** Our Acceptable Use Policy, which defines permissible usage patterns;
**(d)** All other applicable policies and agreements.
### 1.3 Scope of Services Covered
### 1.3. Scope of Services Covered
This SLA applies to:
**(a)** All websites and web applications operated by nhcarrigan;
**(a)** All websites and web applications operated by NHCarrigan;
**(b)** Application Programming Interfaces (APIs) and related services;
@@ -36,7 +28,7 @@ This SLA applies to:
**(e)** Any other services explicitly designated as covered by this SLA.
### 1.4 Definitions
### 1.4. Definitions
For the purposes of this SLA:
@@ -52,7 +44,7 @@ For the purposes of this SLA:
## 2. SERVICE AVAILABILITY COMMITMENTS
### 2.1 General Availability Targets
### 2.1. General Availability Targets
We endeavour to maintain the following availability targets for our Services:
@@ -64,7 +56,7 @@ We endeavour to maintain the following availability targets for our Services:
**(d)** **Documentation Services**: 98.0% uptime on a monthly basis, excluding scheduled maintenance.
### 2.2 Availability Calculation Methodology
### 2.2. Availability Calculation Methodology
Availability percentages are calculated as follows:
@@ -76,7 +68,7 @@ Availability percentages are calculated as follows:
**(d)** **Verification**: All calculations subject to verification through our monitoring systems.
### 2.3 Scheduled Maintenance
### 2.3. Scheduled Maintenance
We reserve the right to perform scheduled maintenance with the following provisions:
@@ -88,7 +80,7 @@ We reserve the right to perform scheduled maintenance with the following provisi
**(d)** **Emergency Maintenance**: May be performed without advance notice when necessary for security or stability.
### 2.4 Service Availability Exclusions
### 2.4. Service Availability Exclusions
The following circumstances are excluded from availability calculations:
@@ -106,7 +98,7 @@ The following circumstances are excluded from availability calculations:
## 3. PERFORMANCE STANDARDS
### 3.1 Response Time Targets
### 3.1. Response Time Targets
We endeavour to maintain the following response time targets:
@@ -118,7 +110,7 @@ We endeavour to maintain the following response time targets:
**(d)** **Static Content Delivery**: Average content delivery time under 1 second globally.
### 3.2 Performance Measurement
### 3.2. Performance Measurement
Performance metrics are measured using:
@@ -130,7 +122,7 @@ Performance metrics are measured using:
**(d)** **Third-Party Verification**: Independent monitoring services where applicable.
### 3.3 Performance Factors
### 3.3. Performance Factors
Performance may be affected by:
@@ -146,11 +138,11 @@ Performance may be affected by:
## 4. WARRANTY DISCLAIMERS
### 4.1 Reference to Comprehensive Warranty Disclaimers
### 4.1. Reference to Comprehensive Warranty Disclaimers
**IMPORTANT: Comprehensive warranty disclaimers, including all general, software, third-party service, and data warranties, are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 4.2 SLA-Specific Disclaimers
### 4.2. SLA-Specific Disclaimers
In addition to the comprehensive disclaimers in our Liability Policy, we specifically disclaim any warranties regarding:
@@ -164,7 +156,7 @@ In addition to the comprehensive disclaimers in our Liability Policy, we specifi
## 5. SERVICE LIMITATIONS AND RESTRICTIONS
### 5.1 Usage Limitations
### 5.1. Usage Limitations
Our Services are subject to the following limitations:
@@ -176,7 +168,7 @@ Our Services are subject to the following limitations:
**(d)** **Feature Restrictions**: Certain features may be limited or restricted based on usage patterns.
### 5.2 Geographic and Legal Restrictions
### 5.2. Geographic and Legal Restrictions
Services may be subject to:
@@ -188,7 +180,7 @@ Services may be subject to:
**(d)** **Content Restrictions**: Geographic restrictions on certain content or features.
### 5.3 Technical Limitations
### 5.3. Technical Limitations
Users should be aware of the following technical limitations:
@@ -202,7 +194,7 @@ Users should be aware of the following technical limitations:
## 6. SERVICE LEVEL REMEDIES AND CREDITS
### 6.1 Service Level Breach Determination
### 6.1. Service Level Breach Determination
A Service Level breach occurs when:
@@ -214,7 +206,7 @@ A Service Level breach occurs when:
**(d)** The breach is not due to excluded circumstances listed in Section 2.4.
### 6.2 Available Remedies
### 6.2. Available Remedies
**IMPORTANT: SERVICE CREDITS ARE YOUR SOLE AND EXCLUSIVE REMEDY FOR SERVICE LEVEL BREACHES.**
@@ -228,7 +220,7 @@ Available remedies for verified Service Level breaches include:
**(d)** **Alternative Solutions**: Reasonable alternative arrangements where technically feasible.
### 6.3 Remedy Limitations
### 6.3. Remedy Limitations
Service Level remedies are subject to the following limitations:
@@ -240,7 +232,7 @@ Service Level remedies are subject to the following limitations:
**(d)** **Good Faith Usage**: Remedies available only to users in good standing with all applicable policies.
### 6.4 Remedy Request Process
### 6.4. Remedy Request Process
To request Service Level remedies:
@@ -250,11 +242,11 @@ To request Service Level remedies:
**(c)** **Verification**: Allow reasonable time for our team to verify the claim against monitoring data;
**(d)** **Resolution**: We will respond within 10 business days with our determination and any applicable remedies.
**(d)** **Resolution**: We will respond within 7-10 business days with our determination and any applicable remedies.
## 7. FORCE MAJEURE AND EXTERNAL FACTORS
### 7.1 Force Majeure Events
### 7.1. Force Majeure Events
We shall not be liable for service disruptions caused by force majeure events including:
@@ -266,7 +258,7 @@ We shall not be liable for service disruptions caused by force majeure events in
**(d)** **Pandemic Events**: Public health emergencies that affect our operations or service delivery.
### 7.2 Third-Party Dependencies
### 7.2. Third-Party Dependencies
Our Services rely on various third-party providers, and we cannot guarantee:
@@ -278,7 +270,7 @@ Our Services rely on various third-party providers, and we cannot guarantee:
**(d)** **Content Delivery Networks**: Performance of content distribution services.
### 7.3 Cyber Security Threats
### 7.3. Cyber Security Threats
Service availability may be affected by:
@@ -292,7 +284,7 @@ Service availability may be affected by:
## 8. MONITORING AND REPORTING
### 8.1 Service Monitoring
### 8.1. Service Monitoring
We maintain comprehensive service monitoring including:
@@ -304,11 +296,11 @@ We maintain comprehensive service monitoring including:
**(d)** **Performance Metrics**: Continuous measurement of response times and system performance.
### 8.2 Status Communication
### 8.2. Status Communication
Service status information is communicated through:
**(a)** **Status Page**: Real-time service status available at designated status page;
**(a)** **Status Page**: Real-time service status available at designated status page at https://uptime.nhcarrigan.com;
**(b)** **Incident Updates**: Regular updates during service disruptions or maintenance;
@@ -316,7 +308,13 @@ Service status information is communicated through:
**(d)** **Email Notifications**: Direct notifications to users for significant service impacts (where contact information is available).
### 8.3 Transparency Reports
### 8.3. Transparency Reports
:::tip[Heads Up!]{icon=pen}
The policy or policies in this section are still a work in progress. We have not yet implemented the necessary infrastructure to comply with this section.
We are working very hard to get them in place as soon as possible. If you would like to help, consider [applying to join our team!](https://forms.nhcarrigan.com/o/docs/forms/mCxDu3snk9TzFiDjrT4Vc8/4)
:::
We publish regular transparency reports including:
@@ -330,7 +328,7 @@ We publish regular transparency reports including:
## 9. USER RESPONSIBILITIES AND OBLIGATIONS
### 9.1 Proper Usage Requirements
### 9.1. Proper Usage Requirements
To ensure optimal service performance, users must:
@@ -342,7 +340,7 @@ To ensure optimal service performance, users must:
**(d)** **Maintain Account Security**: Implement appropriate security measures for account access.
### 9.2 System Requirements
### 9.2. System Requirements
Users are responsible for:
@@ -354,7 +352,7 @@ Users are responsible for:
**(d)** **Security Software**: Managing security software that may interfere with service access.
### 9.3 Data Management
### 9.3. Data Management
Users must:
@@ -368,11 +366,11 @@ Users must:
## 10. LIMITATION OF LIABILITY
### 10.1 Reference to Comprehensive Liability Framework
### 10.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, maximum liability caps, and all related legal protections are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference and governs all liability matters related to service level performance.**
### 10.2 SLA-Specific Liability Clarifications
### 10.2. SLA-Specific Liability Clarifications
In addition to the comprehensive protections in our Liability Policy:
@@ -384,13 +382,13 @@ In addition to the comprehensive protections in our Liability Policy:
## 11. INDEMNIFICATION
### 11.1 Reference to Comprehensive Indemnification Framework
### 11.1. Reference to Comprehensive Indemnification Framework
**IMPORTANT: All indemnification obligations, procedures, scope, and related provisions are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference and governs all indemnification matters related to SLA compliance and service usage.**
## 12. DISPUTE RESOLUTION
### 12.1 Initial Resolution Procedures
### 12.1. Initial Resolution Procedures
Before initiating formal legal proceedings, parties agree to attempt resolution through:
@@ -402,7 +400,7 @@ Before initiating formal legal proceedings, parties agree to attempt resolution
**(d)** **Documentation**: Maintenance of detailed records of resolution attempts.
### 12.2 Governing Law and Jurisdiction
### 12.2. Governing Law and Jurisdiction
This SLA shall be governed by:
@@ -416,7 +414,7 @@ This SLA shall be governed by:
## 13. MODIFICATIONS AND UPDATES
### 13.1 Right to Modify
### 13.1. Right to Modify
We reserve the right to modify this SLA at any time to:
@@ -428,7 +426,7 @@ We reserve the right to modify this SLA at any time to:
**(d)** **User Feedback**: Incorporate feedback and lessons learned from service operations.
### 13.2 Modification Notice
### 13.2. Modification Notice
Material changes to this SLA will be communicated through:
@@ -440,19 +438,19 @@ Material changes to this SLA will be communicated through:
**(d)** **Advance Notice**: Minimum 30 days advance notice for material changes affecting service levels.
### 13.3 Acceptance of Modifications
### 13.3. Acceptance of Modifications
**(a)** **Continued Use**: Continued use of Services after modification notice constitutes acceptance;
**(b)** **Opt-Out Right**: You may discontinue service usage if you disagree with modifications;
**(c)** **Effective Date**: Modifications become effective on the date specified in the notice;
**(c)** **Implementation**: Modifications become effective as specified in the notice;
**(d)** **Version Control**: Current and historical versions available for reference.
## 14. CONTACT INFORMATION AND SUPPORT
### 14.1 SLA-Related Inquiries
### 14.1. SLA-Related Inquiries
For questions about this SLA or service level issues:
@@ -460,9 +458,9 @@ For questions about this SLA or service level issues:
**Subject Line:** SLA Inquiry - [Brief Description]
**Response Time:** Within 2 business days for SLA-related inquiries
**Response Time:** Within 7-10 business days for SLA-related inquiries
### 14.2 Service Level Remedy Requests
### 14.2. Service Level Remedy Requests
For Service Level remedy requests:
@@ -470,19 +468,19 @@ For Service Level remedy requests:
**Subject Line:** SLA Remedy Request - [Service Name]
**Response Time:** Within 10 business days for remedy determinations
**Response Time:** Within 7-10 business days for remedy determinations
### 14.3 Technical Support
### 14.3. Technical Support
For general technical support:
**Email:** support@nhcarrigan.com
**Community Forum:** https://forum.nhcarrigan.com
**Discord Community:** https://chat.nhcarrigan.com
**Response Time:** Within 48 hours for technical support requests
**Response Time:** Within 7-10 business days for technical support requests
### 14.4 Legal and Compliance Matters
### 14.4. Legal and Compliance Matters
For legal matters related to this SLA:
@@ -490,15 +488,7 @@ For legal matters related to this SLA:
**Subject Line:** Legal Matter - SLA
**Response Time:** Within 5 business days for legal inquiries
**Document Version:** 1.0
**Last Updated:** 15 September 2025
**Effective Date:** 15 September 2025
**Next Review Date:** 15 March 2026
**Response Time:** Within 7-10 business days for legal inquiries
---
+47 -55
View File
@@ -6,11 +6,11 @@ title: Data Subprocessors
## 1. INTRODUCTION AND OVERVIEW
### 1.1 Purpose and Scope
### 1.1. Purpose and Scope
This document provides comprehensive information about third-party entities that process personal data on behalf of nhcarrigan ("we," "us," "our," or "the Company"). By using our services, you acknowledge that your data may be processed by these subprocessors in accordance with their respective privacy policies and our contractual agreements.
This document provides comprehensive information about third-party entities that process personal data on behalf of NHCarrigan ("we," "us," "our," or "the Company"). By using our services, you acknowledge that your data may be processed by these subprocessors in accordance with their respective privacy policies and our contractual agreements.
### 1.2 Legal Framework
### 1.2. Legal Framework
This disclosure is provided in accordance with:
@@ -22,7 +22,7 @@ This disclosure is provided in accordance with:
**(d)** Industry best practices for data processing transparency.
### 1.3 Data Processing Principles
### 1.3. Data Processing Principles
All subprocessor relationships are governed by:
@@ -34,7 +34,7 @@ All subprocessor relationships are governed by:
**(d)** **Contractual Protection:** Formal agreements govern all data processing relationships.
### 1.4 User Rights and Protections
### 1.4. User Rights and Protections
Your rights regarding subprocessor data processing include:
@@ -48,13 +48,13 @@ Your rights regarding subprocessor data processing include:
## 2. PRIMARY SUBPROCESSORS
### 2.1 Definition and Role
### 2.1. Definition and Role
Primary subprocessors are third-party entities that directly process, store, or manage data on our behalf as part of our core service delivery. These relationships involve direct contractual arrangements and technical integrations.
### 2.2 Primary Subprocessor Details
### 2.2. Primary Subprocessor Details
#### 2.2.1 Anthropic
#### 2.2.1. Anthropic
**Data Processing Role:** Artificial Intelligence and Natural Language Processing
@@ -79,7 +79,7 @@ Primary subprocessors are third-party entities that directly process, store, or
**Privacy Policy:** https://www.anthropic.com/privacy
#### 2.2.2 DigitalOcean
#### 2.2.2. DigitalOcean
**Data Processing Role:** Infrastructure and Hosting Services
@@ -105,7 +105,7 @@ Primary subprocessors are third-party entities that directly process, store, or
**Privacy Policy:** https://www.digitalocean.com/legal/privacy-policy
#### 2.2.3 MongoDB
#### 2.2.3. MongoDB
**Data Processing Role:** Database Management and Storage
@@ -131,7 +131,7 @@ Primary subprocessors are third-party entities that directly process, store, or
**Privacy Policy:** https://www.mongodb.com/legal/privacy-policy
#### 2.2.4 Stripe
#### 2.2.4. Stripe
**Data Processing Role:** Payment Processing and Identity Verification
@@ -159,22 +159,22 @@ Primary subprocessors are third-party entities that directly process, store, or
## 3. SECONDARY SUBPROCESSORS
### 3.1 Definition and Role
### 3.1. Definition and Role
Secondary subprocessors are platforms and services that users interact with directly to access our services. While we do not have direct contractual control over these entities, user interaction with our services through these platforms may result in data processing by these entities under their own terms and policies.
### 3.2 Platform Integration Notice
### 3.2. Platform Integration Notice
When you access our services through third-party platforms, your interactions are subject to both our privacy policy and the privacy policies of these platforms. We recommend reviewing the privacy policies of all platforms you use to access our services.
### 3.3 Secondary Subprocessor Platforms
### 3.3. Secondary Subprocessor Platforms
#### 3.3.1 Discord
#### 3.3.1. Discord
**Relationship Type:** Community Platform Integration
**Data Processing Context:**
- User interactions in Discord servers managed by or affiliated with nhcarrigan
- User interactions in Discord servers managed by or affiliated with NHCarrigan
- Bot services and integrations provided through Discord
- Community management and moderation activities
@@ -182,7 +182,7 @@ When you access our services through third-party platforms, your interactions ar
**Privacy Policy:** https://discord.com/privacy
#### 3.3.2 GitHub
#### 3.3.2. GitHub
**Relationship Type:** Development Platform and Code Repository
@@ -196,7 +196,7 @@ When you access our services through third-party platforms, your interactions ar
**Privacy Policy:** https://docs.github.com/en/site-policy/privacy-policies/github-privacy-statement
#### 3.3.3 PayPal
#### 3.3.3. PayPal
**Relationship Type:** Alternative Payment Processing
@@ -209,7 +209,7 @@ When you access our services through third-party platforms, your interactions ar
**Privacy Policy:** https://www.paypal.com/us/legalhub/privacy-full
#### 3.3.4 Twitch
#### 3.3.4. Twitch
**Relationship Type:** Live Streaming Platform Integration
@@ -224,7 +224,7 @@ When you access our services through third-party platforms, your interactions ar
## 4. SUBPROCESSOR MANAGEMENT AND GOVERNANCE
### 4.1 Due Diligence Process
### 4.1. Due Diligence Process
Before engaging any primary subprocessor, we conduct comprehensive due diligence including:
@@ -236,7 +236,7 @@ Before engaging any primary subprocessor, we conduct comprehensive due diligence
**(d)** **Contract Negotiation:** Establishment of data processing agreements with appropriate protections.
### 4.2 Ongoing Monitoring
### 4.2. Ongoing Monitoring
We maintain ongoing oversight of subprocessor relationships through:
@@ -248,7 +248,7 @@ We maintain ongoing oversight of subprocessor relationships through:
**(d)** **Contract Management:** Regular review and update of contractual terms.
### 4.3 Data Processing Agreements
### 4.3. Data Processing Agreements
All primary subprocessors are bound by data processing agreements that include:
@@ -260,7 +260,7 @@ All primary subprocessors are bound by data processing agreements that include:
**(d)** **Audit Rights:** Our right to audit subprocessor data processing practices.
### 4.4 Subprocessor Change Management
### 4.4. Subprocessor Change Management
Changes to subprocessor arrangements are managed through:
@@ -274,7 +274,7 @@ Changes to subprocessor arrangements are managed through:
## 5. DATA TRANSFER AND SECURITY
### 5.1 International Data Transfers
### 5.1. International Data Transfers
When data is transferred internationally to subprocessors, we ensure appropriate safeguards through:
@@ -286,7 +286,7 @@ When data is transferred internationally to subprocessors, we ensure appropriate
**(d)** **Binding Corporate Rules:** Acceptance of subprocessors with approved internal data transfer rules.
### 5.2 Security Requirements
### 5.2. Security Requirements
All primary subprocessors must maintain security measures including:
@@ -298,7 +298,7 @@ All primary subprocessors must maintain security measures including:
**(d)** **Incident Response:** Established procedures for responding to security incidents.
### 5.3 Compliance and Certifications
### 5.3. Compliance and Certifications
We prefer subprocessors with recognised compliance certifications such as:
@@ -310,7 +310,7 @@ We prefer subprocessors with recognised compliance certifications such as:
**(d)** **GDPR Compliance:** Demonstrated compliance with General Data Protection Regulation.
### 5.4 Data Breach Response
### 5.4. Data Breach Response
In the event of a data breach involving a subprocessor:
@@ -324,7 +324,7 @@ In the event of a data breach involving a subprocessor:
## 6. USER RIGHTS AND CONTROL
### 6.1 Transparency Rights
### 6.1. Transparency Rights
Users have the right to:
@@ -336,7 +336,7 @@ Users have the right to:
**(d)** **Contact:** Direct communication channels for subprocessor-related concerns.
### 6.2 Data Subject Rights
### 6.2. Data Subject Rights
Regarding data processed by subprocessors, users may:
@@ -348,11 +348,11 @@ Regarding data processed by subprocessors, users may:
**(d)** **Restrict Processing:** Limit how data is processed by subprocessors.
### 6.3 Exercise of Rights
### 6.3. Exercise of Rights
To exercise rights regarding subprocessor data processing:
**(a)** **Primary Contact:** Contact us at privacy@nhcarrigan.com for coordination;
**(a)** **Primary Contact:** Submit requests through our **Privacy Request Form** (Preferred): https://forms.nhcarrigan.com/o/docs/forms/qEJgBWGDfyHv6x51VU9aVX/4 or contact us at privacy@nhcarrigan.com for coordination;
**(b)** **Direct Contact:** Contact subprocessors directly using their provided channels;
@@ -360,7 +360,7 @@ To exercise rights regarding subprocessor data processing:
**(d)** **Response Time:** Allow reasonable time for investigation and response.
### 6.4 Complaint Mechanisms
### 6.4. Complaint Mechanisms
If you have concerns about subprocessor data processing:
@@ -374,19 +374,19 @@ If you have concerns about subprocessor data processing:
## 7. UPDATES AND CHANGES
### 7.1 Change Notification Process
### 7.1. Change Notification Process
We will notify users of changes to subprocessor arrangements through:
**(a)** **Email Notification:** Direct notification to registered users for significant changes;
**(b)** **Website Updates:** Updates to this document with change logs and effective dates;
**(b)** **Website Updates:** Updates to this document with change logs;
**(c)** **Service Notifications:** In-app notifications where technically feasible;
**(d)** **Community Announcements:** Public announcements in community forums.
### 7.2 Types of Changes Requiring Notification
### 7.2. Types of Changes Requiring Notification
Changes requiring advance notification include:
@@ -398,7 +398,7 @@ Changes requiring advance notification include:
**(d)** **Security Changes:** Material changes to security measures or protections.
### 7.3 Objection Rights
### 7.3. Objection Rights
If you object to changes in subprocessor arrangements:
@@ -410,7 +410,7 @@ If you object to changes in subprocessor arrangements:
**(d)** **Service Termination:** You may terminate services if objections cannot be accommodated.
### 7.4 Emergency Changes
### 7.4. Emergency Changes
In emergency situations requiring immediate subprocessor changes:
@@ -424,7 +424,7 @@ In emergency situations requiring immediate subprocessor changes:
## 8. CONTACT INFORMATION AND SUPPORT
### 8.1 Primary Contact
### 8.1. Primary Contact
For questions about subprocessor data processing:
@@ -432,9 +432,9 @@ For questions about subprocessor data processing:
**Subject Line:** Subprocessor Data Processing Inquiry
**Response Time:** Within 5 business days for standard inquiries
**Response Time:** Within 7-10 business days for standard inquiries
### 8.2 Rights Requests
### 8.2. Rights Requests
For exercising data subject rights regarding subprocessor processing:
@@ -444,7 +444,7 @@ For exercising data subject rights regarding subprocessor processing:
**Required Information:** Please include your full name, account information, and specific request details
### 8.3 Complaints and Concerns
### 8.3. Complaints and Concerns
For complaints about subprocessor data processing:
@@ -454,19 +454,19 @@ For complaints about subprocessor data processing:
**Alternative:** Contact relevant supervisory authorities in your jurisdiction
### 8.4 Technical Support
### 8.4. Technical Support
For technical issues related to third-party platform integrations:
**Email:** support@nhcarrigan.com
**Community Forum:** https://forum.nhcarrigan.com
**Discord Community:** https://chat.nhcarrigan.com
**Response Time:** Within 48 hours for technical support requests
**Response Time:** Within 7-10 business days for technical support requests
## 9. COMPLIANCE AND REGULATORY INFORMATION
### 9.1 Regulatory Framework
### 9.1. Regulatory Framework
This subprocessor disclosure is maintained in compliance with:
@@ -478,7 +478,7 @@ This subprocessor disclosure is maintained in compliance with:
**(d)** **Industry Standards:** Best practices for data processing transparency.
### 9.2 Regular Review
### 9.2. Regular Review
This document is reviewed and updated:
@@ -490,7 +490,7 @@ This document is reviewed and updated:
**(d)** **Regulatory Updates:** Updates following changes in applicable laws or regulations.
### 9.3 Documentation Standards
### 9.3. Documentation Standards
We maintain documentation standards including:
@@ -502,14 +502,6 @@ We maintain documentation standards including:
**(d)** **Stakeholder Input:** Consideration of feedback from users and privacy advocates.
**Document Version:** 2.0
**Last Updated:** 15 September 2025
**Next Review Date:** 15 September 2026
**Effective Date:** 15 September 2025
---
*This document provides transparency about our data processing relationships to help you make informed decisions about using our services. By using our services, you acknowledge understanding of these subprocessor arrangements and consent to the data processing described herein. For questions or concerns about subprocessor data processing, please contact us at privacy@nhcarrigan.com.*
+61 -65
View File
@@ -6,11 +6,11 @@ title: Terms of Service
## 1. INTRODUCTION AND DEFINITIONS
### 1.1 About These Terms
### 1.1. About These Terms
These Terms of Service ("Terms") constitute a legally binding agreement between you and nhcarrigan ("we," "us," "our," or "the Company"). By accessing or using any of our applications, services, or platforms (collectively, the "Services"), you acknowledge that you have read, understood, and agree to be bound by these Terms and all incorporated policies.
These Terms of Service ("Terms") constitute a legally binding agreement between you and NHCarrigan ("we," "us," "our," or "the Company"). By accessing or using any of our applications, services, or platforms (collectively, the "Services"), you acknowledge that you have read, understood, and agree to be bound by these Terms and all incorporated policies.
### 1.2 Incorporated Policies
### 1.2. Incorporated Policies
These Terms incorporate by reference the following additional policies, which form an integral part of your agreement with us:
@@ -30,21 +30,21 @@ These Terms incorporate by reference the following additional policies, which fo
**(h)** **Data Subprocessors**: Information about third-party data processing relationships.
### 1.3 Definitions
### 1.3. Definitions
For the purposes of these Terms:
**(a)** "Application" means any software application, website, platform, or digital service owned or operated by nhcarrigan;
**(a)** "Application" means any software application, website, platform, or digital service owned or operated by NHCarrigan;
**(b)** "Content" means all information, data, text, software, music, sound, photographs, graphics, video, messages, or other materials;
**(c)** "Services" means all applications, platforms, tools, and related services provided by nhcarrigan;
**(c)** "Services" means all applications, platforms, tools, and related services provided by NHCarrigan;
**(d)** "User" means any individual or entity that accesses or uses the Services;
**(e)** "Account" means any user account created to access specific features of the Services.
### 1.3 Acceptance of Terms
### 1.3. Acceptance of Terms
By using our Services, you represent and warrant that:
@@ -56,11 +56,11 @@ By using our Services, you represent and warrant that:
**(d)** All information you provide is accurate and complete.
### 1.4 Scope of Application
### 1.4. Scope of Application
These Terms govern your use of all Services, including but not limited to:
**(a)** All websites and web applications operated by nhcarrigan;
**(a)** All websites and web applications operated by NHCarrigan;
**(b)** Mobile applications and desktop software;
@@ -70,11 +70,11 @@ These Terms govern your use of all Services, including but not limited to:
## 2. MODIFICATIONS TO TERMS
### 2.1 Right to Modify
### 2.1. Right to Modify
We reserve the right, at our sole discretion, to modify, amend, supplement, or replace any provision of these Terms at any time without prior notice. Such modifications shall be effective immediately upon publication on our Services.
### 2.2 Notification of Changes
### 2.2. Notification of Changes
We shall make reasonable efforts to notify users of material changes to these Terms through:
@@ -84,17 +84,17 @@ We shall make reasonable efforts to notify users of material changes to these Te
**(c)** In-application notifications where technically feasible.
### 2.3 Acceptance of Modifications
### 2.3. Acceptance of Modifications
Your continued use of the Services following the publication of modified Terms constitutes your acceptance of such modifications. If you do not agree to the modified Terms, you must immediately discontinue use of all Services.
### 2.4 Version Control
### 2.4. Version Control
The current version of these Terms shall always be available on our website, with the effective date clearly indicated. We may, at our discretion, maintain an archive of previous versions.
The current version of these Terms shall always be available on our website. We may, at our discretion, maintain an archive of previous versions.
## 3. USER ELIGIBILITY AND ACCOUNT REQUIREMENTS
### 3.1 Age Requirements
### 3.1. Age Requirements
By agreeing to these Terms, you represent and warrant that:
@@ -104,7 +104,7 @@ By agreeing to these Terms, you represent and warrant that:
**(c)** Your parent or legal guardian has reviewed and agreed to these Terms on your behalf, if applicable.
### 3.2 Account Creation and Management
### 3.2. Account Creation and Management
Where account creation is required:
@@ -116,7 +116,7 @@ Where account creation is required:
**(d)** You accept full responsibility for all activities that occur under your account.
### 3.3 Account Termination Rights
### 3.3. Account Termination Rights
We reserve the right to suspend or terminate your account immediately, with or without notice, if:
@@ -130,23 +130,23 @@ We reserve the right to suspend or terminate your account immediately, with or w
## 4. PROHIBITED USES AND CONDUCT
### 4.1 Reference to Detailed Policies
### 4.1. Reference to Detailed Policies
Detailed prohibitions and conduct requirements are set forth in our Acceptable Use Policy, which is incorporated herein by reference. Users must comply with all provisions of the Acceptable Use Policy in addition to these Terms.
### 4.2 General Prohibition Summary
### 4.2. General Prohibition Summary
Without limiting the detailed provisions in our Acceptable Use Policy, users shall not use our Services for any unlawful purpose or in any manner that violates applicable laws, regulations, or the rights of others.
### 4.3 Intellectual Property Compliance
### 4.3. Intellectual Property Compliance
You acknowledge that all content and materials on our Services are protected by intellectual property laws. Unauthorised use may result in immediate termination and legal action. Detailed intellectual property obligations are set forth in our Acceptable Use Policy.
## 5. USER-GENERATED CONTENT
### 5.1 Content Licence Grant
### 5.1. Content Licence Grant
By submitting any content to our Services, you grant nhcarrigan:
By submitting any content to our Services, you grant NHCarrigan:
**(a)** A non-exclusive, royalty-free, perpetual, irrevocable licence to use, reproduce, modify, adapt, publish, translate, distribute, and display such content;
@@ -154,7 +154,7 @@ By submitting any content to our Services, you grant nhcarrigan:
**(c)** The right to use such content for any lawful purpose, including commercial purposes.
### 5.2 Content Representations
### 5.2. Content Representations
You represent and warrant that:
@@ -164,13 +164,13 @@ You represent and warrant that:
**(c)** The content complies with all applicable laws and these Terms.
### 5.3 Content Moderation
### 5.3. Content Moderation
Content moderation standards and procedures are detailed in our Content and Moderation Policy, which is incorporated herein by reference. We reserve the right to moderate content in accordance with that Policy and may take appropriate enforcement actions for policy violations.
## 6. SERVICE AVAILABILITY AND MODIFICATIONS
### 6.1 Right to Refuse or Discontinue Service
### 6.1. Right to Refuse or Discontinue Service
We reserve the right, at our sole discretion and without prior notice, to:
@@ -180,7 +180,7 @@ We reserve the right, at our sole discretion and without prior notice, to:
**(c)** Impose limits on certain features or restrict access to parts of our Services.
### 6.2 Technical Limitations and Data Transmission
### 6.2. Technical Limitations and Data Transmission
You acknowledge and accept that:
@@ -192,7 +192,7 @@ You acknowledge and accept that:
**(d)** We are not liable for any loss, alteration, or unauthorised access to data during transmission.
### 6.3 Usage Restrictions
### 6.3. Usage Restrictions
Without our express written consent, you shall not:
@@ -208,7 +208,7 @@ Without our express written consent, you shall not:
## 7. INFORMATION ACCURACY AND LIABILITY
### 7.1 Information Disclaimer
### 7.1. Information Disclaimer
We strive to provide accurate and current information through our Services. However, we make no representations or warranties regarding:
@@ -218,7 +218,7 @@ We strive to provide accurate and current information through our Services. Howe
**(c)** The availability or functionality of any service or feature.
### 7.2 User Responsibility for Information
### 7.2. User Responsibility for Information
You acknowledge and agree that:
@@ -228,7 +228,7 @@ You acknowledge and agree that:
**(c)** Any reliance upon information obtained through our Services is at your sole risk.
### 7.3 Updates and Corrections
### 7.3. Updates and Corrections
We reserve the right to:
@@ -240,15 +240,15 @@ We reserve the right to:
## 8. THIRD-PARTY SERVICES AND CONTENT
### 8.1 Third-Party Integration
### 8.1. Third-Party Integration
Our Services may integrate with or link to third-party services, applications, or content ("Third-Party Services"). Such integration does not constitute our endorsement of the Third-Party Services.
### 8.2 Third-Party Terms and Policies
### 8.2. Third-Party Terms and Policies
Your use of Third-Party Services may be subject to separate terms of service, privacy policies, and other agreements with the third-party providers. You are responsible for reviewing and complying with such terms.
### 8.3 Disclaimer for Third-Party Services
### 8.3. Disclaimer for Third-Party Services
We are not responsible for and make no warranties regarding:
@@ -262,59 +262,59 @@ We are not responsible for and make no warranties regarding:
## 9. PRIVACY AND DATA PROTECTION
### 9.1 Privacy Policy
### 9.1. Privacy Policy
Your privacy is important to us. Our collection, use, and protection of your personal information is governed by our Privacy Policy, which is incorporated into these Terms by reference.
### 9.2 Data Processing Consent
### 9.2. Data Processing Consent
By using our Services, you consent to our processing of your personal information in accordance with our Privacy Policy and applicable data protection laws.
### 9.3 Data Security
### 9.3. Data Security
Whilst we implement reasonable security measures to protect your information, we cannot guarantee absolute security. You acknowledge that any transmission of data is at your own risk.
## 10. DISCLAIMERS AND WARRANTIES
### 10.1 Reference to Comprehensive Disclaimers
### 10.1. Reference to Comprehensive Disclaimers
Comprehensive warranty disclaimers and service limitations are set forth in our Service Level Agreement and Warranty Disclaimer, and our Limitation of Liability and Indemnification Policy, both of which are incorporated herein by reference.
### 10.2 Summary Disclaimer
### 10.2. Summary Disclaimer
**IMPORTANT: Our Services are provided on an "AS IS" and "AS AVAILABLE" basis without warranties of any kind. We disclaim all warranties including merchantability, fitness for purpose, and non-infringement.**
### 10.3 Professional Advice Disclaimer
### 10.3. Professional Advice Disclaimer
Information provided through our Services is for general purposes only and does not constitute professional advice. Users should consult qualified professionals for specific advice.
## 11. LIMITATION OF LIABILITY
### 11.1 Reference to Comprehensive Liability Limitations
### 11.1. Reference to Comprehensive Liability Limitations
Comprehensive liability limitations, damage exclusions, and maximum liability caps are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference and constitutes an integral part of these Terms.
### 11.2 Summary of Key Limitations
### 11.2. Summary of Key Limitations
**TO THE MAXIMUM EXTENT PERMITTED BY LAW, WE SHALL NOT BE LIABLE FOR INDIRECT, CONSEQUENTIAL, OR PUNITIVE DAMAGES. OUR TOTAL LIABILITY IS LIMITED AS SPECIFIED IN OUR LIABILITY POLICY.**
### 11.3 Jurisdictional Adaptation
### 11.3. Jurisdictional Adaptation
Liability limitations apply to the maximum extent permitted by applicable law in each jurisdiction, with provisions for jurisdictional adaptation as detailed in our Liability Policy.
## 12. INDEMNIFICATION
### 12.1 Reference to Comprehensive Indemnification
### 12.1. Reference to Comprehensive Indemnification
Detailed indemnification obligations, procedures, and scope are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.
### 12.2 Summary of Indemnification
### 12.2. Summary of Indemnification
Users agree to indemnify nhcarrigan for claims arising from their use of Services, breach of terms, legal violations, and infringement of third-party rights, subject to the detailed provisions in our Indemnification Policy.
Users agree to indemnify NHCarrigan for claims arising from their use of Services, breach of terms, legal violations, and infringement of third-party rights, subject to the detailed provisions in our Indemnification Policy.
## 13. TERMINATION
### 13.1 Termination by Either Party
### 13.1. Termination by Either Party
Either party may terminate these Terms at any time:
@@ -322,7 +322,7 @@ Either party may terminate these Terms at any time:
**(b)** We may terminate immediately with or without cause or notice.
### 13.2 Effect of Termination
### 13.2. Effect of Termination
Upon termination:
@@ -332,71 +332,67 @@ Upon termination:
**(c)** Sections that by their nature should survive termination shall remain in effect.
### 13.3 Survival
### 13.3. Survival
The following sections shall survive termination of these Terms: Definitions, User-Generated Content, Disclaimers, Limitation of Liability, Indemnification, Governing Law, and any other sections that by their nature should survive.
## 14. GOVERNING LAW AND DISPUTE RESOLUTION
### 14.1 Governing Law
### 14.1. Governing Law
These Terms shall be governed by and construed in accordance with the laws of Washington State, United States, without regard to its conflict of law principles.
### 14.2 Jurisdiction and Venue
### 14.2. Jurisdiction and Venue
Any legal action or proceeding arising out of or relating to these Terms shall be brought exclusively in the federal or state courts located in Washington State, United States. You consent to the jurisdiction of such courts.
### 14.3 Dispute Resolution
### 14.3. Dispute Resolution
Before initiating any formal legal proceedings, the parties agree to attempt to resolve any disputes through good faith negotiations for a period of at least thirty (30) days.
### 14.4 Class Action Waiver
### 14.4. Class Action Waiver
You agree that any disputes shall be resolved on an individual basis and not as part of a class action, collective action, or representative proceeding.
## 15. GENERAL PROVISIONS
### 15.1 Entire Agreement
### 15.1. Entire Agreement
These Terms, together with our Privacy Policy and any other legal notices published by us, constitute the complete and exclusive agreement between you and us regarding your use of the Services.
### 15.2 Severability
### 15.2. Severability
If any provision of these Terms is found to be unenforceable or invalid, such provision shall be limited or eliminated to the minimum extent necessary so that these Terms shall otherwise remain in full force and effect.
### 15.3 Assignment
### 15.3. Assignment
You may not assign or transfer these Terms or your rights hereunder without our prior written consent. We may assign these Terms without restriction.
### 15.4 No Waiver
### 15.4. No Waiver
Our failure to enforce any provision of these Terms shall not be construed as a waiver of such provision or our right to enforce it in the future.
### 15.5 Electronic Communications
### 15.5. Electronic Communications
You consent to receive communications from us electronically, and you agree that all agreements, notices, and other communications satisfy any legal requirement that such communications be in writing.
## 16. CONTACT INFORMATION
### 16.1 General Inquiries
### 16.1. General Inquiries
For questions about these Terms or our Services, please contact us at:
**Email:** terms@nhcarrigan.com
### 16.2 Legal Notices
### 16.2. Legal Notices
All legal notices and formal communications should be sent to:
**Email:** legal@nhcarrigan.com
### 16.3 Business Hours
### 16.3. Business Hours
We endeavour to respond to all inquiries within forty-eight (48) hours during normal business hours (Monday through Friday, 9:00 AM to 5:00 PM Pacific Standard Time).
**Last Updated:** 15 September 2025
**Effective Date:** 15 September 2025
We endeavour to respond to all inquiries within 7-10 business days during normal business hours (Monday through Friday, 9:00 AM to 5:00 PM Pacific Standard Time).
---
+175
View File
@@ -0,0 +1,175 @@
---
title: 00. Frequently Asked Questions
---
**PROVIDING ANSWERS TO FREQUENTLY ASKED QUESTIONS REGARDING THE MENTORSHIP PROGRAMME**
## 1. INTRODUCTION AND LEGAL FRAMEWORK
### 1.1. Policy Overview
This Frequently Asked Questions Documentation (hereinafter referred to as "the FAQ") provides answers to common questions regarding our Mentorship Programme. This FAQ operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, Mentorship Programme Terms and Conditions, and all applicable legal protections by reference.
### 1.2. Purpose and Scope
This FAQ addresses common questions and concerns regarding programme participation, expectations, and procedures. For comprehensive programme terms and conditions, please refer to our [Mentorship Programme Terms and Conditions](/about/mentorship).
**IMPORTANT: This FAQ supplements but does not replace our comprehensive Mentorship Programme Terms and Conditions. All programme participants are required to familiarise themselves with and comply with all applicable policies.**
## 2. PROGRAMME COST AND FINANCIAL MATTERS
### 2.1. Programme Fees
**Question: Does the mentorship programme cost anything?**
**Answer:** No. Our Mentorship Programme is offered entirely free of charge. We do not collect tuition fees, academic fees, or any other programme-related charges.
**Additional Costs:**
- Participants may incur costs for third-party services such as hosting for application deployment
- All such costs are paid directly to third-party service providers
- Our organisation does not collect, process, or receive any payments related to these third-party services
**Voluntary Donations:**
- We welcome voluntary donations to support programme operations
- Donations are entirely optional and do not affect programme participation or outcomes
- For comprehensive information about donation options and policies, please refer to our [Donation and Support Policy](/about/donate)
## 3. PROGRAMME STRUCTURE AND SUPPORT
### 3.1. Self-Guided Programme Structure
**Question: How does the mentorship programme work?**
**Answer:** Our Mentorship Programme is designed to be self-guided and self-managed. The programme structure includes:
- **Self-Guided Documentation:** Comprehensive guides and templates for each stage of development
- **Resource Library:** Templates, examples, and checklists to support independent learning
- **On-Demand Support:** Programme leadership and community members available to answer questions when asked
- **Flexible Timeline:** Work at your own pace with no mandatory deadlines or review requirements
**Programme Philosophy:**
- Participants follow documentation and use provided resources independently
- Reviews and approvals are optional and available upon request
- Support is provided when participants ask for help, not through mandatory checkpoints
- **IMPORTANT: To get the most value from the programme experience, participants should actively ask mentors questions as much as possible. Mentors are available to help, but they rely on participants to initiate contact and ask for assistance when needed.**
- Community and peer support is encouraged throughout the programme
### 3.2. Response Time Expectations
**Question: How quickly will I get responses to my questions?**
**Answer:** The programme is designed to be self-guided, so you can progress independently without waiting for responses. However, when you do have questions:
- The Mentorship Programme is provided on a voluntary basis without compensation
- Programme leadership maintains multiple paid employment positions to cover personal expenses
- Response times may vary based on workload, availability, and other commitments
- Community members and alumni may also provide assistance
**Response Time Guidelines:**
- Most programme activities can be completed independently using provided documentation
- If you have questions, feel free to ask in the #mentee-chat channel
- If you have not received a response within 10 business days, you may send a gentle reminder
- Repeated communications at intervals of less than 10 business days may result in disciplinary action
- We appreciate your patience and understanding regarding response timelines
## 4. PROGRAMME WITHDRAWAL AND DISCONTINUATION
### 4.1. Voluntary Withdrawal
**Question: What if I change my mind?**
**Answer:** Participants may withdraw from the Mentorship Programme at any time without penalty or obligation.
**Withdrawal Procedures:**
- Participants must notify programme leadership of their intent to withdraw
- We request that participants provide a brief explanation for withdrawal to assist with programme improvement
- No fees, fines, or penalties apply to voluntary withdrawal
- Programme leadership will not pressure participants to remain in the programme
### 4.2. Temporary Breaks and Life Circumstances
**Question: I do not want to drop out, but I have a life situation going on...**
**Answer:** Temporary breaks from programme activities are acceptable and accommodated.
**Break Procedures:**
- Participants may request temporary breaks to address personal circumstances
- No activity requirements are enforced during approved breaks
- Participants must notify programme leadership of break requests to avoid unnecessary communications
- Programme leadership will respect break periods and adjust communications accordingly
## 5. PROGRAMME EXPULSION AND TERMINATION
### 5.1. Expulsion Circumstances
**Question: Will you kick us out at all?**
**Answer:** Programme participation may be terminated under specific circumstances as outlined in our Mentorship Programme Terms and Conditions.
**Grounds for Expulsion:**
**5.1.1 Inactivity and Non-Communication:**
- Failure to communicate for a period of two (2) weeks or more without prior notification
- Complete absence of response to programme communications
- Failure to notify programme leadership of breaks or absences
- Expulsion may occur to make programme capacity available for committed participants
**5.1.2 Code of Conduct Violations:**
- Violation of our [Community Code of Conduct](/community/coc)
- Failure to comply with community rules and standards
- Behaviour that compromises the safety and inclusivity of our learning environment
- Expulsion is necessary to maintain programme integrity and community safety
**5.1.3 Malicious Behaviour:**
- Intentional introduction of malware, viruses, or malicious code to programme repositories
- Development of projects designed to actively harm individuals or groups
- Any behaviour that poses security risks or legal liability
- Expulsion is necessary to protect programme participants and our organisation
### 5.2. Expulsion Procedures
All expulsion decisions are made in accordance with our Mentorship Programme Terms and Conditions and Community Code of Conduct. Participants subject to expulsion will receive appropriate notice and may access our appeals process as outlined in our [Appeals Process](/community/appeal).
## 6. ADDITIONAL QUESTIONS AND SUPPORT
### 6.1. Unanswered Questions
**Question: What if I have a question not covered here?**
**Answer:** For questions not addressed in this FAQ:
- Review the comprehensive mentorship documentation (01-10) for detailed guidance on each programme stage
- Check the resource library for templates, examples, and additional materials
- Contact programme leadership through the designated #mentee-chat channel in our Discord community
- Ask community members and alumni for peer support and guidance
- Programme leadership is available to answer questions when asked, but most activities can be completed independently
- Additional information is available in our comprehensive [Mentorship Programme Terms and Conditions](/about/mentorship)
## 7. LIMITATION OF LIABILITY AND DISCLAIMERS
### 7.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, and maximum liability caps are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 7.2. Programme Disclaimer
This FAQ provides general information about our Mentorship Programme. However:
- Programme terms, conditions, and procedures may be modified at any time
- This FAQ does not create contractual obligations beyond those set forth in our formal programme terms
- Programme leadership reserves the right to make decisions regarding programme participation based on individual circumstances
## 8. CONCLUSION
This FAQ addresses common questions regarding our Mentorship Programme. For comprehensive programme terms, conditions, and requirements, please refer to our [Mentorship Programme Terms and Conditions](/about/mentorship).
All programme participants are expected to familiarise themselves with and comply with all applicable policies and procedures. Questions about programme participation should be directed to programme leadership through designated communication channels.
---
*For questions about the Mentorship Programme or to suggest improvements, please contact programme leadership through the designated channels outlined in our Community Code of Conduct.*
:::tip[Helpful Links]
- [Join Discord](https://chat.nhcarrigan.com/) - Select the mentorship role to get started
- [Donate](https://donate.nhcarrigan.com/)
:::
@@ -0,0 +1,139 @@
---
title: 01. Onboarding
---
**ESTABLISHING ONBOARDING PROCEDURES AND REQUIREMENTS FOR MENTORSHIP PROGRAMME PARTICIPANTS**
## 1. INTRODUCTION AND LEGAL FRAMEWORK
### 1.1. Policy Overview
This Onboarding Documentation (hereinafter referred to as "the Documentation") establishes mandatory procedures and requirements for participants accepted into our Mentorship Programme. This Documentation operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, Mentorship Programme Terms and Conditions, and all applicable legal protections by reference.
### 1.2. Scope and Applicability
This Documentation applies to all individuals who have been accepted into our Mentorship Programme. All participants must complete the onboarding procedures set forth in this Documentation to gain full programme access.
**IMPORTANT: This is a self-guided programme. Once you complete onboarding, you can work through the programme documentation at your own pace. Reviews and approvals are optional and available upon request. For comprehensive information about the self-guided programme structure and how to get the most value from your mentorship experience, please refer to our [Mentorship Programme Terms and Conditions](/about/mentorship).**
## 2. APPLICATION ACCEPTANCE AND CONFIRMATION
### 2.1. Acceptance Notification
Upon review and acceptance of your application, you will receive an email confirmation of your acceptance into the Mentorship Programme.
### 2.2. Required Response
**Mandatory Requirement:** You MUST reply to the acceptance confirmation email with your GitHub username.
**Consequences of Non-Compliance:**
- Failure to respond with your GitHub username will prevent completion of onboarding procedures
- Programme access cannot be granted without GitHub account information
- Programme acceptance may be withdrawn if required information is not provided within reasonable timeframes
## 3. DISCORD COMMUNITY ACCESS
### 3.1. Discord Community Requirement
All programme participants must join our [Discord community](https://chat.nhcarrigan.com/) to access programme resources, communications, and support.
### 3.2. Discord Community Purpose
The Discord community serves as the primary platform for:
- Programme planning and coordination
- Coaching sessions and mentorship activities
- Participant communication and collaboration
- Resource sharing and programme announcements
### 3.3. Role Assignment Procedures
**Self-Selectable Role Process:**
1. Join the Discord community using the provided invitation link
2. Navigate to the Channels and Roles section
3. Select the mentorship role from the available self-selectable roles
4. The mentorship role will be automatically assigned and provides access to programme-specific channels and resources
## 4. GITHUB REPOSITORY ACCESS
### 4.1. Repository Purpose and Restrictions
**Repository Usage Limitations:**
**IMPORTANT: The repository provided to programme participants is designated EXCLUSIVELY for flagship project development. The following restrictions apply:**
- **Prohibited Content:** Participants must NOT commit practice projects, LeetCode solutions, or any code unrelated to the flagship project
- **Resume Portfolio:** This repository will be listed on resumes for job applications
- **Quality Standards:** Only high-quality, professional code appropriate for portfolio presentation should be committed
- **Violation Consequences:** Violation of repository usage restrictions may result in disciplinary action, including potential programme expulsion
### 4.2. Repository Invitation and Acceptance
**Invitation Process:**
- Programme participants will receive an invitation to a dedicated repository under our organisation
- The repository is designated for flagship project code storage and development
- Participants must accept the repository invitation within seven (7) days of receipt
- Invitations that are not accepted within seven (7) days will expire and may require re-invitation
### 4.3. Repository Access and Permissions
**Access Level:**
- Participants receive maintainer-level access to their designated repository
- Maintainer access permits configuration of repository settings, including:
- Workflow configurations
- Branch protection rules
- Repository settings and preferences
**Access Restrictions:**
- Participants do not have access to destructive repository settings
- Certain administrative functions remain restricted to organisation administrators
- Access levels are designed to balance participant autonomy with organisational security
## 5. ONBOARDING COMPLETION
### 5.1. Completion Requirements
Onboarding is considered complete when:
- Acceptance confirmation email has been responded to with GitHub username
- Discord community membership has been established
- Mentorship role has been assigned in Discord
- GitHub repository invitation has been accepted
- All required information has been provided to programme leadership
### 5.2. Programme Access
Upon completion of onboarding procedures, participants gain full access to:
- Programme-specific Discord channels
- GitHub repository for flagship project development
- Programme resources and documentation (self-guided guides 01-10)
- Resource library with templates, examples, and checklists
- On-demand support from programme leadership and community members
## 6. LIMITATION OF LIABILITY AND DISCLAIMERS
### 6.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, and maximum liability caps are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 6.2. Onboarding Disclaimer
This Documentation establishes mandatory onboarding procedures. However:
- Programme leadership reserves the right to modify onboarding procedures at any time
- Once onboarding is complete, the programme is self-guided and participants work at their own pace
- Reviews and approvals are optional and available upon request
- Programme leadership is not responsible for technical issues preventing onboarding completion beyond our reasonable control
## 7. CONCLUSION
This Onboarding Documentation establishes the procedures and requirements for participants accepted into our Mentorship Programme. All participants must complete these procedures to gain full programme access.
Questions about onboarding procedures should be directed to programme leadership through designated communication channels. For comprehensive programme terms and conditions, please refer to our [Mentorship Programme Terms and Conditions](/about/mentorship).
---
*For questions about onboarding procedures or programme participation, please contact programme leadership through the designated channels outlined in our Community Code of Conduct.*
:::tip[Helpful Links]
- [Join Discord](https://chat.nhcarrigan.com/) - Select the mentorship role to get started
- [Donate](https://donate.nhcarrigan.com/)
:::
@@ -0,0 +1,160 @@
---
title: 02. Goal Setting
---
**ESTABLISHING GOAL-SETTING PROCEDURES AND REQUIREMENTS FOR MENTORSHIP PROGRAMME PARTICIPANTS**
## 1. INTRODUCTION AND LEGAL FRAMEWORK
### 1.1. Policy Overview
This Goal-Setting Documentation (hereinafter referred to as "the Documentation") establishes mandatory procedures and requirements for goal-setting activities within our Mentorship Programme. This Documentation operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, Mentorship Programme Terms and Conditions, and all applicable legal protections by reference.
### 1.2. Scope and Applicability
This Documentation applies to all participants in our Mentorship Programme following completion of onboarding procedures. All participants should complete the goal-setting process set forth in this Documentation to proceed with programme activities.
**IMPORTANT: This is a self-guided process. You will create your own roadmap using provided templates and examples. No approval is required to proceed. For comprehensive information about the self-guided programme structure and how to get the most value from your mentorship experience, please refer to our [Mentorship Programme Terms and Conditions](/about/mentorship).**
## 2. GOAL-SETTING INITIATION
### 2.1. Timing and Prerequisites
Goal-setting procedures must be initiated following completion of onboarding procedures as outlined in our [Onboarding Documentation](/mentorship/01-onboarding).
### 2.2. Goal-Setting Forum Post Creation
**Required Action:** Create a thread in the #goal-setting forum channel on our Discord community.
**Thread Naming Convention:**
```markdown
<full name> - Goals
```
**Naming Requirements:**
- Use your full legal name or preferred full name
- Follow the exact format: "[Full Name] - Goals"
- Ensure consistency with other programme documentation
```markdown
<full name> - Goals
```
### 2.3. Required Information Disclosure
**Mandatory Information:** Your initial goal-setting post must include the following information:
**2.3.1 Career Objectives:**
- Specify the type of role you are pursuing for your career
- Examples include: full-stack developer, front-end developer, mobile developer, game developer
- Provide clarity regarding your professional aspirations and career direction
**2.3.2 Current Learning State:**
- Document your current technical knowledge and skills
- List programming languages, frameworks, and technologies with which you have experience
- Describe projects you have previously built or contributed to
- Provide an honest assessment of your current skill level
**2.3.3 Personal Interests:**
- Describe your interests, hobbies, and passions outside of coding
- This information assists in aligning programme activities with your personal motivations
- Helps programme leadership tailor mentorship approaches to your individual needs
### 2.4. Optional Feedback and Clarification
If you would like feedback on your goal-setting post or have questions about creating your roadmap, you can:
- Ask questions in the #mentee-chat channel in Discord
- Request feedback from programme leadership or community members
- Review roadmap templates and examples in the resource library
- Proceed independently if you feel confident in your goals and plan
## 3. ROADMAP DEVELOPMENT
### 3.1. Self-Guided Roadmap Creation
To finalise the goal-setting process, you will create your own learning roadmap using provided templates and examples.
**Roadmap Templates Available:**
- Template roadmaps are available for common career paths (front-end, back-end, full-stack, mobile, game development, etc.)
- Templates include suggested learning objectives, milestones, and skill development activities
- Templates can be customized to fit your individual circumstances and goals
**Roadmap Components:**
Your roadmap should outline:
- Learning objectives and milestones
- Flagship project development timeline (flexible, no deadlines required)
- Skill development activities and resources
- Programme progression expectations
### 3.2. Roadmap Customization
**Self-Assessment:**
- Review available roadmap templates and select one that aligns with your career goals
- Assess whether the template appears achievable given your circumstances
- Evaluate whether the template aligns with your programme goals
- Customize the template to incorporate your stated interests and preferences
**Customization Considerations:**
- Timeline feasibility given your availability and commitments
- Alignment with your career objectives and learning goals
- Incorporation of your interests and motivations
- Realistic assessment of your current skill level and learning capacity
### 3.3. Roadmap Flexibility
**Flexibility Principle:**
- Roadmaps are designed to provide structure and guidance, not rigid constraints
- You can modify your roadmap at any time to accommodate changes in:
- Your circumstances and availability
- Timeline requirements and constraints
- Learning progress and skill development
- Project scope and complexity adjustments
**Adaptation Process:**
- Update your roadmap as circumstances change
- No approval is required for roadmap modifications
- You work at your own pace with no mandatory deadlines
### 3.4. Roadmap Completion
**No Confirmation Required:**
- You do not need approval or confirmation to proceed
- Once you have created your roadmap, you are ready to proceed to project planning
- Your roadmap is a personal planning tool to guide your learning journey
**Next Steps:**
- Upon creating your roadmap, you are ready to proceed to project planning
- Project planning procedures are outlined in our [Project Planning Documentation](/mentorship/03-project-plan)
- Optional: You may share your roadmap in Discord if you'd like feedback, but this is not required
## 4. LIMITATION OF LIABILITY AND DISCLAIMERS
### 4.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, and maximum liability caps are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 4.2. Goal-Setting Disclaimer
This Documentation establishes goal-setting procedures and requirements. However:
- Programme leadership reserves the right to modify goal-setting procedures at any time
- Roadmap templates are provided as guidance and do not guarantee specific outcomes or achievements
- Participants create their own roadmaps and are responsible for their own learning progress
- Programme leadership is not responsible for participants' ability to achieve roadmap objectives
- Individual results may vary based on participant effort, circumstances, and other factors
- Reviews and approvals are optional and available upon request
## 5. CONCLUSION
This Goal-Setting Documentation establishes the procedures and requirements for goal-setting activities within our Mentorship Programme. All participants must complete these procedures to progress to project planning and development stages.
Questions about goal-setting procedures should be directed to programme leadership through designated communication channels. For comprehensive programme terms and conditions, please refer to our [Mentorship Programme Terms and Conditions](/about/mentorship).
---
*For questions about goal-setting procedures or programme participation, please contact programme leadership through the designated channels outlined in our Community Code of Conduct.*
:::tip[Helpful Links]
- [Join Discord](https://chat.nhcarrigan.com/) - Select the mentorship role to get started
- [Donate](https://donate.nhcarrigan.com/)
:::
@@ -0,0 +1,134 @@
---
title: 03. Project Planning
---
**ESTABLISHING PROJECT PLANNING PROCEDURES AND REQUIREMENTS FOR MENTORSHIP PROGRAMME PARTICIPANTS**
## 1. INTRODUCTION AND LEGAL FRAMEWORK
### 1.1. Policy Overview
This Project Planning Documentation (hereinafter referred to as "the Documentation") establishes mandatory procedures and requirements for flagship project planning within our Mentorship Programme. This Documentation operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, Mentorship Programme Terms and Conditions, and all applicable legal protections by reference.
### 1.2. Scope and Applicability
This Documentation applies to all participants in our Mentorship Programme following completion of goal-setting procedures. All participants should complete the project planning process set forth in this Documentation to proceed with flagship project development.
**IMPORTANT: This is a self-guided process. You will create your own project plan using provided examples and templates. No approval is required to proceed. For comprehensive information about the self-guided programme structure and how to get the most value from your mentorship experience, please refer to our [Mentorship Programme Terms and Conditions](/about/mentorship).**
## 2. PROJECT PLANNING INITIATION
### 2.1. Timing and Prerequisites
Project planning procedures must be initiated following completion of goal-setting procedures and roadmap confirmation as outlined in our [Goal-Setting Documentation](/mentorship/02-goal-setting).
### 2.2. Project Planning Forum Post Creation
**Required Action:** Create a post in the #project-plan forum channel on our Discord community.
**Post Naming Convention:**
```markdown
<full name> - Project Plan
```
**Naming Requirements:**
- Use your full legal name or preferred full name
- Follow the exact format: "[Full Name] - Project Plan"
- Ensure consistency with goal-setting documentation
```markdown
<full name> - Project Plan
```
### 2.3. Project Idea Documentation
**Required Information:**
- Provide as much detail as possible regarding your flagship project idea
- Include project objectives, features, and technical requirements
- Describe how the project aligns with your career goals and learning objectives
- Explain how the project incorporates your personal interests
**Project Idea Assistance:**
- If you do not yet have a project idea, create your post with a statement such as: "I need help brainstorming a project idea"
- Review project idea examples in the resource library for inspiration
- Ask for help in the #mentee-chat channel if you'd like community input
- Programme leadership and community members can provide feedback if requested
- You can also proceed independently by researching project ideas online or adapting examples
## 3. PROJECT PLAN DEVELOPMENT
### 3.1. Self-Guided Development Process
Once your project planning post is created, you will develop your project plan independently. Use the following guidance:
- Review project plan examples in the resource library
- Flesh out and refine your project concept
- Develop comprehensive project specifications
- Establish technical requirements and architecture considerations
- Create a detailed project plan ready for development work
**Optional Support:**
- If you need help brainstorming or refining your project idea, ask in the #mentee-chat channel
- Community members and programme leadership can provide feedback if requested
- You can proceed independently once you have a project concept you're happy with
### 3.2. Project Plan Example
The following example illustrates the level of detail expected in a comprehensive project plan:
```markdown
A life task tracker app thats open source and self-hosted as well as a live version hosted on my website with user auth and such. Could have kanban boards and different views and such, and have tasks that depend on other tasks just like on a github projects board.
Could also link rewards to tasks / projects. e.g. Car Maintenance project with sub tasks of cleaning car, changing oil, buying car charger for cig lighter port etc, and then could link to an item that you will buy for yourself as a reward for when the entire project is complete, and itll have a link to that item when you mark the project as complete
At the end I could sneak some gamification elements in as an opt-in thing where you can level up and such by completing tasks / projects/ completing life goals).
```
Additional project plan examples are available in the resource library.
### 3.3. Project Plan Completion
**No Approval Required:**
- You do not need approval or sign-off to proceed
- Once you have created your project plan, you are ready to proceed to user story development
- Your project plan is a living document that you can update as needed
**Next Steps:**
- Upon creating your project plan, you are ready to proceed to user story development
- User story development procedures are outlined in our [User Stories Documentation](/mentorship/04-user-stories)
- Optional: You may share your project plan in Discord if you'd like feedback, but this is not required
## 4. LIMITATION OF LIABILITY AND DISCLAIMERS
### 4.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, and maximum liability caps are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 4.2. Project Planning Disclaimer
This Documentation establishes project planning procedures and requirements. However:
- Programme leadership reserves the right to modify project planning procedures at any time
- Project plans are created by participants and serve as guidance, not guarantees
- Programme leadership is not responsible for participants' ability to complete projects as planned
- Individual results may vary based on participant effort, circumstances, and other factors
- Reviews and approvals are optional and available upon request
### 4.3. Intellectual Property Considerations
All project work completed as part of the Mentorship Programme is subject to our Mentorship Programme Terms and Conditions regarding intellectual property rights. Participants should familiarise themselves with these terms before beginning project development.
## 5. CONCLUSION
This Project Planning Documentation establishes the procedures and requirements for flagship project planning within our Mentorship Programme. All participants must complete these procedures to progress to project development stages.
Questions about project planning procedures should be directed to programme leadership through designated communication channels. For comprehensive programme terms and conditions, please refer to our [Mentorship Programme Terms and Conditions](/about/mentorship).
---
*For questions about project planning procedures or programme participation, please contact programme leadership through the designated channels outlined in our Community Code of Conduct.*
:::tip[Helpful Links]
- [Join Discord](https://chat.nhcarrigan.com/) - Select the mentorship role to get started
- [Donate](https://donate.nhcarrigan.com/)
:::
@@ -0,0 +1,137 @@
---
title: 04. User Stories
---
**ESTABLISHING USER STORY DEVELOPMENT PROCEDURES AND REQUIREMENTS FOR MENTORSHIP PROGRAMME PARTICIPANTS**
## 1. INTRODUCTION AND LEGAL FRAMEWORK
### 1.1. Policy Overview
This User Stories Documentation (hereinafter referred to as "the Documentation") establishes mandatory procedures and requirements for user story development within our Mentorship Programme. This Documentation operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, Mentorship Programme Terms and Conditions, and all applicable legal protections by reference.
### 1.2. Scope and Applicability
This Documentation applies to all participants in our Mentorship Programme following completion of project planning procedures. All participants should complete the user story development process set forth in this Documentation to proceed with technical breakdown and development stages.
**IMPORTANT: This is a self-guided process. You will create user stories independently using provided templates and examples. No review or approval is required to proceed. For comprehensive information about the self-guided programme structure and how to get the most value from your mentorship experience, please refer to our [Mentorship Programme Terms and Conditions](/about/mentorship).**
## 2. USER STORY DEVELOPMENT REQUIREMENTS
### 2.1. Purpose and Importance
Creating user stories is a crucial step in project planning that:
- Helps visualise and understand application requirements
- Breaks down requirements into digestible, isolated components
- Maintains a smaller, manageable scope of work for each task
- Facilitates effective project management and development workflow
### 2.2. User Story Issue Creation
**Mandatory Requirement:** Based on your approved project plan, you must create an individual issue on your GitHub repository for each user story.
**Issue Creation Requirements:**
- Each user story must be created as a separate, individual Gitea issue
- If your project plan contains thirty (30) user stories, you must create thirty (30) separate issues
- Each issue must be clearly titled and contain the complete user story description
- Issues must be created in the repository designated for your flagship project
## 3. USER STORY DEFINITION AND FORMAT
### 3.1. User Story Definition
A user story is an application requirement written from the perspective of an end user. User stories follow a standard format that describes:
- The user role or persona
- The desired functionality or capability
- The value or benefit to the user
### 3.2. User Story Examples
The following examples illustrate proper user story format:
**Example 1:**
- As an unauthenticated user, I can see a button to go through the login or registration flows.
**Example 2:**
- As an authenticated user, I can fill out a form to schedule an appointment and select from available dates and times listed on a calendar.
**Example 3:**
- As an administrator, I can review posts for their content and remove the ones that violate our policies.
## 4. ISSUE SEPARATION AND WORKFLOW
### 4.1. Separate Issue Requirement
**Question: Why separate issues? Can I not use a single issue with a list?**
**Answer:** Maintaining separate issues, or tickets, is required for the following reasons:
- **Pull Request Linking:** Each user story can be linked to a specific pull request
- **Scope Management:** Ensures that changes remain within the scope of a specific story
- **Workflow Standardisation:** Follows common industry practices for project management
- **Progress Tracking:** Facilitates accurate tracking of development progress and completion
### 4.2. Workflow Benefits
Separate issues provide:
- Clear traceability between requirements and implementation
- Better organisation and management of development tasks
- Improved collaboration and communication regarding specific features
- Enhanced ability to prioritise and schedule development work
## 5. USER STORY COMPLETION
### 5.1. Optional Review Process
**No Review Required:**
- You do not need to request review or approval to proceed
- Once you have created all user stories as individual issues, you are ready to proceed to technical breakdown
- Your user stories are a living document that you can update as needed
**Optional Review:**
- If you would like feedback on your user stories, you can:
- Request review in the #mentee-chat channel in Discord
- Ask community members or alumni for peer review
- Review user story examples in the resource library for comparison
- Reviews are optional and available upon request, not required
### 5.2. Next Steps
**Proceeding to Technical Breakdown:**
- Upon creating your user stories, you are ready to proceed to technical breakdown
- Technical breakdown procedures are outlined in our [Technical Breakdown Documentation](/mentorship/05-technical-breakdown)
- You can always return to refine your user stories later if needed
## 6. LIMITATION OF LIABILITY AND DISCLAIMERS
### 6.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, and maximum liability caps are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 6.2. User Story Development Disclaimer
This Documentation establishes user story development procedures and requirements. However:
- Programme leadership reserves the right to modify user story development procedures at any time
- User stories are created by participants and serve as guidance, not guarantees
- Programme leadership is not responsible for participants' ability to complete user stories as planned
- Individual results may vary based on participant effort, circumstances, and other factors
- Reviews and approvals are optional and available upon request
## 7. CONCLUSION
This User Stories Documentation establishes the procedures and requirements for user story development within our Mentorship Programme. All participants must complete these procedures to progress to technical breakdown and development stages.
Questions about user story development procedures should be directed to programme leadership through designated communication channels. For comprehensive programme terms and conditions, please refer to our [Mentorship Programme Terms and Conditions](/about/mentorship).
---
*For questions about user story development procedures or programme participation, please contact programme leadership through the designated channels outlined in our Community Code of Conduct.*
:::tip[Helpful Links]
- [Join Discord](https://chat.nhcarrigan.com/) - Select the mentorship role to get started
- [Donate](https://donate.nhcarrigan.com/)
:::
@@ -0,0 +1,223 @@
---
title: 05. Technical Breakdown
---
**ESTABLISHING TECHNICAL BREAKDOWN PROCEDURES AND REQUIREMENTS FOR MENTORSHIP PROGRAMME PARTICIPANTS**
## 1. INTRODUCTION AND LEGAL FRAMEWORK
### 1.1. Policy Overview
This Technical Breakdown Documentation (hereinafter referred to as "the Documentation") establishes mandatory procedures and requirements for technical breakdown activities within our Mentorship Programme. This Documentation operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, Mentorship Programme Terms and Conditions, and all applicable legal protections by reference.
### 1.2. Scope and Applicability
This Documentation applies to all participants in our Mentorship Programme following completion of user story development procedures. All participants should complete the technical breakdown process set forth in this Documentation to proceed with development work.
**IMPORTANT: This is a self-guided process. You will fill out technical breakdown templates independently for each user story. No review or approval is required to proceed. For comprehensive information about the self-guided programme structure and how to get the most value from your mentorship experience, please refer to our [Mentorship Programme Terms and Conditions](/about/mentorship).**
## 2. TECHNICAL BREAKDOWN INITIATION
### 2.1. Timing and Prerequisites
Technical breakdown procedures should be initiated following completion of user story development as outlined in our [User Stories Documentation](/mentorship/04-user-stories).
### 2.2. Technical Breakdown Template
You will add the technical breakdown template (set forth in Section 3 of this Documentation) to each user story issue yourself. The template is provided below for your reference.
```markdown
## 🎯 Acceptance Criteria
- [ ] Criteria 1 (clear, testable condition)
- [ ] Criteria 2
- [ ] Criteria 3
---
## ⚙️ Technical Details
- Proposed implementation approach:
- [ ] e.g., API endpoint, UI component, database schema changes
- Data considerations:
- [ ] Models, validation, storage needs
- Security/permissions:
- [ ] Any auth or role checks?
---
## 🔗 Dependencies
- [ ] Related tickets or features
- [ ] External services or APIs
- [ ] Libraries or frameworks required
---
## 🧪 Testing Notes
- [ ] Unit tests to cover…
- [ ] Integration tests to cover…
- [ ] Manual QA steps…
---
## 📂 Additional Context
- Links to designs, diagrams, or docs
- Any constraints or assumptions
- Open questions / things to clarify
```
### 2.3. Template Purpose and Requirements
**Template Purpose:**
This template is specifically designed to help you understand how to break down user stories into actionable technical components.
**Completion Requirements:**
- Fill out the technical breakdown template for each user story
- Template completion should be thorough and detailed
- Address all sections of the template to the best of your ability
- You can ask for guidance in Discord if you have questions, but this is optional
**Planning Importance:**
- Comprehensive planning at this stage reduces the need for refactoring during development
- Detailed technical breakdown facilitates more efficient and effective development work
- Thorough planning helps identify potential challenges and dependencies early in the process
## 3. TECHNICAL BREAKDOWN TEMPLATE
### 3.1. Template Structure
The technical breakdown template includes the following sections:
**3.1.1 Acceptance Criteria:**
- Clear, testable conditions that must be met for the user story to be considered complete
- Criteria should be specific, measurable, and verifiable
**3.1.2 Technical Details:**
- Proposed implementation approach (e.g., API endpoints, UI components, database schema changes)
- Data considerations (models, validation, storage needs)
- Security and permissions requirements (authentication, role checks, access controls)
**3.1.3 Dependencies:**
- Related tickets or features that must be completed first
- External services or APIs required for implementation
- Libraries or frameworks necessary for development
**3.1.4 Testing Notes:**
- Unit tests required to cover functionality
- Integration tests needed for component interaction
- Manual QA steps for validation
**3.1.5 Additional Context:**
- Links to designs, diagrams, or documentation
- Constraints or assumptions affecting implementation
- Open questions or items requiring clarification
### 3.2. Template Format
The technical breakdown template format is as follows:
## 4. TECHNICAL BREAKDOWN EXAMPLE
### 4.1. Example User Story
The following example demonstrates proper technical breakdown completion. For a user story stating "As a user, I should be able to add a game to my library," the technical breakdown would be completed as follows:
**Required Action:** Edit the issue body to fill in the template with the following information:
```markdown
🎯 Acceptance Criteria
- [ ] User can add game to library
- [ ] User can remove game from library
---
⚙️ Technical Details
- Proposed implementation approach:
- [ ] POST /library
- [ ] DELETE /library
- Data considerations:
- [ ] User model must have library property
- [ ] Library property must be array with game IDs
- [ ] Each ID points to a Game model record
- Security/permissions:
- [ ] Validate JWT to ensure authenticated user is correct
- [ ] Authenticated user can only add games to their own library
---
🔗 Dependencies
- [ ] #2 - Authentication is required to edit my library
- [ ] #5 - Profile UI necessary to get to this view
---
🧪 Testing Notes
- [ ] POST and DELETE routes should be tested with mock data
- [ ] UI should be tested to ensure functionality
---
📂 Additional Context
- Relational data model means using Mongo might not be the best choice. Should we re-evaluate?
- Consider a GET route for displaying the library.
```
## 5. TECHNICAL BREAKDOWN COMPLETION
### 5.1. Completion Requirements
Complete the technical breakdown template for each user story. Completion includes:
- Filling out all sections of the template to the best of your ability
- Providing detailed, specific information in each section
- Identifying dependencies, testing requirements, and technical considerations
- Seeking clarification from programme leadership or community members if needed (optional)
### 5.2. Optional Review
**No Review Required:**
- You do not need review or approval to proceed
- Once you have completed technical breakdowns for your user stories, you are ready to proceed to priority and effort assignment
- Your technical breakdowns are living documents that you can update as needed
**Optional Review:**
- If you would like feedback on your technical breakdowns, you can:
- Request review in the #mentee-chat channel in Discord
- Ask community members or alumni for peer review
- Review technical breakdown examples in the resource library for comparison
**Next Steps:**
- Upon completing your technical breakdowns, you are ready to proceed to priority and effort assignment
- Priority and effort assignment procedures are outlined in our [Priority and Effort Documentation](/mentorship/06-priority-and-effort)
## 6. LIMITATION OF LIABILITY AND DISCLAIMERS
### 6.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, and maximum liability caps are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 6.2. Technical Breakdown Disclaimer
This Documentation establishes technical breakdown procedures and requirements. However:
- Programme leadership reserves the right to modify technical breakdown procedures at any time
- Technical breakdowns are created by participants and serve as guidance, not guarantees
- Programme leadership is not responsible for participants' ability to complete technical breakdowns as planned
- Individual results may vary based on participant effort, technical knowledge, and other factors
- Reviews and approvals are optional and available upon request
## 7. CONCLUSION
This Technical Breakdown Documentation establishes the procedures and requirements for technical breakdown activities within our Mentorship Programme. All participants must complete these procedures to progress to development stages.
Questions about technical breakdown procedures should be directed to programme leadership through designated communication channels. For comprehensive programme terms and conditions, please refer to our [Mentorship Programme Terms and Conditions](/about/mentorship).
---
*For questions about technical breakdown procedures or programme participation, please contact programme leadership through the designated channels outlined in our Community Code of Conduct.*
:::tip[Helpful Links]
- [Join Discord](https://chat.nhcarrigan.com/) - Select the mentorship role to get started
- [Donate](https://donate.nhcarrigan.com/)
:::
@@ -0,0 +1,177 @@
---
title: 06. Priority and Effort
---
**ESTABLISHING PRIORITY AND EFFORT ASSIGNMENT PROCEDURES FOR MENTORSHIP PROGRAMME PARTICIPANTS**
## 1. INTRODUCTION AND LEGAL FRAMEWORK
### 1.1. Policy Overview
This Priority and Effort Documentation (hereinafter referred to as "the Documentation") establishes mandatory procedures and requirements for priority and effort assignment within our Mentorship Programme. This Documentation operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, Mentorship Programme Terms and Conditions, and all applicable legal protections by reference.
### 1.2. Scope and Applicability
This Documentation applies to all participants in our Mentorship Programme following completion of technical breakdown procedures. All participants should complete the priority and effort assignment process set forth in this Documentation to proceed with development work.
**IMPORTANT: This is a self-guided process. You will assign priority and effort labels independently. No review or approval is required to proceed. For comprehensive information about the self-guided programme structure and how to get the most value from your mentorship experience, please refer to our [Mentorship Programme Terms and Conditions](/about/mentorship).**
## 2. LABEL CREATION AND ASSIGNMENT
### 2.1. Label Creation Requirement
**Mandatory Action:** You must create labels for your repository to indicate priority and effort levels.
**Label Creation Requirements:**
- Labels have NOT been pre-created for your repository
- You are responsible for creating all necessary labels
- No specific naming convention is enforced
- Labels should align with your organisational style and preferences
### 2.2. Required Label Types
**Mandatory Label Categories:**
There are two (2) required label categories that must be applied to each user story issue:
1. **Priority Labels:** Indicate the relative priority of each user story
2. **Effort Labels:** Indicate the estimated effort required to complete each user story
## 3. PRIORITY ASSIGNMENT
### 3.1. Priority Assignment Principles
**Priority Assignment Methodology:**
Assigning priority to user stories is based on dependency analysis, not personal preference or interest level.
**Prohibited Priority Factors:**
Priority should NOT be assigned based on:
- Personal interest or enjoyment in working on a particular feature
- Excitement level or enthusiasm for specific functionality
- Subjective preferences or individual motivations
**Required Priority Factors:**
Priority MUST be assigned based on:
- Dependency relationships between user stories
- Blocking relationships (which stories block other stories)
- Logical sequence requirements for feature development
### 3.2. Dependency Analysis Example
Consider the following user stories for priority assignment:
**User Stories:**
1. As an unauthenticated user, I should be able to create an account or sign in to my existing account
2. As an authenticated user, I should be able to customise my profile
3. As an authenticated user, I should be able to create a new post
4. As a user, I should be able to view someone's profile
**Dependency Analysis:**
- User story 1 blocks stories 2 and 3 (authentication is required for authenticated user features)
- User story 2 blocks story 4 (profile customisation must exist before profile viewing)
- Stories 2 and 3 do not block each other (they can be developed independently)
**Priority Assignment:**
- Issue 1: High priority (blocks multiple other stories)
- Issues 2 and 3: Medium priority (blocked by issue 1, but do not block each other)
- Issue 4: Low priority (blocked by issue 2)
### 3.3. Priority Label Requirements
**Label Purpose:**
Priority labels should enable you to quickly determine which user stories need to be completed next based on their blocking relationships.
**Label Flexibility:**
- How you name and assign priorities is at your discretion
- Labels should clearly indicate relative priority levels
- Priority labels should facilitate efficient work planning and scheduling
## 4. EFFORT ASSIGNMENT
### 4.1. Effort Assignment Principles
**Effort Definition:**
Effort labels indicate the estimated amount of work required to complete each user story.
**Effort Quantification Methods:**
- Different organisations use various methods for quantifying effort
- "Story points" are a common method for indicating effort levels
- You may choose any method that effectively communicates effort requirements
### 4.2. Effort Assignment Example
Using a points system, the following effort assignments might be appropriate for the example user stories:
**Effort Assignments:**
1. Five points (building out an entire authentication flow is very complex)
2. Three points
3. Three points
4. One point (showing a static page is less complex)
**Effort Label Flexibility:**
- How you label and quantify effort is at your discretion
- Effort labels should accurately reflect the relative complexity and work required
- Labels should facilitate effective work planning and time management
### 4.3. Effort Label Purpose
**Planning Benefits:**
The purpose of applying effort labels is to help plan work timelines and resource allocation. For example:
- If you have three high-priority tasks but limited time available
- You might choose to complete the lowest-effort task first
- This allows for progress even when time is restricted
- Effort labels help balance priority with available time and resources
## 5. LABEL COMPLETION
### 5.1. Completion Process
**No Review Required:**
- Once you have applied priority and effort labels to all user stories, you are ready to begin development work
- No review or approval is required to proceed
- Your labels are a planning tool that you can adjust as needed
**Optional Review:**
- If you would like feedback on your priority and effort assignments, you can:
- Request review in the #mentee-chat channel in Discord
- Ask community members or alumni for peer review
- Review priority and effort examples in the resource library for comparison
- Reviews are optional and available upon request, not required
### 5.2. Next Steps
**Beginning Development:**
- Upon completing priority and effort assignments, you are ready to begin development work
- Development work should follow the procedures outlined in our [Contributing Documentation](/dev/contributing) and [Style Guide](/dev/style)
- You can always adjust your priority and effort labels as you learn more about your project
## 6. LIMITATION OF LIABILITY AND DISCLAIMERS
### 6.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, and maximum liability caps are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 6.2. Priority and Effort Assignment Disclaimer
This Documentation establishes priority and effort assignment procedures and requirements. However:
- Programme leadership reserves the right to modify these procedures at any time
- Priority and effort assignments are estimates created by participants and may change as development progresses
- Programme leadership is not responsible for participants' ability to complete work within estimated effort levels
- Individual results may vary based on participant skill, experience, and other factors
- Reviews and approvals are optional and available upon request
## 7. CONCLUSION
This Priority and Effort Documentation establishes the procedures and requirements for priority and effort assignment within our Mentorship Programme. All participants must complete these procedures to progress to development stages.
Questions about priority and effort assignment procedures should be directed to programme leadership through designated communication channels. For comprehensive programme terms and conditions, please refer to our [Mentorship Programme Terms and Conditions](/about/mentorship).
---
*For questions about priority and effort assignment procedures or programme participation, please contact programme leadership through the designated channels outlined in our Community Code of Conduct.*
:::tip[Helpful Links]
- [Join Discord](https://chat.nhcarrigan.com/) - Select the mentorship role to get started
- [Donate](https://donate.nhcarrigan.com/)
:::
@@ -0,0 +1,189 @@
---
title: 07. Writing Code
---
**ESTABLISHING CODE DEVELOPMENT PROCEDURES AND REQUIREMENTS FOR MENTORSHIP PROGRAMME PARTICIPANTS**
## 1. INTRODUCTION AND LEGAL FRAMEWORK
### 1.1. Policy Overview
This Writing Code Documentation (hereinafter referred to as "the Documentation") establishes mandatory procedures and requirements for code development activities within our Mentorship Programme. This Documentation operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, Mentorship Programme Terms and Conditions, Contributor Covenant, and all applicable legal protections by reference.
### 1.2. Scope and Applicability
This Documentation applies to all participants in our Mentorship Programme following completion of priority and effort assignment procedures. All participants should comply with the code development procedures set forth in this Documentation.
**IMPORTANT: Code development should comply with our Style Guide, Contributor Covenant, and all applicable development standards. Code reviews are optional and available upon request, not mandatory.**
## 2. DEVELOPMENT WORKFLOW REQUIREMENTS
### 2.1. Prerequisites
Before beginning code development, participants must have completed:
- Goal-setting and roadmap confirmation
- Project planning and approval
- User story development and approval
- Technical breakdown completion
- Priority and effort assignment
### 2.2. Additional Considerations
Before writing code, participants must consider and address the requirements set forth in Sections 3, 4, and 5 of this Documentation.
## 3. BRANCHING STRATEGY
### 3.1. Branch Protection Requirements
**Mandatory Requirement:** Participants are NOT permitted to push code directly to the `main` branch.
**Required Workflow:**
- Create a dedicated branch for each development task
- Make all changes on the dedicated branch
- Submit a pull request to merge changes back into `main`
- Follow standard professional development practices
### 3.2. Branch Scope Requirements
**Single User Story Scope:**
- Each branch must be scoped to a single user story
- This ensures that pull requests remain manageable in size
- Prevents pull requests from becoming too large to review effectively
- Facilitates clear tracking of work completion and progress
## 4. PULL REQUEST REVIEW PROCESS
### 4.1. Optional Review Process
**Self-Guided Development:**
- Code reviews are optional and available upon request
- You can merge your own pull requests without review if you choose
- Use the provided code review checklist (see Section 4.2) for self-review
- Community members and alumni may also provide peer reviews if requested
**Requesting Reviews:**
- If you would like a code review, request one in the #mentee-chat channel or tag programme leadership on your PR
- Reviews are provided when available, not guaranteed immediately
- You can proceed with development while waiting for reviews
### 4.2. Self-Review Checklist
**Code Review Checklist:**
Before merging, consider reviewing your own code for:
- Best practices and industry standards
- Code quality and maintainability
- Feature completeness and functionality
- Compliance with style guides and standards
- Security considerations and best practices
- Test coverage and quality
- Documentation and comments
A detailed code review checklist is available in the resource library.
### 4.3. Review Standards (When Requested)
**Professional Review Standards:**
When reviews are requested, programme leadership or community reviewers will evaluate:
- Best practices and industry standards
- Code quality and maintainability
- Feature completeness and functionality
- Compliance with style guides and standards
- Security considerations and best practices
**Review Communication:**
- Reviews may involve back-and-forth communication
- Review comments are designed to facilitate learning and skill improvement
- Reviews should be viewed as learning opportunities
- Remember that development is a marathon, not a sprint
## 5. PROJECT SCAFFOLDING AND SETUP
### 5.1. Initial Project Setup
**Required Actions:**
Before writing application code, participants must:
**5.1.1 Tooling Structure:**
- Add appropriate tooling structure for the project type
- Examples include: `package.json` for Node.js projects, `requirements.txt` for Python projects
- Configure project-specific tooling and dependencies
**5.1.2 Configuration Files:**
- Add configuration files for code quality tools
- Examples include: `black` configuration for Python projects, ESLint configuration for JavaScript projects
- Ensure all configuration files are properly set up
### 5.2. Continuous Integration Setup
**CI Configuration Requirements:**
- Configure a CI file to run on every pull request
- CI must verify that the following steps pass:
- Linting checks
- Build processes
- Test execution
- CI failures must be resolved before pull request approval
### 5.3. Setup Timing Importance
**Early Setup Benefits:**
- Setting up tooling and CI early ensures code quality from the start
- Prevents the need to fix issues across dozens of files later
- Establishes quality standards before significant code is written
- Facilitates consistent code quality throughout development
## 6. CODE DEVELOPMENT
### 6.1. Development Authorization
Upon completion of project scaffolding and setup, participants are authorised to begin writing code for their flagship project.
### 6.2. Development Requirements
**Branch Requirements:**
- Work must be performed on dedicated branches
- Each branch must be scoped to a single user story
- Follow branching strategy requirements set forth in Section 3
**Commit Practices:**
- Commit early and commit often
- Push code to remote repository regularly
- Regular commits and pushes prevent loss of work
- Maintain clear commit messages following project standards
## 7. LIMITATION OF LIABILITY AND DISCLAIMERS
### 7.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, and maximum liability caps are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 7.2. Code Development Disclaimer
This Documentation establishes code development procedures and requirements. However:
- Programme leadership reserves the right to modify development procedures at any time
- Code reviews are optional and provided when requested and available
- Code reviews do not guarantee acceptance of contributions or specific feedback
- Programme leadership is not responsible for participants' ability to complete development work
- Individual results may vary based on participant skill, effort, and other factors
### 7.3. Intellectual Property Considerations
All code developed as part of the Mentorship Programme is subject to our Mentorship Programme Terms and Conditions regarding intellectual property rights. Participants should familiarise themselves with these terms before beginning development work.
## 8. CONCLUSION
This Writing Code Documentation establishes the procedures and requirements for code development within our Mentorship Programme. All participants must comply with these procedures to ensure code quality, maintainability, and alignment with professional development standards.
Questions about code development procedures should be directed to programme leadership through designated communication channels. For comprehensive programme terms and conditions, please refer to our [Mentorship Programme Terms and Conditions](/about/mentorship).
---
*For questions about code development procedures or programme participation, please contact programme leadership through the designated channels outlined in our Community Code of Conduct.*
:::tip[Helpful Links]
- [Join Discord](https://chat.nhcarrigan.com/) - Select the mentorship role to get started
- [Donate](https://donate.nhcarrigan.com/)
:::
@@ -0,0 +1,209 @@
---
title: 08. Final Polish
---
**ESTABLISHING FINAL POLISH AND DEPLOYMENT PROCEDURES FOR MENTORSHIP PROGRAMME PARTICIPANTS**
## 1. INTRODUCTION AND LEGAL FRAMEWORK
### 1.1. Policy Overview
This Final Polish Documentation (hereinafter referred to as "the Documentation") establishes mandatory procedures and requirements for final project polish, documentation, and deployment within our Mentorship Programme. This Documentation operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, Mentorship Programme Terms and Conditions, and all applicable legal protections by reference.
### 1.2. Scope and Applicability
This Documentation applies to all participants in our Mentorship Programme whose flagship projects have reached a state suitable for resume presentation. All participants should complete the final polish procedures set forth in this Documentation before project completion.
**IMPORTANT: This is a self-guided process. You will use provided checklists and templates to polish your project independently. Reviews and approvals are optional and available upon request. For comprehensive information about the self-guided programme structure and how to get the most value from your mentorship experience, please refer to our [Mentorship Programme Terms and Conditions](/about/mentorship).**
## 2. FINAL POLISH INITIATION
### 2.1. Readiness Assessment
When you believe your flagship project has reached a state where it can be proudly shown on a resume, you can begin final polish procedures using the provided checklists and templates.
**Self-Assessment:**
- Review the final polish checklist in the resource library
- Assess your project against the checklist criteria
- Begin addressing items on the checklist independently
**Optional Support:**
- If you would like feedback on project readiness, ask in the #mentee-chat channel
- Programme leadership or community members can provide guidance if requested
- You can proceed independently using the provided resources
## 3. CODE CLEANUP PROCESS
### 3.1. Self-Guided Code Review
**Self-Review Process:**
- Use the comprehensive code review checklist provided in the resource library
- Review your own code systematically against the checklist
- Create issues in your repository for items that need attention
- Address issues independently
**Code Review Checklist Areas:**
- Code quality and maintainability
- Best practices and industry standards
- Security considerations
- Performance optimisation
- Error handling
- Test coverage
- Code organisation and structure
### 3.2. Issue Resolution
**Self-Managed Process:**
- Address issues you identify using the checklist
- Update issues as you resolve them
- Continue until you feel your project meets polish standards
**Optional Review:**
- If you would like feedback on your code cleanup, request a review in Discord
- Programme leadership or community members can provide feedback if requested
- Reviews are optional and available upon request
**Completion Criteria:**
- Project meets quality and polish standards based on your assessment
- Code is ready for professional presentation
- You feel confident showcasing the project on your resume
## 4. DOCUMENTATION REQUIREMENTS
### 4.1. Self-Guided Documentation
Use the provided documentation templates and examples in the resource library to create documentation for your flagship project.
**Documentation Resources:**
- README.md template and examples
- CONTRIBUTING.md template and examples
- LICENSE.md template and guidance
- End user documentation examples
**Optional Support:**
- If you need help with documentation, ask in the #mentee-chat channel
- Programme leadership or community members can provide guidance if requested
- You can proceed independently using the provided templates
### 4.2. Required Documentation Files
**Standard Documentation:**
You should create the following standard documentation files:
**4.2.1 README.md:**
- Provides a high-level overview of the project
- Includes project description, features, and usage instructions
- Contains installation and setup instructions
- Includes contribution guidelines and project information
- Template and examples available in resource library
**4.2.2 CONTRIBUTING.md:**
- Contains instructions for individuals seeking to contribute to the project
- Outlines contribution guidelines and procedures
- Describes development workflow and standards
- Provides information about code review and submission processes
- Template and examples available in resource library
**4.2.3 LICENSE.md:**
- Determines what people can and cannot do with the software
- Specifies licensing terms and conditions
- Must comply with applicable intellectual property requirements
- Should align with project goals and organisational policies
- Template and guidance available in resource library
### 4.3. End User Documentation
**Documentation Approach:**
- Review end user documentation examples in the resource library
- Determine an approach appropriate for your project type and complexity
- Create comprehensive and accessible end user documentation
- Ask for feedback in Discord if you'd like guidance (optional)
## 5. DEPLOYMENT AND HOSTING
### 5.1. Deployment Requirement
**Deployment Goal:**
You should deploy a live version of your application for professional presentation.
### 5.2. Self-Guided Deployment
**Deployment Resources:**
- Deployment guides for common platforms (Vercel, Netlify, Heroku, etc.) are available in the resource library
- Step-by-step tutorials for various hosting providers
- Information about free hosting options
- Deployment checklist and troubleshooting guides
**Deployment Process:**
- Review deployment guides in the resource library
- Select a hosting provider appropriate for your project
- Follow the deployment guide for your chosen platform
- Deploy your application independently
### 5.3. Hosting Provider Selection
**Self-Selection Process:**
- Review hosting provider options in the deployment guides
- Consider project requirements, budget, and scalability needs
- Free hosting options are documented in the resource library
- Paid hosting options may be necessary depending on project requirements
### 5.4. Domain Configuration
**Domain Setup:**
- Domain configuration guides are available in the resource library
- Domains generally require payment
- Free domain options may be available in some cases
- Domain setup is optional but recommended for professional presentation
**Cost Considerations:**
- Domains generally cost money
- Hosting generally costs money
- Free hosting options are documented in the resource library
- Free options may not always be viable depending on project requirements
**Optional Support:**
- If you encounter issues during deployment, ask for help in the #mentee-chat channel
- Programme leadership or community members can provide guidance if requested
- Most deployment can be completed independently using the provided guides
## 6. LIMITATION OF LIABILITY AND DISCLAIMERS
### 6.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, and maximum liability caps are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 6.2. Final Polish Disclaimer
This Documentation establishes final polish procedures and requirements. However:
- Programme leadership reserves the right to modify final polish procedures at any time
- Final polish is a self-guided process using provided checklists and templates
- Final polish does not guarantee specific project outcomes or employment results
- Programme leadership is not responsible for participants' ability to complete final polish procedures
- Individual results may vary based on participant effort, project complexity, and other factors
- Reviews and approvals are optional and available upon request
### 6.3. Hosting and Deployment Disclaimer
Programme leadership provides guidance on hosting and deployment but:
- Does not guarantee availability of free hosting options
- Is not responsible for hosting provider service quality or availability
- Does not assume responsibility for deployment issues or service disruptions
- Recommends that participants review hosting provider terms of service and policies
## 7. CONCLUSION
This Final Polish Documentation establishes the procedures and requirements for final project polish, documentation, and deployment within our Mentorship Programme. All participants must complete these procedures to achieve programme completion standards.
Questions about final polish procedures should be directed to programme leadership through designated communication channels. For comprehensive programme terms and conditions, please refer to our [Mentorship Programme Terms and Conditions](/about/mentorship).
---
*For questions about final polish procedures or programme participation, please contact programme leadership through the designated channels outlined in our Community Code of Conduct.*
:::tip[Helpful Links]
- [Join Discord](https://chat.nhcarrigan.com/) - Select the mentorship role to get started
- [Donate](https://donate.nhcarrigan.com/)
:::
@@ -0,0 +1,220 @@
---
title: 09. Career Prep
---
**ESTABLISHING CAREER PREPARATION PROCEDURES AND REQUIREMENTS FOR MENTORSHIP PROGRAMME PARTICIPANTS**
## 1. INTRODUCTION AND LEGAL FRAMEWORK
### 1.1. Policy Overview
This Career Preparation Documentation (hereinafter referred to as "the Documentation") establishes procedures and requirements for career preparation activities within our Mentorship Programme. This Documentation operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, Mentorship Programme Terms and Conditions, and all applicable legal protections by reference.
### 1.2. Scope and Applicability
This Documentation applies to all participants in our Mentorship Programme who are ready to begin their job search. Career preparation resources and support are available as set forth in this Documentation.
**IMPORTANT: This is a self-guided process. You will use provided resources, templates, and guides to prepare for your job search independently. Support is available upon request, but most activities can be completed using the resource library. For comprehensive information about the self-guided programme structure and how to get the most value from your mentorship experience, please refer to our [Mentorship Programme Terms and Conditions](/about/mentorship).**
## 2. CAREER PREPARATION RESOURCES
### 2.1. Self-Guided Resources
Upon reaching the career preparation stage, you have access to comprehensive resources for various aspects of the job search process as outlined in Sections 3 through 6 of this Documentation.
**Resource Library Includes:**
- Resume templates and examples
- LinkedIn profile optimization guides
- Application writing guides and examples
- Interview preparation resources
- Mock interview question banks
- Job search strategy guides
### 2.2. Optional Support
**On-Demand Assistance:**
- Programme leadership and community members are available to provide assistance when requested
- Support is provided when available, not guaranteed immediately
- You can proceed independently using the provided resources
- Most career preparation activities can be completed using the resource library
## 3. RESUME DEVELOPMENT
### 3.1. Self-Guided Resume Creation
**Resources Available:**
- Resume templates for various career paths (available in resource library)
- Resume examples and best practices guides
- Flagship project presentation examples
- Resume writing tips and strategies
**Self-Guided Process:**
- Use provided templates and examples to create your resume
- Include your flagship project as a demonstration of skills and capabilities
- Review resume best practices guides
- Refine your resume independently
### 3.2. Flagship Project Inclusion
**Important Requirement:**
- Your resume should include the flagship project developed during the Mentorship Programme
- Flagship project serves as a demonstration of skills and capabilities
- Review flagship project presentation examples in the resource library
- Present your project effectively on your resume
**Optional Review:**
- If you would like feedback on your resume, request a review in the #mentee-chat channel
- Programme leadership or community members can provide feedback if requested
- Reviews are optional and available upon request
## 4. LINKEDIN PROFILE PREPARATION
### 4.1. Self-Guided Profile Optimization
**Resources Available:**
- LinkedIn profile optimization guides (available in resource library)
- Profile examples and best practices
- Content templates and suggestions
- Strategic positioning strategies
**Self-Guided Process:**
- Review LinkedIn optimization guides in the resource library
- Optimize your profile to help you stand out
- Strategically position yourself for career success
- Showcase your flagship project and achievements
### 4.2. Profile Optimization Focus Areas
LinkedIn profile preparation should focus on:
- Professional presentation and branding
- Highlighting relevant skills and experience
- Showcasing flagship project and achievements
- Optimizing profile for recruiter visibility
**Optional Review:**
- If you would like feedback on your LinkedIn profile, request a review in the #mentee-chat channel
- Programme leadership or community members can provide feedback if requested
- Reviews are optional and available upon request
## 5. APPLICATION ASSISTANCE
### 5.1. Job Search Resources
**Resources Available:**
- Job search strategy guides (available in resource library)
- Job board recommendations and resources
- Application process guides
- Application writing tips and examples
**Self-Guided Process:**
- Review job search strategy guides in the resource library
- Identify appropriate job opportunities independently
- Use application guides and examples to craft effective applications
- Submit applications independently
### 5.2. Application Content Resources
**Resources Available:**
- Application writing guides and examples (available in resource library)
- Cover letter templates and examples
- Application content tips and strategies
- Common application question examples
**Self-Guided Process:**
- Use provided guides and examples to determine what to say in applications
- Craft effective application materials independently
- Review application content using provided checklists
**Optional Support:**
- If you would like feedback on your applications, request a review in the #mentee-chat channel
- Programme leadership or community members can provide feedback if requested
- Support is limited to guidance and feedback on application content
- You are responsible for submitting your own applications
## 6. INTERVIEW PREPARATION
### 6.1. Self-Guided Interview Preparation
**Resources Available:**
- Interview preparation guides (available in resource library)
- Common interview question banks
- Mock interview question sets
- Interview best practices and tips
- Behavioural interview guides
- Technical interview preparation resources
**Self-Guided Process:**
- Review interview preparation guides in the resource library
- Practice with common interview questions independently
- Use mock interview question sets for practice
- Prepare for real interview scenarios
### 6.2. Optional Mock Interviews
**Mock Interview Availability:**
- Mock interviews are available upon request when programme leadership or community members are available
- Request mock interviews in the #mentee-chat channel
- Mock interviews prepare you for real interview situations
- Feedback and coaching on interview performance may be provided
**Timing:**
- Begin interview preparation when you start applying for jobs
- Request mock interviews when you start landing actual interviews
- Preparation should focus on real interview scenarios you will face
## 7. CONTINUOUS RESOURCES AND SUPPORT
### 7.1. Ongoing Resources
**Resource Availability:**
- Career preparation resources remain available throughout your job search
- Flagship project can be refined and iterated independently
- Resources and support continue to be available as needed
### 7.2. Goal Achievement
**Programme Focus:**
- Programme resources and optional support are available to help you achieve employment
- Combination of self-guided career preparation activities and project refinement
- Goal is to help you reach your career objectives
- You work at your own pace using provided resources
## 8. LIMITATION OF LIABILITY AND DISCLAIMERS
### 8.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, and maximum liability caps are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 8.2. Career Preparation Disclaimer
This Documentation establishes career preparation procedures and resources. However:
- Programme leadership reserves the right to modify career preparation procedures at any time
- Career preparation is primarily self-guided using provided resources
- Career preparation resources and support do not guarantee employment outcomes
- Programme leadership is not responsible for participants' ability to secure employment
- Individual results may vary based on participant effort, market conditions, and other factors
- Support is provided when requested and available, not guaranteed immediately
### 8.3. Employment Outcome Disclaimer
**IMPORTANT: Programme leadership provides career preparation support but does not guarantee:**
- Specific employment outcomes or job placement
- Interview invitations or job offers
- Salary levels or compensation packages
- Employment within any specific timeframe
## 9. CONCLUSION
This Career Preparation Documentation establishes the procedures and support available for career preparation within our Mentorship Programme. Programme leadership will provide comprehensive support to help participants prepare for and succeed in their job search.
Questions about career preparation procedures should be directed to programme leadership through designated communication channels. For comprehensive programme terms and conditions, please refer to our [Mentorship Programme Terms and Conditions](/about/mentorship).
---
*For questions about career preparation procedures or programme participation, please contact programme leadership through the designated channels outlined in our Community Code of Conduct.*
:::tip[Helpful Links]
- [Join Discord](https://chat.nhcarrigan.com/) - Select the mentorship role to get started
- [Donate](https://donate.nhcarrigan.com/)
:::
@@ -0,0 +1,142 @@
---
title: 10. Graduation
---
**ESTABLISHING GRADUATION CRITERIA AND ALUMNI PROGRAMME PROCEDURES FOR MENTORSHIP PROGRAMME PARTICIPANTS**
## 1. INTRODUCTION AND LEGAL FRAMEWORK
### 1.1. Policy Overview
This Graduation Documentation (hereinafter referred to as "the Documentation") establishes graduation criteria, procedures, and alumni programme information for our Mentorship Programme. This Documentation operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, Mentorship Programme Terms and Conditions, and all applicable legal protections by reference.
### 1.2. Scope and Applicability
This Documentation applies to all participants in our Mentorship Programme. Graduation criteria and procedures set forth in this Documentation determine programme completion and transition to alumni status.
**IMPORTANT: Programme completion is determined by achievement of career goals, not completion of specific programme milestones or deadlines.**
## 2. PROGRAMME FLEXIBILITY
### 2.1. Flexible Programme Structure
**Programme Characteristics:**
- Our Mentorship Programme is designed to be highly flexible
- No set deadlines are imposed on participants
- No specific requirements must be completed to "finish the programme"
- Programme structure adapts to individual participant needs and circumstances
### 2.2. Goal-Oriented Approach
**Primary Focus:**
- Programme focuses exclusively on helping participants reach their career goals
- Success is measured by achievement of career objectives, not programme milestones
- Programme structure supports individual learning paths and timelines
## 3. GRADUATION CRITERIA
### 3.1. Graduation Requirement
**Completion Standard:**
Once a participant lands a development job, they have completed the Mentorship Programme and are considered graduated.
### 3.2. Early Graduation
**Flexible Completion:**
- Participants may land a job before completing their flagship project
- Early employment does not prevent programme completion
- Graduation occurs upon job acceptance, regardless of project completion status
### 3.3. Repository Retention
**Repository Ownership:**
- Flagship project repository remains available to participants forever
- Participants may continue working on their project after graduation
- Repository access is not affected by programme completion
### 3.4. Roadmap Completion Status
**Completion Flexibility:**
- Graduation is not dependent on roadmap completion
- Participants may graduate at any point in their roadmap upon job acceptance
- Programme completion is determined solely by employment achievement
## 4. POST-GRADUATION TRANSITION
### 4.1. Programme Removal
**Official Programme Status:**
- Participants will be removed from the official programme upon hiring
- Removal allows space for new participants seeking programme access
- Transition supports programme capacity management and accessibility
### 4.2. Continued Support
**Ongoing Assistance:**
- Programme leadership will continue to provide coaching, advice, and recommendations
- Support continues after graduation on an informal basis
- Formal programme structure ends upon graduation
## 5. ALUMNI PROGRAMME
### 5.1. Alumni Programme Overview
**Programme Availability:**
- Our organisation maintains an alumni programme for graduated participants
- Alumni programme provides continued community engagement opportunities
- Alumni contribute to programme success through mentorship and guidance
### 5.2. Alumni Access and Responsibilities
**Channel Access:**
- Alumni retain access to post in mentorship channels
- Access is provided for coaching and guiding current participants
- Alumni do not receive help with their own development plans
**Leadership Development:**
- Alumni programme focuses on developing leadership skills
- Alumni contribute by coaching and guiding new participants
- Leadership development supports professional growth and community contribution
### 5.3. Public Recognition
**Alumni Listing:**
- Graduated participants are added to our public list of alumni
- Public recognition celebrates participant achievements
- Alumni listing demonstrates programme success and participant outcomes
## 6. LIMITATION OF LIABILITY AND DISCLAIMERS
### 6.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, and maximum liability caps are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 6.2. Graduation Disclaimer
This Documentation establishes graduation criteria and procedures. However:
- Programme leadership reserves the right to modify graduation procedures at any time
- Programme completion does not guarantee specific employment outcomes or career success
- Individual results may vary based on participant effort, market conditions, and other factors
### 6.3. Alumni Programme Disclaimer
**Alumni Programme Terms:**
- Alumni programme participation is subject to programme terms and conditions
- Alumni access and privileges may be modified or revoked at any time
- Alumni programme does not guarantee continued access or specific benefits
## 7. CONCLUSION
This Graduation Documentation establishes the criteria and procedures for programme completion and transition to alumni status. Our Mentorship Programme is designed to be flexible and goal-oriented, with graduation determined by achievement of career objectives rather than completion of specific programme milestones.
Questions about graduation procedures or alumni programme participation should be directed to programme leadership through designated communication channels. For comprehensive programme terms and conditions, please refer to our [Mentorship Programme Terms and Conditions](/about/mentorship).
---
*For questions about graduation procedures or programme participation, please contact programme leadership through the designated channels outlined in our Community Code of Conduct.*
:::tip[Helpful Links]
- [Join Discord](https://chat.nhcarrigan.com/) - Select the mentorship role to get started
- [Donate](https://donate.nhcarrigan.com/)
:::
@@ -0,0 +1,313 @@
---
title: Career Preparation Resources
---
**RESUME TEMPLATES, LINKEDIN GUIDES, APPLICATION GUIDES, INTERVIEW RESOURCES, AND JOB SEARCH STRATEGIES**
## Resume Templates
### Developer Resume Template
```markdown
[Your Name]
[Email] | [Phone] | [LinkedIn] | [GitHub] | [Portfolio]
## Summary
[2-3 sentences describing your experience, skills, and career goals]
## Technical Skills
- **Languages:** [List languages]
- **Frameworks/Libraries:** [List frameworks]
- **Tools:** [List tools]
- **Databases:** [List databases]
- **Other:** [List other relevant skills]
## Projects
### [Project Name]
[Brief description] | [Technologies Used] | [GitHub Link] | [Live Demo]
- [Key achievement or feature]
- [Key achievement or feature]
### [Project Name]
[Brief description] | [Technologies Used] | [GitHub Link] | [Live Demo]
- [Key achievement or feature]
- [Key achievement or feature]
## Experience (if applicable)
### [Job Title]
[Company Name] | [Dates]
- [Achievement or responsibility]
- [Achievement or responsibility]
## Education
[Degree] in [Field]
[Institution] | [Dates]
- [Relevant coursework or achievement]
## Additional Information
- [Certifications, awards, or other relevant information]
```
### Resume Best Practices
**Formatting:**
- Keep it to 1-2 pages
- Use clear, readable fonts
- Use consistent formatting
- Save as PDF for applications
**Content:**
- Tailor resume to each job
- Use action verbs
- Quantify achievements when possible
- Highlight relevant skills and projects
- Include links to GitHub and portfolio
**Flagship Project:**
- Include your mentorship programme flagship project
- Describe technologies used
- Highlight key features
- Include links to code and live demo
## LinkedIn Profile Optimization
### Profile Sections
**Headline:**
- Include your role/title
- Mention key technologies
- Keep it concise and professional
- Example: "Full-Stack Developer | React, Node.js, TypeScript"
**Summary:**
- Write in first person
- Highlight your skills and experience
- Mention your career goals
- Include relevant keywords
- Keep it engaging and authentic
**Experience:**
- List relevant work experience
- Use bullet points for achievements
- Quantify results when possible
- Include technologies used
**Projects:**
- Add your flagship project
- Include project descriptions
- Link to GitHub and live demos
- Highlight technologies and achievements
**Skills:**
- Add relevant technical skills
- Get endorsements from connections
- Keep skills up to date
- Remove outdated skills
**Recommendations:**
- Request recommendations from mentors, colleagues, or collaborators
- Provide recommendations for others
- Keep recommendations relevant and recent
### LinkedIn Best Practices
**Profile:**
- Use professional profile photo
- Customize your LinkedIn URL
- Keep profile updated
- Engage with content regularly
**Networking:**
- Connect with industry professionals
- Join relevant groups
- Engage with posts and discussions
- Share your own content
**Content:**
- Share project updates
- Write articles about your learning journey
- Comment on others' posts
- Build your professional brand
## Application Writing Guides
### Cover Letter Template
```markdown
[Your Name]
[Email] | [Phone] | [LinkedIn]
[Date]
[Hiring Manager Name]
[Company Name]
[Company Address]
Dear [Hiring Manager Name],
I am writing to express my interest in the [Position Title] position at [Company Name]. [1-2 sentences about why you're interested in the company/role].
[Paragraph about your relevant experience and skills, specifically mentioning your flagship project and technologies used].
[Paragraph about what you can contribute to the company and why you're a good fit].
I am excited about the opportunity to contribute to [Company Name] and would welcome the chance to discuss how my skills and experience align with your needs.
Thank you for your consideration.
Sincerely,
[Your Name]
```
### Application Best Practices
**Tailoring:**
- Customize each application
- Match keywords from job description
- Highlight relevant experience
- Show enthusiasm for the role
**Research:**
- Research the company
- Understand the role
- Learn about company culture
- Find connections at the company
**Follow-Up:**
- Send thank-you emails after interviews
- Follow up if you don't hear back
- Be professional and respectful
- Don't be pushy
## Interview Preparation Resources
### Common Interview Questions
**Technical Questions:**
- Explain [technology/concept]
- How would you implement [feature]?
- What's the difference between [X] and [Y]?
- How do you handle [scenario]?
**Behavioural Questions:**
- Tell me about yourself
- Why do you want to work here?
- Describe a challenging project
- How do you handle conflict?
- Where do you see yourself in 5 years?
**Project Questions:**
- Walk me through your flagship project
- What challenges did you face?
- What would you do differently?
- How did you approach [specific aspect]?
### Interview Preparation Tips
**Before the Interview:**
- Research the company and role
- Review your resume and projects
- Prepare questions to ask
- Practice common questions
- Prepare examples of your work
**During the Interview:**
- Be confident and authentic
- Listen carefully to questions
- Think before answering
- Ask clarifying questions
- Show enthusiasm
**After the Interview:**
- Send thank-you email
- Reflect on the experience
- Follow up if appropriate
- Continue applying to other positions
### Mock Interview Questions
**Technical:**
- Explain how the internet works
- What is REST?
- Explain authentication vs authorization
- How do you debug code?
- What is your approach to testing?
**Behavioural:**
- Tell me about a time you overcame a challenge
- Describe a project you're proud of
- How do you handle tight deadlines?
- Tell me about a time you worked in a team
- How do you stay current with technology?
## Job Search Strategy Guides
### Job Search Platforms
**General Platforms:**
- LinkedIn Jobs
- Indeed
- Glassdoor
- Monster
- ZipRecruiter
**Tech-Specific Platforms:**
- GitHub Jobs
- Stack Overflow Jobs
- AngelList
- Hacker News "Who's Hiring"
- Remote-specific: Remote.co, We Work Remotely
### Job Search Strategy
**Networking:**
- Attend meetups and conferences
- Join online communities
- Connect with industry professionals
- Reach out to people at target companies
**Application Strategy:**
- Apply to multiple positions
- Tailor each application
- Follow up appropriately
- Track your applications
**Portfolio:**
- Keep portfolio updated
- Showcase your best work
- Include your flagship project
- Make it easy to navigate
**Continuous Learning:**
- Keep learning new technologies
- Build new projects
- Contribute to open source
- Stay current with industry trends
### Job Search Timeline
**Week 1-2:**
- Update resume and LinkedIn
- Prepare portfolio
- Research target companies
- Start applying
**Week 3-4:**
- Continue applying
- Network actively
- Prepare for interviews
- Practice interview questions
**Ongoing:**
- Maintain application pipeline
- Continue learning
- Build new projects
- Stay positive and persistent
---
*Career preparation is an ongoing process. Use these resources to build a strong professional presence and prepare for job opportunities.*
@@ -0,0 +1,197 @@
---
title: Code Development Resources
---
**CODE REVIEW CHECKLIST, SELF-REVIEW GUIDELINES, AND BEST PRACTICES**
## Code Review Checklist
See [Code Review Checklist](/mentorship/resources/code-review-checklist) for the comprehensive self-review checklist.
## Self-Review Guidelines
### Before Requesting a Review
**Self-Review Process:**
1. Review your code against the checklist
2. Run all tests and ensure they pass
3. Check for obvious bugs or issues
4. Ensure code follows style guide
5. Verify functionality works as expected
6. Check for security concerns
7. Review documentation and comments
### Self-Review Questions
**Code Quality:**
- Is my code readable and well-organised?
- Are variable and function names clear?
- Is the code properly commented?
- Does the code follow project conventions?
**Functionality:**
- Does the code work as intended?
- Are edge cases handled?
- Is error handling appropriate?
- Is input validation in place?
**Testing:**
- Are tests written and passing?
- Is test coverage adequate?
- Do tests actually test behaviour?
**Security:**
- Is sensitive data protected?
- Is input validated and sanitized?
- Are authentication/authorization checks in place?
## Development Best Practices
### Code Quality
**Readability:**
- Use clear, descriptive names
- Keep functions focused and small
- Write self-documenting code
- Add comments for complex logic
**Organisation:**
- Follow project structure conventions
- Group related code together
- Separate concerns appropriately
- Use consistent formatting
**Maintainability:**
- Write code that's easy to modify
- Avoid unnecessary complexity
- Follow DRY (Don't Repeat Yourself)
- Refactor when needed
### Git Practices
**Commit Messages:**
- Write clear, descriptive commit messages
- Use present tense ("Add feature" not "Added feature")
- Reference issue numbers when applicable
- Keep commits focused and atomic
**Branching:**
- Create branches for each feature/user story
- Use descriptive branch names
- Keep branches up to date
- Clean up merged branches
**Pull Requests:**
- Write clear PR descriptions
- Link related issues
- Keep PRs focused and reasonably sized
- Request reviews when needed
### Testing
**Test Coverage:**
- Write tests for new functionality
- Test edge cases and error scenarios
- Maintain good test coverage
- Keep tests maintainable
**Test Types:**
- **Unit Tests:** Test individual functions/methods
- **Integration Tests:** Test component interactions
- **E2E Tests:** Test user workflows (if applicable)
### Security
**Best Practices:**
- Never commit secrets or sensitive data
- Use environment variables for configuration
- Validate and sanitize all user input
- Implement proper authentication/authorization
- Keep dependencies up to date
- Follow security best practices for your stack
### Performance
**Optimisation:**
- Profile before optimising
- Optimise database queries
- Minimize API calls
- Use caching where appropriate
- Optimise assets (images, CSS, JS)
### Documentation
**Code Documentation:**
- Comment complex logic
- Document function parameters and returns
- Keep comments up to date
- Write self-documenting code when possible
**Project Documentation:**
- Keep README updated
- Document setup and installation
- Document API endpoints (if applicable)
- Document deployment process
## Common Pitfalls to Avoid
### Code Quality Issues
**Overly complex code:** Keep it simple
**Poor naming:** Use descriptive names
**Large functions:** Break them down
**Code duplication:** Refactor to DRY
**Commented-out code:** Remove it
### Git Issues
**Vague commit messages:** Be specific
**Large commits:** Make smaller, focused commits
**Mixing concerns:** One concern per commit
**Forgetting to pull:** Keep branches updated
### Testing Issues
**No tests:** Always write tests
**Weak tests:** Test actual behaviour
**Ignoring failing tests:** Fix them
**Testing implementation:** Test behaviour
### Security Issues
**Hardcoded secrets:** Use environment variables
**No input validation:** Always validate
**Outdated dependencies:** Keep updated
**Ignoring security warnings:** Address them
## Development Workflow
### Daily Workflow
1. **Pull latest changes** from main branch
2. **Create feature branch** for your work
3. **Write code** following best practices
4. **Write tests** for new functionality
5. **Run tests** and ensure they pass
6. **Self-review** your code
7. **Commit changes** with clear messages
8. **Push to remote** regularly
9. **Create PR** when feature is complete
10. **Request review** if desired (optional)
### Feature Development
1. **Understand requirements** from user story
2. **Review technical breakdown** if available
3. **Plan implementation** approach
4. **Set up** necessary components/modules
5. **Implement** feature incrementally
6. **Test** as you go
7. **Refactor** when needed
8. **Document** as appropriate
9. **Review** before submitting
---
*Following best practices helps you write better code, work more efficiently, and maintain high quality standards.*
@@ -0,0 +1,81 @@
---
title: Code Review Checklist
---
**SELF-REVIEW CHECKLIST FOR CODE QUALITY**
Use this checklist to review your own code before merging pull requests or when preparing for optional code reviews.
## Code Quality
- [ ] Code follows project style guide and conventions
- [ ] Code is readable and well-organised
- [ ] Variable and function names are clear and descriptive
- [ ] Code is properly commented where necessary
- [ ] No commented-out code or debugging statements left in
- [ ] Code follows DRY (Don't Repeat Yourself) principles
- [ ] Functions and methods are appropriately sized and focused
## Functionality
- [ ] Code implements the intended feature correctly
- [ ] Edge cases are handled appropriately
- [ ] Error handling is implemented where needed
- [ ] User input is validated and sanitized
- [ ] Code handles null/undefined values appropriately
## Testing
- [ ] Unit tests are written and passing
- [ ] Integration tests are written and passing (if applicable)
- [ ] Test coverage is adequate for new functionality
- [ ] Tests are meaningful and test actual behavior
- [ ] All tests pass before submitting
## Security
- [ ] No sensitive data is hardcoded or exposed
- [ ] Authentication and authorization are properly implemented (if applicable)
- [ ] Input validation prevents injection attacks
- [ ] Dependencies are up to date and secure
- [ ] Security best practices are followed
## Performance
- [ ] Code performs efficiently
- [ ] No obvious performance bottlenecks
- [ ] Database queries are optimized (if applicable)
- [ ] Unnecessary computations are avoided
## Documentation
- [ ] Code is self-documenting with clear naming
- [ ] Complex logic is explained with comments
- [ ] README is updated if needed
- [ ] API documentation is updated if applicable
## Git Practices
- [ ] Commit messages are clear and descriptive
- [ ] Commits are appropriately sized
- [ ] Branch name follows naming conventions
- [ ] Pull request description explains changes clearly
- [ ] Related issues are linked in PR description
## Accessibility (if applicable)
- [ ] UI components are accessible
- [ ] ARIA labels are used where appropriate
- [ ] Keyboard navigation works
- [ ] Screen reader compatibility is considered
## Browser/Platform Compatibility (if applicable)
- [ ] Code works across target browsers/platforms
- [ ] Responsive design is implemented (if applicable)
- [ ] Cross-browser testing is done (if applicable)
---
*This checklist is a starting point. Customize it based on your project's specific requirements and standards.*
@@ -0,0 +1,103 @@
---
title: Final Polish Checklist
---
**COMPREHENSIVE CHECKLIST FOR PROJECT FINAL POLISH**
Use this checklist to ensure your flagship project is ready for professional presentation.
## Code Quality
- [ ] All code follows project style guide
- [ ] Code is clean, readable, and well-organised
- [ ] No commented-out code or debugging statements
- [ ] Error handling is comprehensive
- [ ] Code is properly commented where necessary
- [ ] All functions and methods are appropriately sized
## Testing
- [ ] Comprehensive test coverage
- [ ] All tests are passing
- [ ] Tests are meaningful and test actual behavior
- [ ] Edge cases are covered by tests
- [ ] CI/CD pipeline is configured and passing
## Documentation
- [ ] README.md is complete and professional
- [ ] Project description
- [ ] Features list
- [ ] Installation instructions
- [ ] Usage instructions
- [ ] Screenshots or demo links (if applicable)
- [ ] Technology stack
- [ ] Contributing guidelines link
- [ ] CONTRIBUTING.md is complete
- [ ] Development setup instructions
- [ ] Code style guidelines
- [ ] Pull request process
- [ ] Testing requirements
- [ ] LICENSE.md is present and appropriate
- [ ] Code comments are clear and helpful
- [ ] API documentation is complete (if applicable)
## Security
- [ ] No sensitive data in code or configuration
- [ ] Environment variables are used for secrets
- [ ] Dependencies are up to date
- [ ] Security best practices are followed
- [ ] Authentication/authorization is properly implemented (if applicable)
## Deployment
- [ ] Application is deployed and live
- [ ] Deployment is automated (CI/CD)
- [ ] Environment variables are properly configured
- [ ] Application is accessible and functional
- [ ] Domain is configured (optional but recommended)
## User Experience (if applicable)
- [ ] Application is intuitive and easy to use
- [ ] Error messages are clear and helpful
- [ ] Loading states are handled appropriately
- [ ] Responsive design works on all screen sizes
- [ ] Accessibility standards are met
## Performance
- [ ] Application loads quickly
- [ ] No obvious performance bottlenecks
- [ ] Database queries are optimized (if applicable)
- [ ] Images and assets are optimized
- [ ] Caching is implemented where appropriate
## Project Organization
- [ ] Repository structure is clean and logical
- [ ] Files are properly organised
- [ ] Git history is clean and meaningful
- [ ] Issues are properly labelled and organised
- [ ] Project board is organised (if used)
## Professional Presentation
- [ ] Project can be confidently shown on resume
- [ ] Project demonstrates relevant skills
- [ ] Project solves a real problem or demonstrates capability
- [ ] Code quality reflects professional standards
- [ ] Documentation is professional and complete
## Final Review
- [ ] All checklist items are completed
- [ ] Project is ready for portfolio/resume presentation
- [ ] You feel confident showcasing this project
- [ ] Optional: Request feedback from community or programme leadership
---
*This checklist is comprehensive. Work through it systematically to ensure your project is polished and professional.*
@@ -0,0 +1,273 @@
---
title: Final Polish Resources
---
**FINAL POLISH CHECKLIST, CODE CLEANUP GUIDELINES, DOCUMENTATION TEMPLATES, AND DEPLOYMENT GUIDES**
## Final Polish Checklist
See [Final Polish Checklist](/mentorship/resources/final-polish-checklist) for the comprehensive checklist.
## Code Cleanup Guidelines
### Code Review and Refactoring
**Review Your Code:**
- Remove commented-out code
- Remove debugging statements
- Remove unused imports/variables
- Simplify complex logic
- Improve variable/function names
- Add missing comments
- Fix code style inconsistencies
### Code Organisation
**Structure:**
- Organise files logically
- Group related functionality
- Separate concerns appropriately
- Follow project conventions
- Remove duplicate code
### Performance Optimisation
**Optimise:**
- Database queries
- API calls
- Asset loading
- Rendering performance
- Memory usage
### Error Handling
**Improve:**
- Add comprehensive error handling
- Provide meaningful error messages
- Handle edge cases
- Add validation where needed
- Improve user feedback
## Documentation Templates
### README.md Template
```markdown
# [Project Name]
[Brief description of what the project does]
## Features
- Feature 1
- Feature 2
- Feature 3
## Technologies Used
- Technology 1
- Technology 2
- Technology 3
## Getting Started
### Prerequisites
- Prerequisite 1
- Prerequisite 2
### Installation
\`\`\`bash
# Installation steps
npm install
\`\`\`
### Usage
\`\`\`bash
# Usage instructions
npm start
\`\`\`
## Project Structure
\`\`\`
project/
├── src/
├── tests/
└── docs/
\`\`\`
## Contributing
See [CONTRIBUTING.md](CONTRIBUTING.md) for contribution guidelines.
## License
See [LICENSE.md](LICENSE.md) for license information.
## Contact
[Your contact information]
```
### CONTRIBUTING.md Template
```markdown
# Contributing to [Project Name]
Thank you for your interest in contributing!
## Development Setup
### Prerequisites
- Prerequisite 1
- Prerequisite 2
### Setup Steps
1. Fork the repository
2. Clone your fork
3. Install dependencies
4. Create a branch for your changes
## Code Style
- Follow project style guide
- Use consistent formatting
- Write clear, readable code
## Testing
- Write tests for new features
- Ensure all tests pass
- Maintain test coverage
## Pull Request Process
1. Create a feature branch
2. Make your changes
3. Write/update tests
4. Update documentation
5. Submit pull request
6. Address review feedback
## Questions?
[Contact information or link to discussions]
```
### LICENSE.md Template
**Common Licenses:**
- **MIT License:** Permissive, allows commercial use
- **Apache 2.0:** Permissive with patent protection
- **GPL v3:** Copyleft, requires derivative works to be open source
- **BSD 3-Clause:** Permissive with attribution requirement
**Choose a license appropriate for your project.** You can find license templates at [choosealicense.com](https://choosealicense.com/).
## Deployment Guides
### Vercel Deployment (Front-End)
**Steps:**
1. Create account at [vercel.com](https://vercel.com)
2. Import your GitHub repository
3. Configure build settings
4. Add environment variables
5. Deploy
**Configuration:**
- Build command: `npm run build`
- Output directory: `dist` or `build`
- Install command: `npm install`
### Netlify Deployment (Front-End)
**Steps:**
1. Create account at [netlify.com](https://netlify.com)
2. Import your GitHub repository
3. Configure build settings
4. Add environment variables
5. Deploy
**Configuration:**
- Build command: `npm run build`
- Publish directory: `dist` or `build`
### Railway Deployment (Back-End)
**Steps:**
1. Create account at [railway.app](https://railway.app)
2. Create new project
3. Connect GitHub repository
4. Configure environment variables
5. Deploy
**Configuration:**
- Start command: `npm start` or `node server.js`
- Build command: `npm install`
### Heroku Deployment (Full-Stack)
**Steps:**
1. Create account at [heroku.com](https://heroku.com)
2. Install Heroku CLI
3. Create Heroku app
4. Configure environment variables
5. Deploy
**Configuration:**
- Procfile: `web: node server.js`
- Environment variables in Heroku dashboard
### Render Deployment
**Steps:**
1. Create account at [render.com](https://render.com)
2. Create new service
3. Connect GitHub repository
4. Configure build and start commands
5. Add environment variables
6. Deploy
**Configuration:**
- Build command: `npm install`
- Start command: `npm start`
## Domain Configuration
### Setting Up Custom Domain
**General Steps:**
1. Purchase domain from registrar
2. Configure DNS records
3. Add domain to hosting provider
4. Update SSL certificate
5. Verify domain ownership
**DNS Configuration:**
- Add A record pointing to hosting IP
- Add CNAME record for subdomains
- Configure SSL/TLS certificates
## Deployment Checklist
- [ ] Application is tested and working locally
- [ ] Environment variables are configured
- [ ] Database is set up (if applicable)
- [ ] Build process works correctly
- [ ] Deployment platform is configured
- [ ] Domain is configured (optional)
- [ ] SSL certificate is active
- [ ] Application is accessible and functional
- [ ] Error monitoring is set up (optional)
- [ ] Analytics are configured (optional)
---
*Proper documentation and deployment make your project professional and accessible. Take time to polish these aspects.*
@@ -0,0 +1,187 @@
---
title: Goal Setting Resources
---
**ROADMAP TEMPLATES AND GOAL-SETTING RESOURCES**
## Roadmap Templates
### Front-End Developer Roadmap
**Weeks 1-4: Foundations**
- HTML/CSS fundamentals
- JavaScript basics
- Responsive design principles
- Version control (Git/GitHub)
- Project: Build a responsive landing page
**Weeks 5-8: Frameworks & Libraries**
- Learn a front-end framework (React, Vue, or Angular)
- Component-based architecture
- State management basics
- Build tools (Webpack, Vite, etc.)
- Project: Build a single-page application
**Weeks 9-12: Advanced Topics**
- API integration
- Testing (Jest, React Testing Library)
- Performance optimization
- Accessibility (WCAG guidelines)
- Project: Build a full-featured front-end application
### Back-End Developer Roadmap
**Weeks 1-4: Foundations**
- Choose a language (Node.js, Python, Java, etc.)
- Database fundamentals (SQL)
- RESTful API design
- Version control (Git/GitHub)
- Project: Build a simple API
**Weeks 5-8: Advanced Back-End**
- Database design and optimization
- Authentication and authorization
- API security best practices
- Error handling and logging
- Project: Build a secure API with authentication
**Weeks 9-12: Production-Ready Skills**
- Testing (unit, integration, e2e)
- Deployment and DevOps basics
- Caching strategies
- Performance optimization
- Project: Build a production-ready back-end system
### Full-Stack Developer Roadmap
**Weeks 1-4: Foundations**
- Front-end basics (HTML, CSS, JavaScript)
- Back-end basics (choose a stack)
- Database fundamentals
- Version control
- Project: Build a simple full-stack application
**Weeks 5-8: Integration**
- Connect front-end and back-end
- API design and consumption
- Authentication flow
- State management
- Project: Build an authenticated full-stack app
**Weeks 9-12: Advanced Full-Stack**
- Testing across the stack
- Deployment pipeline
- Performance optimization
- Security best practices
- Project: Build a production-ready full-stack application
### Mobile Developer Roadmap
**Weeks 1-4: Foundations**
- Choose platform (iOS/Swift, Android/Kotlin, or React Native/Flutter)
- Platform-specific fundamentals
- UI/UX principles for mobile
- Version control
- Project: Build a simple mobile app
**Weeks 5-8: Advanced Mobile**
- Navigation and routing
- State management
- API integration
- Platform-specific features
- Project: Build a feature-rich mobile app
**Weeks 9-12: Production Skills**
- Testing mobile applications
- App store deployment
- Performance optimization
- Push notifications
- Project: Build and deploy a mobile application
### Game Developer Roadmap
**Weeks 1-4: Foundations**
- Choose game engine (Unity, Unreal, Godot, etc.)
- Game design fundamentals
- Basic scripting
- Version control
- Project: Build a simple game prototype
**Weeks 5-8: Game Development**
- Game mechanics implementation
- Asset integration
- Physics and collision detection
- User input handling
- Project: Build a playable game
**Weeks 9-12: Polish & Deployment**
- UI/UX for games
- Sound and music integration
- Performance optimization
- Game deployment
- Project: Polish and deploy a complete game
## Customizing Your Roadmap
### Self-Assessment Questions
1. **What is your current skill level?**
- Complete beginner
- Some experience with programming
- Intermediate level
- Advanced in some areas
2. **How much time can you commit per week?**
- 5-10 hours
- 10-20 hours
- 20+ hours
3. **What are your learning preferences?**
- Prefer structured learning
- Prefer project-based learning
- Mix of both
4. **What are your career goals?**
- Specific role you're targeting
- Industries you're interested in
- Types of projects you want to work on
### Roadmap Customization Tips
- **Adjust timelines** based on your available time
- **Add or remove topics** based on your goals
- **Focus on areas** where you need the most improvement
- **Include projects** that interest you
- **Update regularly** as you learn and grow
## Roadmap Examples
### Example: Customized Front-End Roadmap
**Weeks 1-3: HTML/CSS Deep Dive**
- Advanced CSS (Grid, Flexbox, animations)
- CSS preprocessors (Sass)
- Project: Build a complex landing page
**Weeks 4-6: JavaScript Mastery**
- ES6+ features
- Async programming
- DOM manipulation
- Project: Build an interactive web app
**Weeks 7-9: React Framework**
- React fundamentals
- Hooks and context
- Routing
- Project: Build a React application
**Weeks 10-12: Production Skills**
- Testing
- Performance optimization
- Deployment
- Project: Polish and deploy React app
---
*These templates are starting points. Customize them to fit your individual needs, timeline, and goals.*
@@ -0,0 +1,212 @@
---
title: Priority and Effort Resources
---
**PRIORITY ASSIGNMENT AND EFFORT ESTIMATION GUIDES**
## Priority Assignment Guide
### Understanding Priority
**Priority is based on dependencies, not personal preference.**
Priority determines the order in which user stories should be completed based on:
- Which stories block other stories
- Which stories must be completed first
- Logical sequence requirements
### Priority Assignment Process
#### Step 1: Identify Dependencies
**Questions to Ask:**
- Which stories must be completed before others can start?
- Which stories block multiple other stories?
- What is the logical sequence of feature development?
**Example:**
- Authentication must be completed before user-specific features
- Database models must exist before features that use them
- Core features must exist before advanced features
#### Step 2: Map Dependencies
**Create a dependency map:**
- List all user stories
- Identify which stories depend on others
- Identify which stories block others
- Create a dependency graph
#### Step 3: Assign Priority Levels
**Priority Levels:**
- **High Priority:** Blocks multiple other stories or is foundational
- **Medium Priority:** Blocked by high priority, may block some stories
- **Low Priority:** Blocked by other stories, doesn't block others
### Priority Example
**User Stories:**
1. As an unauthenticated user, I can create an account
2. As an authenticated user, I can view my profile
3. As an authenticated user, I can edit my profile
4. As an authenticated user, I can create a post
5. As a user, I can view posts from other users
**Dependency Analysis:**
- Story 1 blocks stories 2, 3, and 4 (authentication required)
- Story 2 blocks story 3 (must view before editing)
- Story 4 blocks story 5 (must create before viewing)
- Stories 2 and 4 don't block each other
**Priority Assignment:**
- **High:** Story 1 (blocks multiple stories)
- **Medium:** Stories 2 and 4 (blocked by 1, but don't block each other)
- **Low:** Stories 3 and 5 (blocked by other stories)
## Effort Estimation Guide
### Understanding Effort
**Effort represents the amount of work required to complete a story.**
Effort helps you:
- Plan your work timeline
- Balance high-priority tasks with available time
- Estimate project completion
- Make informed decisions about task selection
### Effort Estimation Methods
#### Story Points
**Common Scales:**
- **Fibonacci:** 1, 2, 3, 5, 8, 13, 21
- **T-Shirt Sizes:** XS, S, M, L, XL
- **Linear:** 1, 2, 3, 4, 5
**Story Point Guidelines:**
- **1-2 points:** Simple, straightforward tasks
- **3-5 points:** Moderate complexity, some unknowns
- **8-13 points:** Complex, multiple components, significant unknowns
- **21+ points:** Very complex, should be broken down
#### Time-Based Estimation
**Time Estimates:**
- **Small:** 1-4 hours
- **Medium:** 4-16 hours
- **Large:** 16-40 hours
- **Very Large:** 40+ hours (consider breaking down)
### Effort Estimation Factors
**Consider:**
- **Complexity:** How complex is the implementation?
- **Uncertainty:** How much is unknown?
- **Dependencies:** Are dependencies clear and available?
- **Scope:** How much work is involved?
- **Risk:** What could go wrong?
### Effort Example
**User Stories with Effort Estimates:**
1. **Create account (5 points):** Building entire authentication flow is complex
2. **View profile (3 points):** Moderate complexity, needs API and UI
3. **Edit profile (3 points):** Similar to view, plus update logic
4. **Create post (5 points):** Complex with validation, API, UI
5. **View posts (1 point):** Simple display of existing data
## Label Examples
### Priority Labels
**Option 1: Text Labels**
- `priority: high`
- `priority: medium`
- `priority: low`
**Option 2: Numbered**
- `priority: 1` (highest)
- `priority: 2`
- `priority: 3` (lowest)
**Option 3: Descriptive**
- `priority: critical`
- `priority: important`
- `priority: nice-to-have`
### Effort Labels
**Option 1: Story Points**
- `effort: 1`
- `effort: 2`
- `effort: 3`
- `effort: 5`
- `effort: 8`
- `effort: 13`
**Option 2: T-Shirt Sizes**
- `effort: xs`
- `effort: s`
- `effort: m`
- `effort: l`
- `effort: xl`
**Option 3: Time-Based**
- `effort: small` (1-4 hours)
- `effort: medium` (4-16 hours)
- `effort: large` (16-40 hours)
## Best Practices
### Priority Best Practices
✅ Base priority on dependencies, not interest
✅ Review dependencies carefully
✅ Update priorities as dependencies change
✅ Consider blocking relationships
❌ Don't prioritize based on what's most fun
❌ Don't prioritize based on excitement level
❌ Don't ignore dependencies
### Effort Best Practices
✅ Be honest about complexity
✅ Consider unknowns and risks
✅ Break down large stories
✅ Review estimates after completion to improve
❌ Don't underestimate complex tasks
❌ Don't overestimate simple tasks
❌ Don't ignore your own skill level
## Combining Priority and Effort
### Work Planning Strategy
**When you have limited time:**
- Choose high-priority, low-effort tasks first
- This allows progress even with time constraints
**When you have more time:**
- Tackle high-priority, high-effort tasks
- These are often foundational and important
**Example Decision Matrix:**
| Priority | Effort | Action |
|----------|--------|--------|
| High | Low | Do first |
| High | High | Do when you have time |
| Medium | Low | Good for quick wins |
| Medium | High | Plan for dedicated time |
| Low | Low | Do when caught up |
| Low | High | Consider breaking down |
---
*Priority and effort help you plan and execute work effectively. Use them together to make informed decisions about what to work on.*
@@ -0,0 +1,200 @@
---
title: Project Planning Resources
---
**PROJECT PLAN EXAMPLES AND BRAINSTORMING GUIDES**
## Project Plan Example
### Example: Task Management Application
**Project Overview:**
A full-stack task management application that allows users to create, organise, and track tasks with features like kanban boards, task dependencies, and project rewards.
**Core Features:**
1. User authentication and authorization
2. Task creation and management
3. Kanban board view
4. Task dependencies
5. Project organisation
6. Reward system for completed projects
7. Gamification elements (optional)
**Technical Stack:**
- Front-end: React with TypeScript
- Back-end: Node.js with Express
- Database: PostgreSQL
- Authentication: JWT
- Deployment: Vercel (front-end), Railway (back-end)
**Project Structure:**
- User authentication system
- Task CRUD operations
- Project management
- Kanban board interface
- Dependency tracking
- Reward system
- Gamification features
**Timeline:**
- Weeks 1-2: Setup and authentication
- Weeks 3-4: Core task functionality
- Weeks 5-6: Kanban board and views
- Weeks 7-8: Dependencies and projects
- Weeks 9-10: Reward system
- Weeks 11-12: Gamification and polish
## Project Idea Brainstorming Guide
### Step 1: Identify Your Interests
**Questions to Ask:**
- What problems do you encounter in your daily life?
- What tools or applications do you wish existed?
- What hobbies or interests do you have?
- What industries are you curious about?
**Examples:**
- Daily life: Meal planning, expense tracking, habit tracking
- Tools: Code snippet manager, design asset organiser
- Hobbies: Music playlist creator, workout tracker, recipe manager
- Industries: Healthcare apps, education tools, productivity software
### Step 2: Define the Problem
**Problem Statement Template:**
"As a [user type], I need [what they need] because [why they need it]."
**Example:**
"As a developer, I need a way to organise and quickly access my code snippets because I waste time searching through notes and documentation."
### Step 3: Identify Core Features
**Feature Brainstorming:**
- What are the essential features (MVP)?
- What features would be nice to have?
- What features are stretch goals?
**MVP Features:**
- Core functionality that solves the main problem
- User authentication (if needed)
- Basic CRUD operations
- Essential UI/UX
**Nice-to-Have Features:**
- Advanced functionality
- Additional views or interfaces
- Integration with other services
- Advanced customization
**Stretch Goals:**
- Gamification
- Social features
- Advanced analytics
- Mobile apps
### Step 4: Choose Your Tech Stack
**Considerations:**
- What technologies align with your career goals?
- What technologies are you learning?
- What technologies are in demand for your target roles?
- What technologies interest you?
**Common Stacks:**
- **MERN:** MongoDB, Express, React, Node.js
- **PERN:** PostgreSQL, Express, React, Node.js
- **MEVN:** MongoDB, Express, Vue, Node.js
- **Django/Flask + React:** Python back-end, React front-end
- **Ruby on Rails + React:** Ruby back-end, React front-end
### Step 5: Plan Your Project Structure
**Project Components:**
- Authentication system
- Core feature modules
- Database schema
- API endpoints
- Front-end components
- Testing strategy
- Deployment plan
## Project Planning Template
```markdown
# [Project Name]
## Project Overview
[Brief description of what the project does and why it exists]
## Problem Statement
[What problem does this solve? Who is it for?]
## Core Features (MVP)
1. [Feature 1]
2. [Feature 2]
3. [Feature 3]
## Nice-to-Have Features
1. [Feature 1]
2. [Feature 2]
## Stretch Goals
1. [Feature 1]
2. [Feature 2]
## Technical Stack
- Front-end: [Technology]
- Back-end: [Technology]
- Database: [Technology]
- Other: [Technologies]
## Project Structure
- [Component/Module 1]
- [Component/Module 2]
- [Component/Module 3]
## Timeline
- Week 1-2: [Milestone]
- Week 3-4: [Milestone]
- Week 5-6: [Milestone]
- Week 7-8: [Milestone]
- Week 9-10: [Milestone]
- Week 11-12: [Milestone]
## Success Criteria
- [ ] [Criterion 1]
- [ ] [Criterion 2]
- [ ] [Criterion 3]
```
## Additional Project Ideas
### Beginner-Friendly Projects
- Todo list application
- Weather app
- Calculator
- Quiz application
- Blog platform
- Recipe finder
### Intermediate Projects
- E-commerce site
- Social media platform
- Project management tool
- Chat application
- Expense tracker
- Learning management system
### Advanced Projects
- Real-time collaboration tool
- Video streaming platform
- Marketplace application
- Analytics dashboard
- AI-powered application
- Blockchain-based application
---
*Use these examples and templates as starting points. The best projects solve real problems and demonstrate your skills effectively.*
@@ -0,0 +1,246 @@
---
title: Technical Breakdown Resources
---
**TECHNICAL BREAKDOWN TEMPLATE AND EXAMPLES**
## Technical Breakdown Template
Copy this template into each user story issue:
```markdown
## 🎯 Acceptance Criteria
- [ ] Criteria 1 (clear, testable condition)
- [ ] Criteria 2
- [ ] Criteria 3
---
## ⚙️ Technical Details
- Proposed implementation approach:
- [ ] e.g., API endpoint, UI component, database schema changes
- Data considerations:
- [ ] Models, validation, storage needs
- Security/permissions:
- [ ] Any auth or role checks?
---
## 🔗 Dependencies
- [ ] Related tickets or features
- [ ] External services or APIs
- [ ] Libraries or frameworks required
---
## 🧪 Testing Notes
- [ ] Unit tests to cover…
- [ ] Integration tests to cover…
- [ ] Manual QA steps…
---
## 📂 Additional Context
- Links to designs, diagrams, or docs
- Any constraints or assumptions
- Open questions / things to clarify
```
## Technical Breakdown Example
### Example User Story
**User Story:** As an authenticated user, I should be able to add a game to my library.
### Completed Technical Breakdown
```markdown
## 🎯 Acceptance Criteria
- [ ] User can add game to library via API endpoint
- [ ] User can view games in their library
- [ ] User can remove game from library
- [ ] User cannot add duplicate games to library
- [ ] Only authenticated users can modify their library
---
## ⚙️ Technical Details
- Proposed implementation approach:
- [ ] POST /api/library endpoint to add game
- [ ] GET /api/library endpoint to retrieve user's library
- [ ] DELETE /api/library/:gameId endpoint to remove game
- [ ] Front-end component to display library
- [ ] Front-end component with add/remove buttons
- Data considerations:
- [ ] User model must have library property (array of game IDs)
- [ ] Each game ID references a Game model record
- [ ] Validate game ID exists before adding
- [ ] Prevent duplicate entries in library array
- [ ] Consider pagination for large libraries
- Security/permissions:
- [ ] Validate JWT token on all endpoints
- [ ] Ensure authenticated user can only modify their own library
- [ ] Validate game ID to prevent invalid references
- [ ] Rate limiting to prevent abuse
---
## 🔗 Dependencies
- [ ] #2 - User authentication must be implemented first
- [ ] #5 - Game model must exist
- [ ] #8 - Profile UI necessary to access library view
- [ ] JWT authentication library
- [ ] Express middleware for JWT validation
---
## 🧪 Testing Notes
- [ ] Unit tests:
- [ ] POST endpoint adds game to library
- [ ] POST endpoint prevents duplicates
- [ ] GET endpoint returns user's library
- [ ] DELETE endpoint removes game from library
- [ ] Endpoints reject unauthenticated requests
- [ ] Endpoints prevent users from modifying other users' libraries
- [ ] Integration tests:
- [ ] Full flow: add game, view library, remove game
- [ ] Authentication flow with library operations
- [ ] Manual QA steps:
- [ ] Test adding game via UI
- [ ] Test viewing library
- [ ] Test removing game
- [ ] Test error handling (invalid game ID, duplicate, etc.)
- [ ] Test with multiple users to ensure isolation
---
## 📂 Additional Context
- Relational data model means using MongoDB might not be the best choice. Should we re-evaluate database choice?
- Consider adding a GET /api/library/:userId endpoint for viewing other users' libraries (future feature)
- May want to add library statistics (total games, recently added, etc.)
- Consider caching library data for performance
```
## Technical Breakdown Guide
### Acceptance Criteria
**Purpose:** Define clear, testable conditions for story completion.
**Tips:**
- Make criteria specific and measurable
- Focus on behavior, not implementation
- Ensure criteria are testable
- Cover both happy path and edge cases
**Examples:**
- ✅ "User can add game to library"
- ✅ "User cannot add duplicate games"
- ❌ "Implement library feature" (too vague)
- ❌ "Use MongoDB" (implementation detail)
### Technical Details
**Implementation Approach:**
- What components/modules will be created?
- What API endpoints are needed?
- What UI components are required?
- What database changes are needed?
**Data Considerations:**
- What data models are involved?
- What validation is needed?
- What relationships exist?
- What storage requirements are there?
**Security/Permissions:**
- What authentication is required?
- What authorization checks are needed?
- What data should be protected?
- What rate limiting is appropriate?
### Dependencies
**Types of Dependencies:**
- **Feature Dependencies:** Other user stories that must be completed first
- **Technical Dependencies:** Libraries, frameworks, or services needed
- **External Dependencies:** Third-party APIs or services
**Identifying Dependencies:**
- What must exist before this can be built?
- What external services are needed?
- What libraries or frameworks are required?
- What infrastructure is needed?
### Testing Notes
**Unit Tests:**
- Test individual functions/methods
- Test edge cases and error handling
- Test validation logic
- Test business rules
**Integration Tests:**
- Test component interactions
- Test API endpoints
- Test database operations
- Test authentication/authorization flows
**Manual QA:**
- Test user workflows
- Test UI interactions
- Test error scenarios
- Test across different browsers/devices
### Additional Context
**Include:**
- Design mockups or wireframes
- Architecture diagrams
- Related documentation
- Constraints or limitations
- Open questions or concerns
- Future considerations
## Common Technical Patterns
### API Endpoint Pattern
```markdown
## ⚙️ Technical Details
- Proposed implementation approach:
- [ ] POST /api/resource endpoint
- [ ] Request validation middleware
- [ ] Database operation
- [ ] Response formatting
- Data considerations:
- [ ] Resource model schema
- [ ] Required fields validation
- [ ] Data relationships
- Security/permissions:
- [ ] JWT authentication required
- [ ] Role-based authorization
```
### UI Component Pattern
```markdown
## ⚙️ Technical Details
- Proposed implementation approach:
- [ ] Component structure (e.g., React component)
- [ ] State management
- [ ] API integration
- [ ] Error handling UI
- Data considerations:
- [ ] Component props/state
- [ ] Data fetching strategy
- [ ] Loading states
- Security/permissions:
- [ ] Conditional rendering based on user role
- [ ] Protected routes
```
---
*Technical breakdowns help you plan implementation before coding. Take time to think through all aspects of the feature.*
@@ -0,0 +1,209 @@
---
title: User Story Resources
---
**USER STORY TEMPLATES, EXAMPLES, AND WRITING GUIDES**
## User Story Format
### Standard Format
```
As a [user type], I want [goal/desire] so that [benefit/value].
```
### Components
- **User Type:** Who is the user? (e.g., authenticated user, admin, guest)
- **Goal/Desire:** What do they want to do?
- **Benefit/Value:** Why do they want this? What value does it provide?
## User Story Examples
### Authentication Examples
**Example 1:**
As an unauthenticated user, I can create an account so that I can access personalized features.
**Example 2:**
As an unauthenticated user, I can sign in to my existing account so that I can access my saved data.
**Example 3:**
As an authenticated user, I can sign out so that I can secure my account when using shared devices.
### Profile Management Examples
**Example 1:**
As an authenticated user, I can view my profile so that I can see my account information.
**Example 2:**
As an authenticated user, I can edit my profile information so that I can keep my details up to date.
**Example 3:**
As an authenticated user, I can upload a profile picture so that others can identify me.
### Content Management Examples
**Example 1:**
As an authenticated user, I can create a new post so that I can share content with others.
**Example 2:**
As an authenticated user, I can edit my own posts so that I can correct mistakes or update information.
**Example 3:**
As an authenticated user, I can delete my own posts so that I can remove content I no longer want to share.
**Example 4:**
As a user, I can view posts from other users so that I can see community content.
### Admin Examples
**Example 1:**
As an administrator, I can review posts for content violations so that I can maintain community standards.
**Example 2:**
As an administrator, I can remove posts that violate policies so that I can keep the community safe.
**Example 3:**
As an administrator, I can view user analytics so that I can understand community engagement.
### Task Management Examples
**Example 1:**
As an authenticated user, I can create a new task so that I can track work that needs to be done.
**Example 2:**
As an authenticated user, I can mark a task as complete so that I can track my progress.
**Example 3:**
As an authenticated user, I can organise tasks into projects so that I can group related work.
**Example 4:**
As an authenticated user, I can set task dependencies so that I can ensure tasks are completed in the correct order.
## User Story Writing Guide
### Step 1: Identify User Types
**Common User Types:**
- Unauthenticated user (guest, visitor)
- Authenticated user (logged-in user)
- Administrator (admin, moderator)
- Premium user (if applicable)
- Specific roles (e.g., teacher, student, manager)
### Step 2: Think About User Goals
**Questions to Ask:**
- What does this user type want to accomplish?
- What actions do they need to take?
- What information do they need to see?
- What features would be valuable to them?
### Step 3: Consider the Value
**Value Considerations:**
- Why is this feature important?
- What problem does it solve?
- How does it improve the user experience?
- What benefit does it provide?
### Step 4: Write the Story
**Writing Tips:**
- Keep it simple and focused
- One feature per story
- Use clear, concise language
- Focus on user value, not implementation
### Step 5: Review and Refine
**Review Checklist:**
- Is the user type clear?
- Is the goal specific and actionable?
- Is the value/benefit clear?
- Is it testable?
- Is it independent (can be developed separately)?
## User Story Template
```markdown
## User Story: [Brief Title]
**As a** [user type]
**I want** [goal/desire]
**So that** [benefit/value]
### Acceptance Criteria
- [ ] [Criterion 1]
- [ ] [Criterion 2]
- [ ] [Criterion 3]
### Notes
[Any additional context or considerations]
```
## Common User Story Patterns
### CRUD Operations
**Create:**
As an authenticated user, I can create [resource] so that [value].
**Read/View:**
As a user, I can view [resource] so that [value].
**Update:**
As an authenticated user, I can edit [resource] so that [value].
**Delete:**
As an authenticated user, I can delete [resource] so that [value].
### Authentication Flow
- Account creation
- Sign in
- Sign out
- Password reset
- Email verification
- Profile management
### Content Management
- Create content
- View content
- Edit content
- Delete content
- Search/filter content
- Organise content
### Social Features
- Follow users
- Like/favourite content
- Comment on content
- Share content
- Message users
## Best Practices
### Do's
✅ Write from the user's perspective
✅ Focus on value and benefits
✅ Keep stories independent
✅ Make stories testable
✅ Use clear, simple language
### Don'ts
❌ Include technical implementation details
❌ Combine multiple features
❌ Use vague or ambiguous language
❌ Focus on "how" instead of "what"
❌ Make stories too large or complex
---
*User stories should be clear, focused, and user-centred. They guide development by keeping the focus on user value.*
+61 -6
View File
@@ -1,10 +1,33 @@
---
title: Downloading and Editing Music
title: Managing Local Music
---
This serves as our documentation for how we manage our local music libraries on Linux.
**DOCUMENTING LOCAL MUSIC LIBRARY MANAGEMENT PROCEDURES**
## Acquiring Music
## 1. INTRODUCTION AND LEGAL FRAMEWORK
### 1.1. Policy Overview
This Music Management Documentation (hereinafter referred to as "the Documentation") provides technical procedures and instructions for managing local music libraries on Linux systems. This Documentation operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, and all applicable legal protections by reference.
### 1.2. Purpose and Scope
This Documentation describes technical procedures for managing local music libraries. This information is provided for informational purposes and personal use only.
**IMPORTANT: Users are solely responsible for ensuring that all music acquisition, storage, and management activities comply with applicable copyright laws, licensing agreements, and legal requirements. Our organisation does not condone or support any illegal activities, including copyright infringement or piracy.**
### 1.3. Legal Compliance Disclaimer
All users must ensure that their music acquisition and management activities comply with:
- Applicable copyright laws and regulations
- Terms of service of music platforms and services
- Licensing agreements for music content
- All relevant intellectual property laws
Our organisation assumes no responsibility for any illegal activities conducted using information from this Documentation.
## 2. ACQUIRING MUSIC
You are welcome to use any method you wish to *LEGALLY* acquire music. We would never encourage the criminal act of piracy. But maybe you're an artist and you want to archive or back up your own music - in that case, here you go:
@@ -14,7 +37,7 @@ yt-dlp -x --audio-format mp3 <url> --cookies-from-browser firefox
Omit the `--cookies-from-browser firefox` if you do not need authentication (auth is required for age-restricted content, for example).
## Editing Metadata
## 3. EDITING METADATA
The specific meta tags you may need to set will vary depending on the music software you use. We have confirmed that `TIT2` is read as the title and `TPE1` is read as the artist when using Amberol on Linux and Musicolet on Android. Using `-t` and `-a` might work.
@@ -22,7 +45,7 @@ The specific meta tags you may need to set will vary depending on the music soft
id3v2 "/path/to/song" --TIT2 "Song Title" --TPE1 "Song Artist"
```
## Adding Cover Image
## 4. ADDING COVER IMAGES
Download the image (we have confirmed JPEGs work) that you want to apply to the song, then run:
@@ -30,10 +53,42 @@ Download the image (we have confirmed JPEGs work) that you want to apply to the
eyeD3 --add-image="/path/to/img":FRONT_COVER "/path/to/mp3"
```
## Copying to Android Locally
## 5. COPYING TO ANDROID DEVICES
You'll need to replace your paths and your device ID to match your local setup, but:
```bash
adb -s 192.168.12.105:5555 push music/* /storage/self/primary/Music
```
## 6. LIMITATION OF LIABILITY AND DISCLAIMERS
### 6.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, and maximum liability caps are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 6.2. Legal Compliance Disclaimer
This Documentation provides technical procedures only. Our organisation:
- Does not provide legal advice regarding music acquisition or copyright compliance
- Does not endorse or support any illegal activities, including copyright infringement
- Assumes no responsibility for users' compliance with copyright laws or licensing agreements
- Recommends that users consult qualified legal counsel for questions about copyright compliance
### 6.3. Technical Accuracy Disclaimer
While we strive to maintain accurate and current information in this Documentation, software tools, commands, and procedures may change over time. Users are responsible for:
- Verifying current software versions and compatibility
- Adapting procedures to their specific system configurations
- Ensuring their technical setup meets the requirements for these procedures
- Consulting additional resources for the most current technical information
## 7. CONCLUSION
This Music Management Documentation provides technical procedures for managing local music libraries on Linux systems. All users must ensure that their use of these procedures complies with applicable copyright laws, licensing agreements, and legal requirements.
---
*For questions about music management procedures or legal compliance, please consult qualified legal counsel.*
+151
View File
@@ -0,0 +1,151 @@
---
title: AI Prompts
---
**DOCUMENTING STANDARD AI PROMPTS AND WORKFLOW TEMPLATES**
## 1. INTRODUCTION AND LEGAL FRAMEWORK
### 1.1. Policy Overview
This AI Prompts Documentation (hereinafter referred to as "the Documentation") provides standard prompts, templates, and workflow instructions for using artificial intelligence tools in our organisational workflows. This Documentation operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, and all applicable legal protections by reference.
### 1.2. Purpose and Scope
This Documentation serves as a reference for standardised AI prompts used in various organisational contexts. These prompts are provided for convenience and consistency but may require customisation for specific use cases.
**IMPORTANT: These prompts are provided as starting points and may require modification to meet specific requirements. Users are responsible for ensuring that any use of AI tools complies with applicable laws, regulations, and organisational policies.**
### 1.3. AI Tool Usage Disclaimer
Our organisation does not guarantee the accuracy, reliability, or appropriateness of outputs generated using these prompts. Users are responsible for:
- Reviewing and validating all AI-generated content
- Ensuring compliance with applicable laws and regulations
- Maintaining appropriate oversight of AI tool usage
- Protecting sensitive or confidential information when using AI tools
## 2. AI PROMPTS
### 2.1. Documentation Generation Prompt
Open Claude Code in your project directory, then provide this prompt:
```md
Please go through the entire `src` directory and use the codebase to generate documentation for me, given the following template:
---
title: <app name>
---
<app name> (hereinafter the "Application") is <description>
## 1. User Documentation
This section is for those interacting with a live instance of the Application.
## 2. Technical Documentation
This section is for those interested in running their own instance of the Application.
## 3. Legal Documentation
This section is for expansions to our legal policies specific to the Application.
## 4. Contributing Documentation
This section is for documentation related to contributing to the Application's codebase.
```
### 2.2. Comprehension Question Generation Prompt
We use this for some of our client work, but this is great for creating questions to quiz yourself on any document you've read.
````md
You must create three comprehension check questions for the lecture script the user provides. Do not include any other information. Format the response as a code block so the user can easily copy the syntax.
Here is the format:
```
### Question 1:
Which of the following is a key characteristic of relational databases?
**A.** Flexible schema
**B.** Document-based structure
**C.** Key-value pairs
**D.** Structured data in tables
Hint: Think about how data is organised in relational databases.
Answer: **D.** Structured data in tables
### Question 2:
Which of the following is a key characteristic of relational databases?
**A.** Flexible schema
**B.** Document-based structure
**C.** Key-value pairs
**D.** Structured data in tables
Hint: Think about how data is organised in relational databases.
Answer: **D.** Structured data in tables
### Question 3:
Which of the following is a key characteristic of relational databases?
**A.** Flexible schema
**B.** Document-based structure
**C.** Key-value pairs
**D.** Structured data in tables
Hint: Think about how data is organised in relational databases.
Answer: **D.** Structured data in tables
```
````
## 3. LIMITATION OF LIABILITY AND DISCLAIMERS
### 3.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, and maximum liability caps are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 3.2. AI Tool Usage Disclaimer
These prompts are provided for informational purposes only. Our organisation:
- Does not guarantee the accuracy, reliability, or appropriateness of outputs generated using these prompts
- Does not warrant that these prompts will produce desired results in all contexts
- Assumes no responsibility for outcomes resulting from the use of these prompts with AI tools
- Recommends that users review and validate all AI-generated content
### 3.3. User Responsibilities
Users are responsible for:
- Reviewing and validating all AI-generated content before use
- Ensuring compliance with applicable laws, regulations, and organisational policies
- Protecting sensitive or confidential information when using AI tools
- Maintaining appropriate oversight and quality control of AI tool usage
- Adapting prompts to meet specific requirements and contexts
## 4. CONCLUSION
This AI Prompts Documentation provides standardised prompts and workflow templates for using artificial intelligence tools in our organisational workflows. All users are responsible for ensuring that their use of these prompts complies with applicable laws, regulations, and organisational policies, and for maintaining appropriate oversight of AI tool usage.
---
*For questions about AI prompt usage or to suggest improvements, please contact appropriate organisational leadership through designated communication channels.*
+852
View File
@@ -0,0 +1,852 @@
---
title: Templates
---
**PROVIDING STANDARD TEMPLATES AND DOCUMENTATION FORMS**
## 1. INTRODUCTION AND LEGAL FRAMEWORK
### 1.1. Policy Overview
This Templates Documentation (hereinafter referred to as "the Documentation") provides standard templates, forms, and documentation formats used throughout our organisation. This Documentation operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, and all applicable legal protections by reference.
### 1.2. Purpose and Scope
This Documentation serves as a reference for standardised templates used in various organisational contexts. These templates are provided for convenience and consistency but may require customisation for specific use cases.
**IMPORTANT: These templates are provided as starting points and may require modification to meet specific legal, regulatory, or contextual requirements. Users are responsible for ensuring that any use of these templates complies with applicable laws and regulations.**
### 1.3. Disclaimer
Our organisation does not provide legal advice. These templates are provided for informational purposes only. Users should consult with qualified legal counsel when using these templates for legal matters or when compliance with specific regulations is required.
## 2. TEMPLATES
### 2.1. Legal Templates
#### 2.1.1. DMCA Takedown Template
```md
To whom it may concern:
We are writing to notify you of the copyright infringement and unlawful use of our copyrighted material that appear on the service for which you are the designated agent.
The infringing material, which we contend belong to us, includes our original visual assets.
The infringing material appears at the following location(s):
<url>
The original material is available at the following location(s):
<url>
This letter is the official notification under Section 512(c) of the Digital Millennium Copyright Act of 1998 ("DMCA") and we request the immediate removal of the aforementioned infringing materials from your servers.
We also request that you immediately notify the infringer of this notice and inform them to cease any further posting of the infringing material to your server in the future.
We are providing this notice in good faith and with the reasonable belief that we are the copyright holder of the material, and that the use of the described material in the manner complained is not authorised by us, our agents, or the law.
We swear, under penalty of perjury, that the information in this notification is accurate and that we are the owner of the copyrighted material involved.
If you have any questions, please feel free to reach out to us.
```
### 2.2. LinkedIn Templates
#### 2.2.1. LinkedIn Cold Outreach Response Template
```md
I would be more than happy to chat! You can schedule time directly on my calendar:
https://zcal.co/nhcarrigan/meet
```
#### 2.2.2. LinkedIn Post-Event Recommendation Template
```md
I had the absolute pleasure of working with [Participant's Name] during our [event name], where [they] consistently impressed me with [their] dedication, technical growth, and collaborative spirit.
From the start, [Participant's Name] dove into the challenge with enthusiasm, applying [their] skills in [tech stack] to build real, impactful solutions. Whether working independently or as part of a team, [they] brought thoughtful ideas, clear communication, and a passion for learning that elevated everyone around [them].
The value of [Participant's Name]'s contributions are immeasurable. Throughout the event, they [explain loads of goals here].
By the end of the [event name], [Participant's Name] had delivered an outstanding project: [project name or brief description]. More than the final product, what stood out was [their] journey—embracing feedback, overcoming obstacles, and supporting others along the way.
I wholeheartedly recommend [Participant's Name] for any opportunity in tech. [They] bring not just technical ability, but the kind of energy and curiosity that makes any team stronger.
```
#### 2.2.3. LinkedIn Mentorship Recommendation Template
```md
I had the privilege of mentoring [Mentee's Name] through my 1:1 mentorship programme, and from our very first session, it was clear that [they] approached learning with curiosity, determination, and an eagerness to grow.
Over the course of the programme, [Mentee's Name] set clear goals and worked diligently towards them—building both technical skills in [specific tech stack, tools, or concepts] and the professional confidence to apply those skills in real-world scenarios. [They] embraced feedback, sought out challenges, and consistently demonstrated the resilience needed to push past obstacles.
What impressed me most was [their] commitment to personal and professional growth—not just in terms of technical ability, but also in communication, collaboration, and problem-solving. By the end of the mentorship, [Mentee's Name] had successfully delivered [describe final project or achievement], showing not only technical proficiency but also the ability to think critically and adapt to new situations.
I am confident that [Mentee's Name] will continue to excel in their career. They bring the kind of focus, curiosity, and dedication that make them a valuable asset to any team, and I am proud to have played a part in their journey.
```
### 2.3. Form Response Email Templates
#### 2.3.1. Appeals Form - Approval Email Template
Subject Line: `Appeal Decision - [Sanction Type] Appeal Upheld`
```md
Dear [Appellant's Name],
Thank you for submitting your appeal regarding the disciplinary sanction imposed on [date of original sanction]. We acknowledge receipt of your appeal and have conducted a thorough review in accordance with our Community Disciplinary Appeals Policy.
After careful consideration by the Appeals Panel, which included examination of all evidence and documentation, review of the original decision and its rationale, and assessment of your submissions and arguments, we have determined that your appeal has merit and meets the grounds for appeal as established in our policy.
**Decision**: Your appeal has been upheld. The original disciplinary sanction has been [overturned/modified/reduced] as follows: [Insert specific details about the new decision].
**Reasoning**: [Insert detailed reasoning here, addressing the specific grounds raised in the appeal and explaining why the appeal was successful. This should reference procedural compliance, proportionality of the sanction, factual accuracy, evidence considered, and correct application of community policies.]
As outlined in Section 8.1 of our Community Disciplinary Appeals Policy, decisions of the Appeals Panel are final and binding. The decision outlined above is effective immediately.
We appreciate your engagement with our appeals process and your respect for our community standards. We look forward to your continued positive participation in our community.
Regards,
```
#### 2.3.2. Appeals Form - Rejection Email Template
Subject Line: `Appeal Decision - [Sanction Type] Appeal Dismissed`
```md
Dear [Appellant's Name],
Thank you for submitting your appeal regarding the disciplinary sanction imposed on [date of original sanction]. We acknowledge receipt of your appeal and have conducted a thorough review in accordance with our Community Disciplinary Appeals Policy.
After careful consideration by the Appeals Panel, which included examination of all evidence and documentation, review of the original decision and its rationale, and assessment of your submissions and arguments, we have determined that your appeal does not meet the grounds for appeal as established in our policy.
**Decision**: Your appeal has been dismissed. The original disciplinary sanction remains in full effect.
**Reasoning**: [Insert detailed reasoning here, addressing the specific grounds raised in the appeal and explaining why the original decision was appropriate. This should reference procedural compliance, proportionality of the sanction, factual accuracy, evidence considered, and correct application of community policies.]
As outlined in Section 8.1 of our Community Disciplinary Appeals Policy, decisions of the Appeals Panel are final and binding. No further appeals or reviews are available through our internal processes.
We understand that this decision may be disappointing. Our appeals process is designed to ensure fairness and transparency, and we have given your submission careful consideration. The original sanction was imposed in accordance with our community standards and policies, which are designed to maintain a safe and welcoming environment for all members.
If you have any questions about this decision, please note that our Appeals Panel's determination is final. We appreciate your understanding and respect for our community standards and processes.
Regards,
```
#### 2.3.3. Commissions Form - Approval Email Template
```md
Hello [Requester's Name],
Thank you for your commission request! We are excited to work with you on [brief description of commission].
We have reviewed your request and are pleased to accept it. We will begin working on your commission and will keep you updated on our progress.
**Next Steps:**
- [Insert specific next steps, timeline, or requirements here]
- You will receive updates via [preferred contact method]
- Expected completion date: [date if applicable]
If you have any questions or need to make changes to your request, please don't hesitate to reach out to us.
We look forward to creating something amazing for you!
Best regards,
```
#### 2.3.4. Commissions Form - Rejection Email Template
```md
Hello [Requester's Name],
Thank you for your interest in commissioning work from us. We appreciate you taking the time to submit your request.
After careful review, we have decided not to proceed with your commission request at this time. This decision may be based on factors such as current workload, project scope, timeline constraints, or alignment with our services.
Please note that due to the volume of requests we receive, we are unable to provide detailed feedback on every declined request.
We encourage you to stay engaged with our community and projects. If your needs change or you have a different project in mind, we would welcome a new request in the future.
If you have any questions, please reach out in our Discord community: https://chat.nhcarrigan.com
Best regards,
```
#### 2.3.5. Community Recognition Form - Approval Email Template
```md
Hello [Nominator's Name],
Thank you for taking the time to nominate [Nominee's Name] for community recognition! We truly appreciate you highlighting the positive contributions of community members.
We are pleased to inform you that your nomination has been accepted and will be considered in our next recognition cycle. The recognition process involves review by our leadership team, and selected nominees will be celebrated through our community recognition programmes.
**What Happens Next:**
- Your nomination will be reviewed by our recognition committee
- Selected nominees will be notified and celebrated publicly
- Recognition may include awards, spotlights, or other forms of appreciation
- All nominations help us build a more appreciative and inclusive community
Thank you for helping us celebrate the amazing contributions of our community members. Your nomination makes a difference!
If you have any questions, please reach out in our Discord community: https://chat.nhcarrigan.com
Warm regards,
```
#### 2.3.6. Community Recognition Form - Rejection Email Template
```md
Hello [Nominator's Name],
Thank you for taking the time to submit a nomination for community recognition. We truly appreciate your effort to highlight positive contributions in our community.
After careful review, we have decided not to proceed with this nomination at this time. This decision may be based on factors such as eligibility criteria, timing, or alignment with our recognition programmes.
Please note that due to the volume of nominations we receive, we are unable to provide detailed feedback on every declined nomination.
We encourage you to continue recognising positive contributions in our community. There are many ways to show appreciation, including direct recognition, peer appreciation, and future nominations.
If you have any questions about our recognition programmes, please reach out in our Discord community: https://chat.nhcarrigan.com
Thank you again for your engagement with our community.
Warm regards,
```
#### 2.3.7. Contact Form - Approval Email Template
```md
Hello [Contact's Name],
Thank you for reaching out to us through our contact form. We have received your message regarding [brief topic summary].
We appreciate you taking the time to contact us and are pleased to confirm that we have received your inquiry. [Insert specific response or next steps here, such as:]
- We will review your request and respond within [timeframe]
- A team member will be in touch shortly
- We have scheduled a follow-up [meeting/call/response] for [date/time]
If you have any urgent questions or need immediate assistance, please don't hesitate to reach out in our Discord community: https://chat.nhcarrigan.com
We look forward to connecting with you!
Best regards,
```
#### 2.3.8. Contact Form - Rejection Email Template
```md
Hello [Contact's Name],
Thank you for reaching out to us through our contact form. We have received your message regarding [brief topic summary].
After reviewing your inquiry, we are unable to assist with your request at this time. This may be due to factors such as scope of services, current capacity, or alignment with our mission and values.
Please note that due to the volume of inquiries we receive, we are unable to provide detailed feedback on every declined request.
If you have questions about our services or policies, we encourage you to review our documentation at https://docs.nhcarrigan.com or join our Discord community: https://chat.nhcarrigan.com
Thank you for your understanding.
Best regards,
```
#### 2.3.9. Development Review Requests Form - Approval Email Template
```md
Hello [Requester's Name],
Thank you for your development review request! We have reviewed your submission and are pleased to accept your request for review of [project/repository name or description].
**Review Details:**
- Review Type: [Code Review/Project Review/Architecture Review/etc.]
- Materials to be Reviewed: [list of materials]
- Expected Timeline: [timeline for review completion]
**Next Steps:**
- Our team will begin reviewing your materials
- You will receive detailed feedback via [communication method]
- We will provide constructive suggestions for improvement
Please note that development reviews are provided as free services to active community members, and feedback is provided in good faith based on our expertise and best practices.
If you have any questions or need to provide additional materials, please don't hesitate to reach out.
We look forward to reviewing your work!
Best regards,
```
#### 2.3.10. Development Review Requests Form - Rejection Email Template
```md
Hello [Requester's Name],
Thank you for your interest in receiving a development review. We appreciate you taking the time to submit your request.
After careful review, we have decided not to proceed with your development review request at this time. This decision may be based on factors such as:
- Current review capacity and workload
- Alignment with our review services and expertise
- Community membership and engagement requirements
- Project scope or complexity
Please note that development reviews are provided as free services exclusively to active members of our community. If you are not currently an active community member, we encourage you to join our Discord community at https://chat.nhcarrigan.com and become an active participant.
If you have questions about our development review services or would like to resubmit in the future, please reach out in our Discord community: https://chat.nhcarrigan.com
Thank you for your understanding.
Best regards,
```
#### 2.3.11. Events Form - Approval Email Template
```md
Hello [Event Organiser's Name],
Thank you for your event request! We are excited about your proposed event: [Event Name].
We have reviewed your submission and are pleased to approve your event request. We look forward to supporting and promoting this event within our community.
**Event Details:**
- Event Name: [Event Name]
- Proposed Date: [Date]
- Event Type: [Type of event]
**Next Steps:**
- [Insert specific next steps, such as scheduling, promotion, or coordination details]
- We will work with you to finalise event details
- Event promotion will begin [timeline]
If you have any questions or need to make changes to your event details, please don't hesitate to reach out to us.
Thank you for contributing to our community through this event!
Best regards,
```
#### 2.3.12. Events Form - Rejection Email Template
```md
Hello [Event Organiser's Name],
Thank you for your interest in organising an event with our community. We appreciate you taking the time to submit your event request: [Event Name].
After careful review, we have decided not to proceed with your event request at this time. This decision may be based on factors such as:
- Current event calendar and capacity
- Alignment with our community values and mission
- Resource availability and support requirements
- Event scope or logistics
Please note that due to the volume of event requests we receive, we are unable to provide detailed feedback on every declined request.
We encourage you to stay engaged with our community and consider submitting future event proposals. If you have questions about our event policies or would like to discuss alternative event formats, please reach out in our Discord community: https://chat.nhcarrigan.com
Thank you for your understanding and continued engagement with our community.
Best regards,
```
#### 2.3.13. Mock Interview Requests Form - Approval Email Template
```md
Hello [Requester's Name],
Thank you for your mock interview request! We have reviewed your submission and are pleased to accept your request for a [technical/behavioural/combined] mock interview.
**Interview Details:**
- Interview Type: [Type]
- Target Role: [Role if provided]
- Interview Format: [Format]
**Next Steps:**
- We will coordinate with you to schedule your mock interview session
- Mock interviews are typically conducted via [video call/voice call]
- Sessions typically last between 30-60 minutes
- You will receive preparation materials and session details via [communication method]
Please note that mock interviews are provided as free services exclusively to active members of our community. We look forward to helping you prepare for your upcoming interview!
If you have any questions or need to reschedule, please don't hesitate to reach out to us.
Best regards,
```
#### 2.3.14. Mock Interview Requests Form - Rejection Email Template
```md
Hello [Requester's Name],
Thank you for your interest in receiving a mock interview. We appreciate you taking the time to submit your request.
After careful review, we have decided not to proceed with your mock interview request at this time. This decision may be based on factors such as:
- Current interview capacity and availability
- Community membership and engagement requirements
- Interview type or scope alignment with our services
- Scheduling constraints
**IMPORTANT**: Mock interviews are provided as free services EXCLUSIVELY to active members of our community. These services are NOT available to the general public. To be eligible, you MUST be an active, engaged member of our community with demonstrated participation and engagement.
If you are not currently an active community member, we encourage you to join our Discord community at https://chat.nhcarrigan.com and become an active participant. Once you have established active community membership through regular participation and engagement, you will be eligible to request mock interview services.
If you have questions about our mock interview services or community membership, please reach out in our Discord community: https://chat.nhcarrigan.com
Thank you for your understanding.
Best regards,
```
#### 2.3.15. Portfolio Review Requests Form - Approval Email Template
```md
Hello [Requester's Name],
Thank you for your portfolio review request! We have reviewed your submission and are pleased to accept your request for review of your [resume/LinkedIn profile/GitHub profile/portfolio website].
**Review Details:**
- Review Type: [Resume/LinkedIn/GitHub/Portfolio Review]
- Materials to be Reviewed: [list of materials or links]
**Next Steps:**
- Our team will begin reviewing your materials
- You will receive detailed feedback via [communication method]
- We will provide constructive suggestions for improvement based on industry best practices
Please note that portfolio reviews are provided as free services to active community members, and feedback is provided in good faith based on our expertise and professional standards.
If you have any questions or need to provide additional materials, please don't hesitate to reach out.
We look forward to reviewing your materials and helping you improve your professional presentation!
Best regards,
```
#### 2.3.16. Portfolio Review Requests Form - Rejection Email Template
```md
Hello [Requester's Name],
Thank you for your interest in receiving a portfolio review. We appreciate you taking the time to submit your request.
After careful review, we have decided not to proceed with your portfolio review request at this time. This decision may be based on factors such as:
- Current review capacity and workload
- Community membership and engagement requirements
- Material accessibility or completeness
- Review type alignment with our services
**IMPORTANT**: Portfolio reviews are provided as free services EXCLUSIVELY to active members of our community. These services are NOT available to the general public. To be eligible, you MUST be an active, engaged member of our community with demonstrated participation and engagement.
If you are not currently an active community member, we encourage you to join our Discord community at https://chat.nhcarrigan.com and become an active participant. Once you have established active community membership through regular participation and engagement, you will be eligible to request portfolio review services.
If you have questions about our portfolio review services or community membership, please reach out in our Discord community: https://chat.nhcarrigan.com
Thank you for your understanding.
Best regards,
```
#### 2.3.17. Recommendations Form - Approval Email Template
```md
Hello [Requester's Name],
Thank you for your recommendation request! We have reviewed your submission and are pleased to accept your request for a recommendation.
**Recommendation Details:**
- Recommendation Type: [LinkedIn Recommendation/General Recommendation/etc.]
- Context: [Brief context if provided]
**Next Steps:**
- We will prepare your recommendation based on our relationship and your contributions
- Recommendations are typically provided via [LinkedIn/email/etc.]
- You will receive a copy of the recommendation once it is completed
- Expected completion: [timeline]
Please note that recommendations are provided as free services in good faith, based on our relationship and knowledge of your work. We provide honest, accurate recommendations based on our direct experience with you.
If you have any questions or need to provide additional context, please don't hesitate to reach out.
We are happy to support you in your professional journey!
Best regards,
```
#### 2.3.18. Recommendations Form - Rejection Email Template
```md
Hello [Requester's Name],
Thank you for your interest in receiving a recommendation. We appreciate you taking the time to submit your request.
After careful review, we have decided not to proceed with your recommendation request at this time. This decision may be based on factors such as:
- Insufficient direct working relationship or interaction
- Lack of sufficient context or experience to provide an accurate recommendation
- Timeline constraints or capacity limitations
- Alignment with our recommendation policy and standards
Please note that we can only provide recommendations when we have sufficient direct experience and relationship with the requester to provide an honest, accurate, and meaningful recommendation.
If you believe there has been an error or would like to discuss your request further, please reach out in our Discord community: https://chat.nhcarrigan.com
Thank you for your understanding.
Best regards,
```
#### 2.3.19. Staff Applications Form - Approval Email Template
```md
Dear [Applicant's Name],
Thank you so much for taking the time to apply for a volunteer role with NHCarrigan. We truly appreciate your interest in contributing your time and energy to our community.
After carefully reviewing your application, we are excited to inform you that we would like to move forward with your candidacy! We were impressed by [specific aspects of their application] and believe you would be a valuable addition to our team.
**Next Steps:**
- You will receive a separate email with your contract and onboarding materials
- Please review the contract carefully and reach out with any questions or concerns
- You can reach out to us on Discord (https://chat.nhcarrigan.com) or reply to this email if you have any questions or concerns
We are thrilled about the possibility of working with you and look forward to welcoming you to our team. Thank you again for your interest and enthusiasm!
Warm regards,
```
#### 2.3.20. Staff Applications Form - Onboarding Email Template
```md
Dear [New Staff Member's Name],
Welcome to the NHCarrigan team! We are thrilled to have you join us and are excited to begin working together.
**Getting Started:**
1. **Join Our Discord Server:**
- Please join our Discord community at: https://chat.nhcarrigan.com
- This is where most of our team communication and collaboration happens
2. **Access Credentials:**
- **Email:**
- Address:
- Password:
- Can access email via web at https://mail.nhcarrigan.com/mail or through any email client/app. A reminder that this is only for work-related use. Please do not spam people and get our mail server blocked (I do have logs).
- **Gitea:** https://git.nhcarrigan.com
- Username:
- Password:
3. **Complete Your Training:**
- Please complete the policy assessment form for training: https://forms.nhcarrigan.com/o/docs/forms/nxaJyKBuKH9nrt3m5VC98w/4
- This is an important step to ensure you are familiar with our policies and procedures
**Next Steps:**
- Our team will be in touch shortly to discuss your role-specific responsibilities
- Feel free to explore our documentation at https://docs.nhcarrigan.com
If you have any questions or need assistance getting set up, please don't hesitate to reach out to us on Discord or reply to this email.
We are excited to have you on board and look forward to working with you!
Warm regards,
```
#### 2.3.21. Staff Applications Form - Rejection Email Template
```md
Dear [Applicant's Name],
Thank you so much for taking the time to apply for a volunteer role with NHCarrigan. We truly appreciate your interest in contributing your time and energy to our community.
After carefully reviewing your application, we've decided not to move forward with your candidacy for this volunteer position at this time. Please don't take this as a reflection of your value or potential—our selection process is highly competitive, and we often have to make very difficult decisions.
Please note that due to the large volume of applications we receive, we are unable to provide personalised feedback. Here are some common application issues we see:
1. Low-effort Application: Please ensure you are taking the time to provide detailed, well-thought responses. The more effort you put in, the more likely we will be able to accept your application.
2. Invalid Discord ID: Applications require you to provide your unique Discord ID - this is a 16 to 19 digit number that uniquely identifies your Discord account. If this is incorrect, we are unable to accept an application. If you need help finding yours, please refer to https://dis.gd/findid
3. Concerning Responses: If your responses to any of the application questions raise red flags, we decline your application. Remember that you want to paint yourself in the best light here.
We still encourage you to stay engaged with our community spaces, events, and projects. There are always opportunities to connect, learn, and grow together, and we would love to see you continue to participate.
We encourage you to take the time to consider these common points of failure, and would welcome a resubmission from you in the future.
Thank you again for your interest and enthusiasm. We wish you the very best in all your endeavors and hope our paths cross again in the future.
Warm regards,
```
#### 2.3.22. Testimonials Form - Approval Email Template
```md
Hello [Contributor's Name],
Thank you for sharing your testimonial with us! We have reviewed your submission and are pleased to accept it for publication.
**Testimonial Details:**
- Your testimonial will be reviewed and may be featured on our website, social media, or other promotional materials
- We may edit your testimonial for length, clarity, or formatting whilst preserving your message and intent
- You will be credited as [name/handle as provided]
**Next Steps:**
- Your testimonial will be added to our review queue
- We will notify you when it is published (if applicable)
- Thank you for helping others learn about our community and services!
Your words help us build trust and connect with others who might benefit from our community. We truly appreciate you taking the time to share your experience.
If you have any questions or would like to make changes to your testimonial, please don't hesitate to reach out.
Best regards,
```
#### 2.3.23. Testimonials Form - Rejection Email Template
```md
Hello [Contributor's Name],
Thank you for taking the time to submit a testimonial. We appreciate your interest in sharing your experience with our community.
After careful review, we have decided not to publish your testimonial at this time. This decision may be based on factors such as:
- Content alignment with our community values and standards
- Formatting or clarity requirements
- Current testimonial collection needs
- Verification or authenticity concerns
Please note that due to the volume of testimonials we receive, we are unable to provide detailed feedback on every declined submission.
We encourage you to stay engaged with our community and consider submitting a testimonial in the future if your experience changes or if you have additional feedback to share.
If you have questions about our testimonial process, please reach out in our Discord community: https://chat.nhcarrigan.com
Thank you for your understanding and continued engagement with our community.
Best regards,
```
### 2.4. Form Components
#### 2.4.1. Form Consent for Email Communications
Description:
```
At NHCarrigan, we are fully committed to respecting and protecting your privacy. We strictly adhere to a policy of non-disclosure regarding your personal data; we do not sell, trade, or transfer your information to outside parties. The contact details you provide will be used exclusively for the purpose of responding to your inquiry or addressing the subject of this form. For a complete overview of our data practices, please review our [Privacy Policy](https://docs.nhcarrigan.com/legal/privacy/).
```
Question:
```
I agree to be contacted via email, solely for the purpose of addressing this submission.
```
#### 2.4.2. Form Image Header
```html
<div style="width: 100%; text-align: center"><img src="https://cdn.nhcarrigan.com/logo.png" style="width: 250px; height: 250px"></div>
```
#### 2.4.3. Form Confirmation
Add this at the end of any form specific text.
```
If you'd like to stay up to date on everything we do, come hang out in our server! https://chat.nhcarrigan.com
```
### 2.5. Community & Communication Templates
#### 2.5.1. Discord Server Introduction Template
```md
Hello~! I'm Naomi, a 34 year old transfem software engineer and community manager based in Washington. All of my work (and therefore most of my life) is spent online, so I'm always looking for new spaces and people to vibe with. Remote work can feel dreadfully isolating, and this is my attempt to combat that feeling.
<insert bit about community here>
```
#### 2.5.2. freeCodeCamp Contributor Sprint Template
```md
## This issue is part of Naomi's sprint initiatives.
If you are interested in working on this issue, [join our Discord](https://chat.freecodecamp.org) and ping Naomi!
### Action Items
- [ ] Prototype created and PRed to https://github.com/freeCodeCamp/curriculumexpansion
- [ ] Prototype reviewed + approved + merged by staff
- [ ] Break prototype down into steps (if workshop) or individual "step" (if lab) - write description, hint text **only** (no tests yet), and seed code. Refer to https://contribute.freecodecamp.org/how-to-work-on-coding-challenges
- [ ] DRAFT PR opened on https://github.com/freeCodeCamp/freeCodeCamp
- [ ] Team + Naomi review your steps, confirm the breakdown + user stories look good
- [ ] Begin writing the actual test logic, refer to https://contribute.freecodecamp.org/curriculum-help/#basic-usage-pattern for how to write tests for Python challenges
- [ ] Mark PR as not a draft, team reviews + approves + merges
- [ ] YOU DID IT GO CELEBRATE!
### Other Details
- Remember to keep an eye on your PRs and respond to review comments and suggestions
- For workshops, refer to: https://contribute.freecodecamp.org/how-to-work-on-coding-challenges/
- For labs, refer to: https://contribute.freecodecamp.org/how-to-work-on-labs/
### Questions
Ping Naomi in the sprint channel on Discord
```
### 2.6. Gaming Templates
#### 2.6.1. Guild Wars 2 Recruitment Advertisement Template
This has to be sent in two chat messages because of the length.
```
Hiya friends~! Naomi's Newbies is a new guild that is really focused on helping newer players come to love the game, and supporting casual players who have busy schedules.
```
```
We have no activity requirement, no rep requirement, a Discord community, and more! If you are interested, please whisper me and I will gladly invite you!
```
### 2.7. Donation Templates
#### 2.7.1. Discord Bot Donation Copy Template
These go in the bot SKUs:
##### 2.7.1.1. Subscription Name
```
Sponsor Naomi
```
##### 2.7.1.2. Subscription Description
```
**How Your Support Makes a Difference**
1. Creating Free Software
- Develop open-source tools accessible to everyone
- Design Discord bots for community management and safe spaces
- Create learning resources and accessibility-focused web applications
2. Building Inclusive Communities
- Manage welcoming online spaces where diverse voices are celebrated
- Organise virtual events, workshops, and mentorship programmes
- Implement inclusive community guidelines
3. Guiding Others in Tech
- Provide mentorship to aspiring technologists from underrepresented groups
- Create educational content (tutorials, blog posts, videos)
- Offer career advice and emotional support
4. Your Contribution's Ripple Effect:
- Challenges the status quo of the tech industry
- Creates opportunities for underrepresented individuals in STEM
- Fosters innovation through diverse perspectives
- Builds a tech community that reflects and serves all of society
Every donation, regardless of size, contributes to this mission. Together, we're creating a more inclusive, accessible, and diverse future for technology.
Thank you for considering a donation and being part of this important journey.
```
##### 2.7.1.3. Benefit Name
```
Your donation:
```
##### 2.7.1.4. Benefit Description
```
Helps a transfemme technology witch create free software, build inclusive communities, and guide others on their journey in tech.
```
##### 2.7.1.5. Notes
- Use my avatar for subscription
- Use pentatrans for benefit
### 2.8. freeCodeCamp Templates
#### 2.8.1. freeCodeCamp Sprint Issue Template
```md
**Type:** Workshop/Lab/????
**Summary:**
**User Stories**
1.
2.
3.
**Technical Notes**
-
-
-
## This issue is part of Naomi's sprint initiatives.
If you are interested in working on this issue, [join our Discord](https://chat.freecodecamp.org) and ping Naomi!
### Action Items
- [ ] Prototype created and PRed to https://github.com/freeCodeCamp/curriculumexpansion
- [ ] Prototype reviewed + approved + merged by staff
- [ ] Break prototype down into steps (if workshop) or individual "step" (if lab) - write description, hint text **only** (no tests yet), and seed code.
- [ ] DRAFT PR opened on https://github.com/freeCodeCamp/freeCodeCamp
- [ ] Team + Naomi review your steps, confirm the breakdown + user stories look good
- [ ] Begin writing the actual test logic, refer to https://contribute.freecodecamp.org/curriculum-help/#js-helper for how to write tests for JS challenges
- [ ] Mark PR as not a draft, team reviews + approves + merges
- [ ] YOU DID IT GO CELEBRATE!
### Other Details
- Remember to keep an eye on your PRs and respond to review comments and suggestions
- For workshops, refer to: https://contribute.freecodecamp.org/how-to-work-on-coding-challenges/
- For labs, refer to: https://contribute.freecodecamp.org/how-to-work-on-labs/
### Questions
Ping Naomi in the sprint channel on Discord
```
#### 2.8.2. freeCodeCamp Sprint Progress Update
```md
**Progress Update - <date>**
<summarise what contributor said>
```
## 3. DISCLAIMERS AND USAGE REQUIREMENTS
### 3.1. Reference to Comprehensive Liability Framework
**IMPORTANT: Comprehensive liability limitations, damage exclusions, and maximum liability caps are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.**
### 3.2. Template Usage Disclaimer
These templates are provided for informational purposes only. Our organisation:
- Does not provide legal advice or guarantee the legal effectiveness of these templates
- Does not warrant that these templates will meet specific legal, regulatory, or contextual requirements
- Recommends that users consult with qualified legal counsel when using these templates for legal matters
- Assumes no responsibility for outcomes resulting from the use of these templates
### 3.3. Customisation Requirements
Users are responsible for:
- Customising templates to meet their specific needs and requirements
- Ensuring compliance with applicable laws, regulations, and organisational policies
- Verifying the accuracy and appropriateness of template content for their specific use case
- Obtaining appropriate legal review when necessary
## 4. CONCLUSION
This Templates Documentation provides standardised templates and forms for use throughout our organisation. All users are responsible for ensuring that their use of these templates complies with applicable laws, regulations, and organisational requirements.
---
*For questions about template usage or to suggest improvements, please contact appropriate organisational leadership through designated communication channels.*
+888
View File
@@ -0,0 +1,888 @@
---
title: Artists4Palestine Bot
---
Artists4Palestine Bot (hereinafter the "Application") is a Discord bot designed to facilitate the Art for Palestine charity event. The Application serves as an automated bridge between Airtable, Trello, and Discord to manage art commission requests, artist assignments, delivery tracking, and support tickets for the charity event.
## 1. User Documentation
This section is for those interacting with a live instance of the Application.
### 1.1. Getting Started
The Art for Palestine Bot is available on the [Art for Palestine Discord server](https://discord.gg/kHNyb6Vyf8). Once you join the server, you will automatically be assigned the member role and can begin interacting with the bot's features.
### 1.2. Requesting Art Commissions
Art commission requests are submitted through an Airtable form (external to Discord). Once submitted, your request will automatically appear in the designated commission channel where artists can view and claim it. Your request should include:
- Your name
- Preferred contact method (Email, Discord, or Twitter)
- Your contact handle/username
- Description of the art you would like drawn
- Reference images (optional)
- Any additional notes or requirements
### 1.3. Artist Features
#### 1.3.1. Claiming Art Commissions
As an artist, you can claim art commissions by reacting to commission posts in the art commission channel (ID: `1172568787330019340`).
**Important Notes:**
- You can only claim up to 2 commissions at a time
- Claiming a commission creates a private thread for coordination
- The thread will include your mention and the requester's information
#### 1.3.2. Submitting Completed Artwork
Once you've completed the artwork:
1. Post the completed artwork as an image attachment in the private thread
2. The bot will automatically forward your submission to the distribution channel
3. Your thread will be archived
4. The commission will be removed from your active count
#### 1.3.3. Art Reminders
The bot sends automated reminders to help manage workload:
- **Unclaimed Art Reminders**: Sent Monday, Wednesday, and Friday at 9:00 AM
- **Unfinished Art Reminders**: Sent Saturday at 9:00 AM
### 1.4. Distribution Features
#### 1.4.1. Claiming Distributions
Distribution team members can claim distribution tasks by reacting to posts in the distribution channel (ID: `1173061747737903315`). Similar to art commissions:
- Maximum 2 concurrent distributions per member
- Creates a private coordination thread
- Includes recipient and artwork details
#### 1.4.2. Confirming Deliveries
To confirm a distribution:
1. Deliver the artwork to the recipient
2. Post a confirmation image in the private thread
3. The bot will close and archive the thread
#### 1.4.3. Distribution Reminders
- **Unclaimed Distribution Reminders**: Sent Monday, Wednesday, and Friday at 9:00 AM
- **Unfinished Distribution Reminders**: Sent Saturday at 9:00 AM
### 1.5. Support Ticket System
#### 1.5.1. Opening a Ticket
Users can open support tickets using the ticket button in the designated ticket channel:
1. Click the "Open Ticket" button
2. Fill out the modal form with your issue description
3. A private thread will be created for your ticket
4. Support team members will be notified
#### 1.5.2. Ticket Workflow
- **For Users**: Describe your issue in the private thread and wait for a support team member to claim it
- **For Support Team**: Click "Claim Ticket" to add your mention and take responsibility for the issue
- Conversations in the ticket thread are automatically logged
#### 1.5.3. Closing Tickets
Support team members can close tickets using the "Close Ticket" button:
- A log file of the entire conversation will be generated
- The log is sent to the ticket archive channel
- The thread is closed and archived
### 1.6. Moderation Commands
Moderation team members with the support role (ID: `1173582640843063366`) have access to these commands:
#### `!mute <user_id> <duration> <reason>`
Temporarily timeout a user.
**Parameters:**
- `user_id`: The Discord user ID to mute
- `duration`: Duration with unit (e.g., `30m`, `2h`, `1d`)
- Supported units: `s` (seconds), `m` (minutes), `h` (hours), `d` (days)
- `reason`: Explanation for the timeout
**Example:**
```
!mute 123456789012345678 1h Spam in general channel
```
#### `!unmute <user_id> <reason>`
Remove a timeout from a user.
**Parameters:**
- `user_id`: The Discord user ID to unmute
- `reason`: Explanation for removing the timeout
**Example:**
```
!unmute 123456789012345678 Appeal accepted
```
### 1.7. Palestine News Updates
The bot automatically fetches and posts news updates from Al Jazeera's Palestine live blog:
- Updates are checked every 10 minutes
- New articles are posted to the news channel
- Prevents duplicate posts using article ID tracking
### 1.8. Getting Help
If you encounter issues or have questions:
- Open a support ticket in the Discord server
- Report bugs in the #bug-reports forum channel on our Discord community
- Contact via the [chat server](https://chat.nhcarrigan.com) or email at `contact@nhcarrigan.com`
---
## 2. Technical Documentation
This section is for those interested in running their own instance of the Application.
### 2.1. Prerequisites
Before running your own instance, ensure you have:
- **Node.js**: Version 22 (specified in `package.json`)
- **pnpm**: Version 10 (package manager)
- **Discord Bot Account**: With a bot token and appropriate permissions
- **Airtable Account**: With API access
- **Discord Webhooks**: Multiple webhooks configured for different channels
### 2.2. Required Discord Permissions
Your Discord bot requires the following Gateway Intents:
- `GuildMessages`: Access to guild message events
- `Guilds`: Access to guild/server data
- `GuildMessageReactions`: Access to message reaction events
- `MessageContent`: Privileged intent for full message content access
- `GuildMembers`: Access to member data
### 2.3. Environment Configuration
Create a `.env` file in the project root with the following variables:
```env
# Discord Bot Configuration
TOKEN=your_discord_bot_token
# Discord Webhooks
DEBUG=https://discord.com/api/webhooks/... # Debug/error logging
COMM=https://discord.com/api/webhooks/... # Commission notifications
DIST=https://discord.com/api/webhooks/... # Distribution notifications
NEWS=https://discord.com/api/webhooks/... # Palestine news updates
TICKET=https://discord.com/api/webhooks/... # Ticket logs
# Airtable Configuration
AIRTABLE_KEY=your_airtable_api_key
AIRTABLE_BASE_ID=your_base_id
AIRTABLE_TABLE_ID=your_table_name
# Server Configuration (optional)
NODE_ENV=production # Set to enable HTTPS server on port 10443
```
### 2.4. Hardcoded Configuration
Several IDs are hardcoded in the `src/config/` directory and must be updated for your server:
**File: `src/config/Tickets.ts`**
- `guildId`: Your Discord server ID
- `supportRole`: Your support team role ID
**File: `src/config/Webhooks.ts`**
- `artChannelId`: Channel for art commission posts
- `distributionChannelId`: Channel for distribution posts
**File: `src/config/Trello.ts`**
- Trello board, list, and label IDs (if using Trello integration)
### 2.5. Installation
1. Clone the repository:
```bash
git clone https://git.nhcarrigan.com/NHCarrigan/a4p-bot.git
cd nodejs-typescript-template
```
2. Install dependencies:
```bash
pnpm install
```
3. Configure environment variables (see section 2.3)
4. Build the TypeScript code:
```bash
pnpm build
```
### 2.6. Running the Bot
Start the bot in production mode:
```bash
pnpm start
```
This will:
- Load environment variables from `.env`
- Execute the compiled JavaScript from `prod/index.js`
- Connect to Discord
- Initialize event listeners and scheduled tasks
- Start the HTTP server on port 10080 (HTTP) or 10443 (HTTPS if `NODE_ENV=production`)
### 2.7. Development Workflow
For development and testing:
**Linting:**
```bash
pnpm lint
```
Runs ESLint and Prettier to check code style and formatting.
**Testing:**
```bash
pnpm test
```
Runs Mocha test suite with TypeScript support (timeout: 10 seconds).
**Building:**
```bash
pnpm build
```
Compiles TypeScript files from `src/` to JavaScript in `prod/`.
### 2.8. Architecture Overview
#### 2.8.1. Project Structure
```
a4p-bot/
├── src/
│ ├── index.ts # Main entry point, bot initialization
│ ├── config/ # Configuration files (channels, webhooks, Trello)
│ ├── events/ # Discord event handlers
│ ├── modules/ # Core business logic
│ │ ├── buttons/ # Button interaction handlers
│ │ ├── messages/ # Message processing logic
│ │ ├── modals/ # Modal form handlers
│ │ └── reminders/ # Scheduled reminder tasks
│ ├── interface/ # TypeScript interfaces and types
│ ├── server/ # Express HTTP server
│ └── utils/ # Utility functions
├── prod/ # Compiled JavaScript output
├── logs/ # Ticket conversation logs (runtime)
└── .env # Environment variables (not committed)
```
#### 2.8.2. Core Components
**Discord Bot (src/index.ts:1)**
- Initializes Discord.js client with required intents
- Registers event listeners for messages, reactions, interactions, and member joins
- Creates webhook clients for different notification types
- Starts HTTP server for monitoring
**Event Handlers (src/events/)**
- `onReady.ts:1`: Initializes scheduled jobs, caches messages, sends startup notification
- `onMessageCreate.ts:1`: Handles commands (!mute, !unmute) and ticket message logging
- `onInteractionCreate.ts:1`: Routes button clicks and modal submissions
- `onReactionAdd.ts:1`: Manages art commission and distribution claims
- `onMemberAdd.ts:1`: Auto-assigns member role to new joiners
**Scheduled Tasks (node-schedule)**
- Runs every 60 minutes: Check Airtable for new form submissions
- Runs every 10 minutes: Fetch and post Palestine news updates
- Monday/Wednesday/Friday 9 AM: Send unclaimed art and distribution reminders
- Saturday 9 AM: Send unfinished art and distribution reminders
**Ticket System (src/modules/)**
- `buttons/ticketOpen.ts:1`: Opens modal form for ticket creation
- `modals/handleTicketModal.ts:1`: Creates private thread and initializes log file
- `buttons/ticketClaim.ts:1`: Adds support member's mention to thread
- `buttons/ticketClose.ts:1`: Generates log file, sends to archive, closes thread
- `logTicketMessage.ts:1`: Appends messages to log file in real-time
- `generateLogs.ts:1`: Reads log file and creates Discord attachment
**Airtable Integration (src/modules/checkAirtableRecords.ts:1)**
- Polls Airtable API for new form submissions
- Tracks latest record ID to avoid duplicate processing
- Extracts form fields (name, contact info, request details, reference images)
- Posts formatted messages to commission channel via webhook
**News Feed (src/utils/getNewsFeed.ts:1)**
- Fetches latest articles from Al Jazeera Palestine live blog via GraphQL
- Tracks last posted article ID to prevent duplicates
- Sends new updates to news webhook channel
#### 2.8.3. Data Flow
```
User Action (Discord) → Event Listener → Event Handler → Module Logic
External API / Webhook Call
Response/Notification
Logging (Winston + Debug Webhook)
```
```
Scheduled Task → External API (Airtable/Al Jazeera) → Parse Response
Send to Discord Webhook
Update Cache/State
```
### 2.9. Database
While Prisma ORM is installed as a dependency, the Application does not currently use a database. All state is managed in memory using cache objects attached to the extended Discord client:
- `bot.ticketLogs`: Maps channel IDs to log file message IDs
- `bot.lastArticle`: Tracks the most recent news article ID
Ticket conversation logs are temporarily stored as text files in the `logs/` directory and deleted after being sent to the archive channel.
### 2.10. API Integrations
#### 2.10.1. Airtable REST API
**Endpoint:** `https://api.airtable.com/v0/{BASE_ID}/{TABLE_ID}`
**Method:** GET
**Headers:**
```
Authorization: Bearer {AIRTABLE_KEY}
```
**Query Parameters:**
- `maxRecords=100`: Limit results
- `sort[0][field]=Created`: Sort by creation time
- `sort[0][direction]=desc`: Newest first
**Response Structure (src/interface/AirtableResponse.ts:1):**
```typescript
{
records: [{
id: string;
createdTime: string;
fields: {
Name: string;
"Contact Method": "Email" | "Discord" | "Twitter";
Handle: string;
"What would you like us to draw?": string;
"Anything Else?": string;
Reference?: { url: string }[];
}
}]
}
```
#### 2.10.2. Al Jazeera GraphQL API
**Endpoint:** `https://www.aljazeera.com/graphql` (inferred from code)
**Operations:**
- `SingleLiveBlogChildrensQuery`: Fetch live blog structure
- `LiveBlogUpdateQuery`: Fetch latest blog updates
The bot extracts article content and posts to the news webhook channel.
### 2.11. HTTP Server
The Application includes a minimal Express server (src/server/serve.ts:1):
**Endpoints:**
- `GET /` - Returns HTML landing page with project information
**Ports:**
- HTTP: 10080 (default)
- HTTPS: 10443 (when `NODE_ENV=production`)
Note: The server file includes a TODO comment suggesting deletion after Trello integration is complete.
### 2.12. Logging
The Application uses Winston for structured logging (src/utils/logHandler.ts:1):
**Log Levels:**
- `info`: General information (bot startup, scheduled task execution)
- `error`: Error conditions (API failures, Discord errors)
**Log Format:**
```
[TIMESTAMP] LEVEL: MESSAGE
```
**Log Destinations:**
- Console (stdout)
- Debug webhook (errors only)
### 2.13. Error Handling
All errors are caught and:
1. Logged to console via Winston
2. Sent to the debug webhook with error details
3. Presented to users with friendly messages (when applicable)
Example error flow (src/modules/checkAirtableRecords.ts):
```typescript
try {
// API call
} catch (error) {
logHandler.error("Error message", error);
debugHook.send({ content: "Error details" });
}
```
### 2.14. Performance Considerations
- **Message Caching**: Fetches messages in batches of 100 to reduce API calls
- **Duplicate Prevention**: Tracks latest Airtable record ID and news article ID
- **Rate Limiting**:
- Airtable: 60-minute polling interval
- News API: 10-minute polling interval
- **Concurrent Limits**: Artists/distributors limited to 2 active tasks each
### 2.15. Security Considerations
- **Environment Variables**: Sensitive tokens stored in `.env` (not committed)
- **Role Verification**: Commands require support role for execution (src/events/onMessageCreate.ts:1)
- **Webhook Validation**: Checks webhook existence before use (src/utils/isValidWebhook.ts:1)
- **Privileged Intents**: Requires approval from Discord for `MessageContent` intent
### 2.16. Troubleshooting
**Bot doesn't start:**
- Verify `TOKEN` is valid in `.env`
- Check Node.js version is 22
- Ensure all dependencies are installed: `pnpm install`
**Webhooks not working:**
- Verify webhook URLs are valid and accessible
- Check webhook permissions in Discord channel settings
- Use `isValidWebhook` utility for validation
**Airtable integration failing:**
- Verify `AIRTABLE_KEY`, `AIRTABLE_BASE_ID`, and `AIRTABLE_TABLE_ID`
- Check Airtable API permissions
- Review Airtable API rate limits
**Scheduled tasks not running:**
- Check server timezone matches expected cron schedule
- Review `onReady.ts` for cron expression syntax
- Check debug webhook for error messages
**Ticket logs not saving:**
- Verify write permissions for `logs/` directory
- Check disk space availability
- Review console for Winston logging errors
---
## 3. Legal Documentation
This section is for expansions to our legal policies specific to the Application.
### 3.1. Terms of Service
The Application is subject to our global Terms of Service, which can be found at:
https://docs.nhcarrigan.com/#/terms
### 3.2. Privacy Policy
The Application's privacy practices are governed by our global Privacy Policy, which can be found at:
https://docs.nhcarrigan.com/#/privacy
#### 3.2.1. Data Collection
The Application collects and temporarily stores the following data:
**Discord Data:**
- User IDs (for role assignment, moderation, and ticket management)
- Message content in ticket threads (logged to text files)
- Reaction events (for tracking commission/distribution claims)
- Member join events (for auto-role assignment)
**Airtable Data:**
- Form submission data (name, contact method, handle, art request details)
- Reference images (URLs only)
- Submission timestamps and record IDs
**Temporary Storage:**
- Ticket conversation logs (stored as text files, deleted after archival)
- In-memory cache for article IDs and ticket log mappings
**Data Retention:**
- Ticket logs: Deleted immediately after being sent to the archive channel
- Cached data: Cleared on bot restart
- Airtable record IDs: Stored in memory to prevent duplicate processing
**Third-Party Services:**
The Application integrates with:
- Discord (message delivery and bot functionality)
- Airtable (form submission retrieval)
- Al Jazeera (public news feed)
- Trello (configuration only, no active integration)
Users should review the privacy policies of these services for their data handling practices.
### 3.3. License
This software is licensed under our global software licence:
https://docs.nhcarrigan.com/#/license
**Copyright:** Held by Naomi Carrigan
**License Type:** Proprietary (see link above for full terms)
### 3.4. Code of Conduct
All contributors and users must adhere to our Code of Conduct:
See: `CODE_OF_CONDUCT.md` in the repository root
### 3.5. Security Policy
Security vulnerabilities should be reported according to our Security Policy:
See: `SECURITY.md` in the repository root
For security concerns, please contact us through:
- Chat Server: https://chat.nhcarrigan.com
- Email: contact@nhcarrigan.com
### 3.6. Disclaimer
The Application is provided for the specific purpose of facilitating the Art for Palestine charity event. While we strive for reliability and accuracy, the Application is provided "as-is" without warranties of any kind.
**Moderation Actions:** The Application includes moderation features (mute/unmute). Server administrators and support team members are responsible for using these features in accordance with Discord's Terms of Service and Community Guidelines.
**External Content:** The Application fetches and displays news content from Al Jazeera. We do not control or endorse this content and are not responsible for its accuracy or appropriateness.
**Charity Event:** This Application is specifically designed for the Art for Palestine charity event. For questions about the event itself, please visit https://art4palestine.org or contact the event organizers.
---
## 4. Contributing Documentation
This section is for documentation related to contributing to the Application's codebase.
### 4.1. Contributing Guidelines
Our complete contributing guidelines can be found at:
https://docs.nhcarrigan.com/#/contributing
### 4.2. Getting Started with Development
1. **Fork the Repository**
```bash
# Visit GitHub and fork the repository to your account
```
2. **Clone Your Fork**
```bash
git clone https://github.com/YOUR_USERNAME/nodejs-typescript-template.git
cd nodejs-typescript-template
```
3. **Install Dependencies**
```bash
pnpm install
```
4. **Set Up Environment**
- Create a `.env` file (see section 2.3)
- Create a test Discord server and bot
- Configure test webhooks
5. **Create a Branch**
```bash
git checkout -b feature/your-feature-name
```
### 4.3. Code Style and Standards
The project enforces code style through automated tooling:
**ESLint Configuration:**
- Extends `@nhcarrigan/eslint-config`
- Maximum warnings allowed: 0 (all warnings treated as errors)
- Checks both `src/` and `test/` directories
**Prettier Configuration:**
- Extends `@nhcarrigan/prettier-config`
- Enforces consistent formatting
**TypeScript Configuration:**
- Extends `@nhcarrigan/typescript-config`
- Strict type checking enabled
- Root directory: `./src`
- Output directory: `./prod`
**Running Linters:**
```bash
pnpm lint
```
**Auto-Fixing Issues:**
```bash
# Fix ESLint issues
npx eslint src test --fix
# Fix Prettier issues
npx prettier src test --write
```
### 4.4. Writing Tests
The project uses Mocha and Chai for testing:
**Test Structure:**
- Test files: `test/**/*.spec.ts`
- Test style: TDD (Test-Driven Development)
- Timeout: 10 seconds per test
- Type: TypeScript (via ts-mocha)
**Running Tests:**
```bash
pnpm test
```
**Writing a Test:**
```typescript
import { expect } from "chai";
import { suite, test } from "mocha";
suite("Feature Name", () => {
test("should do something", () => {
// Arrange
const input = "test";
// Act
const result = myFunction(input);
// Assert
expect(result).to.equal("expected");
});
});
```
### 4.5. Documentation Standards
**JSDoc Comments:**
All functions, classes, and complex logic should include JSDoc comments:
```typescript
/**
* Brief description of the function.
*
* @param {Type} paramName - Parameter description
* @returns {Type} Return value description
*/
function myFunction(paramName: Type): Type {
// Implementation
}
```
**Inline Comments:**
Use inline comments for complex logic:
```typescript
// Explanation of why this approach is used
const result = complexOperation();
```
**Commit Messages:**
Follow conventional commit format:
- `feat: Add new feature`
- `fix: Resolve bug in ticket system`
- `docs: Update README`
- `chore: Update dependencies`
- `refactor: Restructure event handlers`
- `test: Add tests for webhook validation`
### 4.6. Pull Request Process
1. **Ensure All Checks Pass:**
- Run `pnpm lint` (must pass with 0 warnings)
- Run `pnpm test` (all tests must pass)
- Run `pnpm build` (must compile without errors)
2. **Create Pull Request:**
- Use a descriptive title
- Provide detailed description of changes
- Reference any related issues
- Include screenshots/videos for UI changes
3. **Code Review:**
- Address reviewer feedback
- Make requested changes
- Re-request review after updates
4. **Merge:**
- Maintainers will merge approved PRs
- Squash and merge is preferred for clean history
### 4.7. Areas for Contribution
The project welcomes contributions in these areas:
**Feature Enhancements:**
- Trello integration completion (see TODO in `src/server/serve.ts`)
- Database integration using Prisma (currently installed but unused)
- Additional moderation commands
- Enhanced reporting and analytics
**Bug Fixes:**
- Report bugs in the #bug-reports forum channel on our Discord community
- Include reproduction steps and environment details
- PRs to fix bugs are highly appreciated
**Documentation:**
- Improve code comments
- Expand user guides
- Add troubleshooting sections
- Create video tutorials
**Testing:**
- Increase test coverage
- Add integration tests
- Create test utilities
**Performance:**
- Optimise message caching
- Reduce webhook API calls
- Improve scheduled task efficiency
### 4.8. Development Environment Setup
**Recommended Tools:**
- **Editor:** VS Code (or any TypeScript-compatible editor)
- **Extensions:**
- ESLint
- Prettier
- TypeScript and JavaScript Language Features
- **Node Version Manager:** nvm (for managing Node.js versions)
- **Package Manager:** pnpm 10
**Discord Developer Portal Setup:**
1. Create a new application at https://discord.com/developers/applications
2. Create a bot user
3. Enable required privileged intents: `Message Content`, `Server Members`
4. Generate and save bot token
5. Invite bot to test server with required permissions
**Webhook Setup:**
1. Create test channels in your Discord server
2. Go to channel settings → Integrations → Webhooks
3. Create webhooks for: debug, comm, dist, news, ticket
4. Copy webhook URLs to `.env`
### 4.9. Debugging
**Console Logging:**
The project uses Winston for logging. To add debug logs:
```typescript
import { logHandler } from "./utils/logHandler.js";
logHandler.info("Informational message");
logHandler.error("Error message", error);
```
**Discord Debug Webhook:**
Error details are automatically sent to the debug webhook. Check this channel for runtime errors.
**VS Code Launch Configuration:**
Create `.vscode/launch.json`:
```json
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Debug Bot",
"runtimeArgs": ["-r", "dotenv/config"],
"program": "${workspaceFolder}/prod/index.js",
"preLaunchTask": "npm: build",
"outFiles": ["${workspaceFolder}/prod/**/*.js"]
}
]
}
```
### 4.10. Common Development Tasks
**Adding a New Command:**
1. Add handler logic to `src/events/onMessageCreate.ts`
2. Implement command functionality in `src/modules/`
3. Update user documentation (section 1)
4. Add tests in `test/`
**Adding a New Button:**
1. Create button handler in `src/modules/buttons/`
2. Export handler in button module
3. Register handler in `src/events/onInteractionCreate.ts`
4. Update user documentation
**Adding a New Event Listener:**
1. Create event handler in `src/events/`
2. Register listener in `src/index.ts`
3. Add error handling
4. Update technical documentation
**Modifying Configuration:**
1. Update relevant file in `src/config/`
2. Document changes in section 2.4
3. Update environment variable documentation if needed
### 4.11. Release Process
(For maintainers)
1. **Version Bump:**
- Update version in `package.json`
- Follow semantic versioning (MAJOR.MINOR.PATCH)
2. **Changelog:**
- Document all changes since last release
- Include breaking changes, features, and bug fixes
3. **Testing:**
- Run full test suite
- Test in staging environment
- Verify all integrations work
4. **Deployment:**
- Build production bundle: `pnpm build`
- Deploy to production server
- Monitor logs for issues
5. **Tag Release:**
```bash
git tag -a v2.0.0 -m "Release version 2.0.0"
git push origin v2.0.0
```
### 4.12. Contact for Contributors
If you have questions about contributing:
- **Discord Forum:** Post in the #bug-reports or #feature-requests forum channels on our Discord community
- **Chat Server:** https://chat.nhcarrigan.com
- **Email:** contact@nhcarrigan.com
We review pull requests as soon as possible and appreciate all contributions to the project.
---
+38
View File
@@ -0,0 +1,38 @@
---
title: Aeris
---
Aeris (hereinafter the "Application") is an authentication service featuring magic links and support for multiple social media platforms
## 1. User Documentation
:::note
This section is coming soon!
:::
This section is for those interacting with a live instance of the Application.
## 2. Technical Documentation
:::note
This section is coming soon!
:::
This section is for those interested in running their own instance of the Application.
## 3. Legal Documentation
:::note
This section is coming soon!
:::
This section is for expansions to our legal policies specific to the Application.
## 4. Contributing Documentation
:::note
This section is coming soon!
:::
This section is for documentation related to contributing to the Application's codebase.
+38
View File
@@ -0,0 +1,38 @@
---
title: Alouette
---
Alouette (hereinafter the "Application") is a web server that allows you to set up arbitrary webhooks and format them to post on Discord.
## 1. User Documentation
:::note
This section is coming soon!
:::
This section is for those interacting with a live instance of the Application.
## 2. Technical Documentation
:::note
This section is coming soon!
:::
This section is for those interested in running their own instance of the Application.
## 3. Legal Documentation
:::note
This section is coming soon!
:::
This section is for expansions to our legal policies specific to the Application.
## 4. Contributing Documentation
:::note
This section is coming soon!
:::
This section is for documentation related to contributing to the Application's codebase.
+6 -7
View File
@@ -14,7 +14,7 @@ Altaria is a friendly Discord bot designed to encourage the use of alt-text (alt
### How to Add Altaria to Your Server
1. Use the official invitation link: [Add to Discord](https://discord.com/oauth2/authorize?client_id=1405356559214837860)
1. Use the official invitation link: [Add to Discord](https://discord.com/oauth2/authorise?client_id=1405356559214837860)
2. Select your server from the dropdown menu
3. Grant the necessary permissions:
- Read Messages/View Channels
@@ -39,7 +39,7 @@ Altaria's reminders fall into five themed categories:
1. **Gentle Encouragement** (20 messages) - Soft, supportive reminders
2. **Playful/Cute** (20 messages) - Fun, anime-inspired messages with emoticons
3. **Educational** (20 messages) - Informative content about accessibility
4. **Community Vibes** (20 messages) - Emphasizing collective responsibility
4. **Community Vibes** (20 messages) - Emphasising collective responsibility
5. **Thematic/Fantasy** (20 messages) - Creative, story-driven reminders
### Getting Help
@@ -130,7 +130,7 @@ This section is for expansions to our legal policies specific to the Application
### License
This software is licensed under Naomi's Public License. Full details available at: https://docs.nhcarrigan.com/#/license
This software is licensed under Naomi's Public Licence. Full details available at: https://docs.nhcarrigan.com/#/license
### Copyright
@@ -153,7 +153,7 @@ Copyright held by Naomi Carrigan (@nhcarrigan).
### Terms of Use
By adding Altaria to your Discord server, you agree to:
- Allow the bot to read messages in authorized channels
- Allow the bot to read messages in authorised channels
- Accept that the bot will send reminder messages about alt-text
- Understand that the bot promotes accessibility and inclusion
@@ -213,10 +213,9 @@ To add new reminder messages to `src/config/reminders.ts:9`:
### Contact for Contributors
- **Discord**: [Chat Server](https://chat.nhcarrigan.com)
- **Forum**: [Discussion Forum](https://forum.nhcarrigan.com)
- **Email**: contact@nhcarrigan.com
- **Issues**: GitHub Issues for bug reports and feature requests
- **Issues**: Post in the #bug-reports or #feature-requests forum channels on our Discord community
### Recognition
Contributors will be recognized in future releases and project documentation as appropriate.
Contributors will be recognised in future releases and project documentation as appropriate.
+440
View File
@@ -0,0 +1,440 @@
---
title: Amari
---
Amari (hereinafter the "Application") is Naomi's Virtual Personal Assistant on Discord, designed to automate community management, content aggregation, mentorship programme coordination, and integration with external services such as GitHub, RetroAchievements, and Baserow.
## 1. User Documentation
This section is for those interacting with a live instance of the Application.
### 1.1. Interacting with Amari
#### 1.1.1. Direct Messages
When you send a Direct Message to Amari, the bot will automatically forward your message to Naomi and respond with an acknowledgment. This provides a direct communication channel to reach Naomi through the bot.
Implementation: `src/modules/respondToDm.ts:19`
#### 1.1.2. Mentions
Amari monitors messages in the Discord server for mentions of "Naomi" or "@nhcarrigan" (user or role). When detected, the bot forwards the message to Naomi for review, helping ensure important messages are not missed. To prevent spam, Amari will not forward mentions from channels that have been active in the last 10 minutes.
Implementation: `src/modules/respondToMention.ts:20`
### 1.2. Mentorship Program
#### 1.2.1. Joining the Program
When you receive the Mentorship role, Amari will automatically send a welcome message in the mentee chat channel with onboarding instructions, including:
- Accepting the GitHub repository invitation
- Reading the mentorship wiki
- Creating your initial goal post
Implementation: `src/modules/processMentorshipRole.ts:20`
#### 1.2.2. Forum Thread Management
Amari automatically manages thread tags in mentorship forums (Goals, Projects, Resume Reviews, and Discussions) to track whose turn it is to respond:
- When Naomi responds to your thread, the tag changes to "Waiting on Member"
- When you respond, the tag changes to "Waiting on Naomi"
Implementation: `src/modules/updateMentorshipThread.ts:43`
#### 1.2.3. Progress Reminders
Every weekday (Monday-Friday) at 9:00 AM, Amari posts progress reminders in configured channels. These reminders prompt you to share:
1. What you accomplished yesterday
2. What you're working on today
3. Any blockers or issues you need help with
Implementation: `src/modules/postProgressReminders.ts:16`
### 1.3. Content and News
#### 1.3.1. Tech News Feed
Amari automatically posts new articles from two sources every hour:
- **FreeCodeCamp News**: Articles are filtered for inappropriate content before posting
- **Hacker News**: Latest posts with comment links
Implementation: `src/modules/postNews.ts:40` and `src/modules/postNews.ts:95`
#### 1.3.2. RetroAchievements
If Naomi unlocks any RetroAchievements, Amari posts them to the gaming channel every 10 minutes. These posts include:
- Achievement title and description
- Game title and console
- Point value
- Badge images
Implementation: `src/modules/checkAchievements.ts:87`
### 1.4. Form Submissions
When you submit a form through the Baserow system, Amari posts a notification to the form submissions channel. Supported forms include:
- Sanction Appeals
- Commission Requests
- Contact Requests
- Event Requests
- Meeting Requests
- Mentorship Requests
- Staff Applications
- Testimonials
- ASCII Submissions
- Contributor Applications
- Product and Community Feedback
- Community Nominations
Implementation: `src/modules/processFormSubmission.ts:22` and `src/config/forms.ts:9`
## 2. Technical Documentation
This section is for those interested in running their own instance of the Application.
### 2.1. Prerequisites
- Node.js (compatible with the version specified in package.json)
- pnpm 10.15.0 or higher
- A Discord Bot Token
- GitHub App credentials (Client ID and Private Key)
- RetroAchievements API Key (optional, for achievements feature)
- Baserow webhook secret (optional, for form submissions)
### 2.2. Environment Variables
The following environment variables must be configured:
| Variable | Required | Description |
|----------|----------|-------------|
| `BOT_TOKEN` | Yes | Discord bot token |
| `GH_CLIENT_ID` | Yes | GitHub App client ID |
| `GH_PRIVATE_KEY` | Yes | GitHub App private key (with newlines as `\\n`) |
| `GH_WEBHOOK_SECRET` | No | Secret for validating GitHub webhook payloads |
| `RA_KEY` | No | RetroAchievements API key |
| `BASEROW_SECRET` | No | Secret for validating Baserow webhook payloads |
### 2.3. Installation
1. Clone the repository
2. Install dependencies:
```bash
pnpm install
```
3. Build the TypeScript code:
```bash
pnpm run build
```
4. Configure environment variables (see section 2.2)
5. Start the application:
```bash
pnpm start
```
Implementation: `src/index.ts:1`
### 2.4. Configuration
#### 2.4.1. Discord IDs
All Discord-specific IDs (channels, roles, users, guilds, tags) are configured in `src/config/ids.ts`. You will need to update these IDs to match your Discord server setup:
- **Channels**: Form submissions, gaming, general, mentee chat, forums, news
- **Roles**: Mentorship, NHCarrigan, representing
- **Users**: Amari (bot), Naomi, NHCarrigan
- **Tags**: Forum tags for tracking thread status
Implementation: `src/config/ids.ts:7`
#### 2.4.2. Form IDs
Form submission notifications are configured in `src/config/forms.ts`. Map Baserow table IDs to human-readable form names.
Implementation: `src/config/forms.ts:9`
#### 2.4.3. Progress Reminders
Progress reminder channels are configured in `src/config/progressReminders.ts`. Configure which channels should receive reminders, associated role IDs, and whether to create threads.
Implementation: `src/config/progressReminders.ts:1`
#### 2.4.4. DM Response
The automatic response sent when users DM the bot is configured in `src/config/responses.ts`.
Implementation: `src/config/responses.ts:1`
### 2.5. Architecture
#### 2.5.1. Core Components
The Application consists of several key components:
1. **Discord Bot** (`discord.js`): Handles all Discord interactions
2. **GitHub Integration** (`octokit`): Manages GitHub webhooks and API interactions
3. **Web Server** (`fastify`): Receives webhooks and serves health monitoring page
4. **Scheduled Jobs** (`node-schedule`): Executes periodic tasks (news, reminders, etc.)
5. **Analytics** (`@nhcarrigan/discord-analytics`): Tracks bot usage metrics
Main entry point: `src/index.ts:1`
#### 2.5.2. Event Handlers
The bot responds to the following Discord events:
- `ClientReady`: Initialize scheduled jobs and cache data (src/index.ts:65)
- `MessageCreate`: Handle guild messages and DMs (src/index.ts:89)
- `InteractionCreate`: Handle button interactions (src/index.ts:97)
- `UserUpdate`: Process guild tag changes (src/index.ts:117)
- `GuildMemberUpdate`: Process mentorship role assignments (src/index.ts:121)
- `GuildMemberAdd`: Log when mentees join (src/index.ts:125)
- `GuildMemberRemove`: Log when mentees leave (src/index.ts:129)
#### 2.5.3. Scheduled Tasks
The following tasks run on a schedule:
- **Hourly** (0 * * * *): Post news from FreeCodeCamp and Hacker News
- **Daily at Midnight** (0 0 * * *): Audit and cache guild tags
- **Weekdays at 9 AM** (0 9 * * 1-5): Post progress reminders
- **Every 10 minutes** (interval): Check RetroAchievements and clear recently active channels
Implementation: `src/index.ts:70-86`
#### 2.5.4. Web Server Endpoints
The Fastify web server provides the following endpoints:
- `GET /`: Health monitoring page with bot information
- `POST /github`: Webhook endpoint for GitHub events (issues, pull requests)
- `POST /form`: Webhook endpoint for Baserow form submissions
The server listens on port 7044.
Implementation: `src/server/serve.ts:61`
### 2.6. Content Filtering
FreeCodeCamp News posts are filtered for inappropriate content using a comprehensive regular expression that detects violations of the Code of Conduct. The regex is defined in `src/modules/postNews.ts:23` and checks for:
- Harassment, bullying, and discrimination
- Hate speech and slurs
- Explicit, violent, or illegal content
- Spam, scams, and fraud
- Drug-related content
- Violence and illegal activities
Posts matching these patterns are automatically rejected and not posted to Discord.
### 2.7. GitHub Integration
When GitHub webhooks are received:
1. **New Issues** (`opened` action): Amari automatically assigns Naomi to the issue
2. **New Pull Requests** (`opened` action): Amari automatically requests Naomi as a reviewer
Implementation: `src/modules/processGitHubEvent.ts:31`
### 2.8. Development
#### 2.8.1. Available Scripts
- `pnpm run build`: Compile TypeScript to JavaScript
- `pnpm start`: Start the production server (uses 1Password for environment variables)
- `pnpm run lint`: Run ESLint with zero warnings policy
- `pnpm test`: Run tests (currently placeholder)
#### 2.8.2. Code Structure
```
src/
├── config/ # Configuration files (IDs, forms, responses, reminders)
├── events/ # Discord event handlers
├── interfaces/ # TypeScript interfaces
├── modules/ # Core functionality modules
├── server/ # Fastify web server
├── utils/ # Utility functions
└── index.ts # Application entry point
```
#### 2.8.3. Dependencies
Key dependencies:
- `discord.js` v14.22.0: Discord API wrapper
- `fastify` v5.5.0: Web server framework
- `octokit` v5.0.3: GitHub API client
- `node-schedule` v2.1.1: Cron job scheduler
- `rss-parser` v3.13.0: RSS feed parser
- `@retroachievements/api` v2.6.0: RetroAchievements API client
- `@nhcarrigan/discord-analytics` v0.0.6: Analytics tracking
- `@nhcarrigan/logger` v1.1.1: Logging utility
## 3. Legal Documentation
This section is for expansions to our legal policies specific to the Application.
### 3.1. License
This software is licensed under Naomi's Public Licence. The full licence text is available in the `LICENSE.md` file in the repository root.
Copyright held by Naomi Carrigan.
### 3.2. Code of Conduct
All users interacting with the Application, whether through Discord or by contributing to the codebase, must adhere to the Code of Conduct defined in `CODE_OF_CONDUCT.md`.
### 3.3. Content Filtering
The Application implements automated content filtering for RSS feeds to ensure posted content complies with the community's Code of Conduct. While this filtering attempts to catch policy violations, it may not be perfect. Users should report any inappropriate content that bypasses the filters.
### 3.4. Data Collection
The Application collects the following data for operational purposes:
- Discord user IDs and message content (forwarded to Naomi for mentions/DMs)
- GitHub usernames (for webhook processing)
- Form submission data (row IDs and table identifiers)
- Analytics metrics (event counts and associated metadata)
All data is processed in accordance with Naomi's privacy policies.
### 3.5. Third-Party Services
The Application integrates with several third-party services:
- **Discord**: Communication platform (Terms of Service apply)
- **GitHub**: Code hosting and webhook integration (Terms of Service apply)
- **RetroAchievements**: Gaming achievement tracking (Terms of Service apply)
- **Baserow**: Form submission processing (Terms of Service apply)
Users of the Application are subject to the terms of service of these platforms.
## 4. Contributing Documentation
This section is for documentation related to contributing to the Application's codebase.
### 4.1. Getting Started
Before contributing, please:
1. Read the `CONTRIBUTING.md` file for contribution guidelines
2. Review the `CODE_OF_CONDUCT.md` to understand community standards
3. Familiarize yourself with the codebase structure (see section 2.8.2)
### 4.2. Development Setup
1. Fork the repository
2. Clone your fork locally
3. Install dependencies: `pnpm install`
4. Create a feature branch: `git checkout -b feature/your-feature-name`
5. Make your changes
6. Run linting: `pnpm run lint`
7. Build the project: `pnpm run build`
8. Test your changes with a local instance
### 4.3. Code Standards
The project enforces the following standards:
- **TypeScript**: All code must be written in TypeScript
- **ESLint**: Code must pass linting with zero warnings (`@nhcarrigan/eslint-config`)
- **TypeScript Config**: Uses `@nhcarrigan/typescript-config`
- **File Headers**: All files must include copyright header with licence and author information
Example header:
```typescript
/**
* @copyright NHCarrigan
* @license Naomi's Public Licence
* @author Naomi Carrigan
*/
```
### 4.4. Module Guidelines
When creating or modifying modules:
1. **Single Responsibility**: Each module should handle one specific feature
2. **Error Handling**: Use try-catch blocks and log errors with the logger utility
3. **Type Safety**: Define interfaces for all data structures
4. **Documentation**: Include JSDoc comments for all exported functions
5. **Testing**: Consider how your changes can be tested (when tests are implemented)
### 4.5. Adding New Features
When adding new features:
1. **Configuration**: Add any new IDs or configuration to appropriate config files
2. **Interfaces**: Define TypeScript interfaces in the `src/interfaces/` directory
3. **Modules**: Create new modules in `src/modules/` for self-contained functionality
4. **Events**: Add event handlers in `src/events/` if needed
5. **Server Routes**: Add new endpoints in `src/server/serve.ts` if needed
6. **Documentation**: Update this documentation file to reflect new features
### 4.6. Submitting Changes
1. Commit your changes with descriptive commit messages
2. Push to your fork
3. Create a Pull Request to the main repository
4. Amari will automatically request Naomi as a reviewer
5. Address any review feedback
6. Once approved, your changes will be merged
### 4.7. Key Files for Contributors
- `src/index.ts`: Main application entry point
- `src/config/ids.ts`: Discord server IDs configuration
- `src/interfaces/amari.ts`: Core application state interface
- `src/server/serve.ts`: Web server and webhook handlers
- `src/modules/`: Individual feature implementations
- `package.json`: Dependencies and scripts
### 4.8. Common Tasks
#### Adding a New Form Type
1. Add the table ID and name to `src/config/forms.ts`
2. The form notification will automatically work via `src/modules/processFormSubmission.ts`
#### Adding a New Scheduled Task
1. Add the schedule in `src/index.ts` within the `ClientReady` event handler
2. Use `node-schedule` cron syntax
3. Create a new module in `src/modules/` for the task logic
#### Adding a New Discord Event Handler
1. Create a handler module in `src/modules/` or `src/events/`
2. Register the event listener in `src/index.ts`
3. Use the `Amari` interface for accessing bot state
#### Modifying Webhook Endpoints
1. Update the route handler in `src/server/serve.ts`
2. Define interfaces for payloads in `src/interfaces/`
3. Ensure proper authentication checking with secrets
### 4.9. Support and Questions
If you have questions about contributing:
- Post in the #bug-reports or #feature-requests forum channels on our Discord community
- Join the Discord server at https://chat.nhcarrigan.com for discussions
- Email contact@nhcarrigan.com for private inquiries
### 4.10. Analytics and Logging
The Application uses custom logging and analytics:
- **Logger**: Use `logger.log()`, `logger.error()`, `logger.metric()` from `src/utils/logger.ts`
- **Metrics**: Log user actions with `logger.metric()` for analytics tracking
- **Error Handling**: Always catch and log errors to help with debugging
Example:
```typescript
await logger.metric("processed_event", 1, { user: userId });
await logger.error("module name", error);
```
+38
View File
@@ -0,0 +1,38 @@
---
title: Amirei
---
Amirei (hereinafter the "Application") is a quick social link aggregator for 'link in bio' pages.
## 1. User Documentation
:::note
This section is coming soon!
:::
This section is for those interacting with a live instance of the Application.
## 2. Technical Documentation
:::note
This section is coming soon!
:::
This section is for those interested in running their own instance of the Application.
## 3. Legal Documentation
:::note
This section is coming soon!
:::
This section is for expansions to our legal policies specific to the Application.
## 4. Contributing Documentation
:::note
This section is coming soon!
:::
This section is for documentation related to contributing to the Application's codebase.
+5 -5
View File
@@ -10,7 +10,7 @@ This section is for those interacting with a live instance of the Application.
### Getting Started
To use Aria Iuvo, [add the bot to your Discord account](https://discord.com/oauth2/authorize?client_id=1338596130207957035) using the provided authorization link. The bot operates as a user-installable application, meaning it can be used across any Discord server or direct message where you have access.
To use Aria Iuvo, [add the bot to your Discord account](https://discord.com/oauth2/authorise?client_id=1338596130207957035) using the provided authorisation link. The bot operates as a user-installable application, meaning it can be used across any Discord server or direct message where you have access.
### Core Features
@@ -172,7 +172,7 @@ This section is for expansions to our legal policies specific to the Application
### Licensing
Aria Iuvo is licensed under Naomi's Public License, as referenced in the global software license documentation available at [docs.nhcarrigan.com](https://docs.nhcarrigan.com/#/license).
Aria Iuvo is licensed under Naomi's Public Licence, as referenced in the global software licence documentation available at [docs.nhcarrigan.com](https://docs.nhcarrigan.com/#/license).
### Data Handling
@@ -192,8 +192,8 @@ Aria Iuvo is licensed under Naomi's Public License, as referenced in the global
### Copyright and Attribution
- **Copyright Holder**: Naomi Carrigan (nhcarrigan)
- **Source Code**: Available at [git.nhcarrigan.com/nhcarrigan/aria-iuvo](https://git.nhcarrigan.com/nhcarrigan/aria-iuvo)
- **Copyright Holder**: Naomi Carrigan (NHCarrigan)
- **Source Code**: Available at [git.nhcarrigan.com/NHCarrigan/aria-iuvo](https://git.nhcarrigan.com/NHCarrigan/aria-iuvo)
- **Attribution**: Uses LibreTranslate for translation services
## 4. Contributing Documentation
@@ -283,7 +283,7 @@ npx vitest run --coverage
### Bug Reports and Feature Requests
#### Issue Templates
- **Bug Reports**: Include steps to reproduce, expected vs actual behavior
- **Bug Reports**: Include steps to reproduce, expected vs actual behaviour
- **Feature Requests**: Describe use case, proposed implementation
- **Translation Issues**: Specify locale and incorrect translation
+38
View File
@@ -0,0 +1,38 @@
---
title: Aurelia
---
Aurelia (hereinafter the "Application") is a blogging platform with markdown editor
## 1. User Documentation
:::note
This section is coming soon!
:::
This section is for those interacting with a live instance of the Application.
## 2. Technical Documentation
:::note
This section is coming soon!
:::
This section is for those interested in running their own instance of the Application.
## 3. Legal Documentation
:::note
This section is coming soon!
:::
This section is for expansions to our legal policies specific to the Application.
## 4. Contributing Documentation
:::note
This section is coming soon!
:::
This section is for documentation related to contributing to the Application's codebase.
+38
View File
@@ -0,0 +1,38 @@
---
title: Aureline
---
Aureline (hereinafter the "Application") is a web app that allows you to create/upload digital badges and certifications and grant them to users
## 1. User Documentation
:::note
This section is coming soon!
:::
This section is for those interacting with a live instance of the Application.
## 2. Technical Documentation
:::note
This section is coming soon!
:::
This section is for those interested in running their own instance of the Application.
## 3. Legal Documentation
:::note
This section is coming soon!
:::
This section is for expansions to our legal policies specific to the Application.
## 4. Contributing Documentation
:::note
This section is coming soon!
:::
This section is for documentation related to contributing to the Application's codebase.
+8 -8
View File
@@ -2,7 +2,7 @@
title: Becca Lyria
---
Becca Lyria (hereinafter the "Application") is an AI-powered Discord bot that provides an interactive text-based role-playing game experience through direct messages. The bot utilizes Anthropic's Claude AI to create dynamic, personalized RPG adventures for users.
Becca Lyria (hereinafter the "Application") is an AI-powered Discord bot that provides an interactive text-based role-playing game experience through direct messages. The bot utilizes Anthropic's Claude AI to create dynamic, personalised RPG adventures for users.
## 1. User Documentation
@@ -14,7 +14,7 @@ Becca Lyria is a user-installable Discord bot that transforms your DMs into an i
### Getting Started
1. **Installation**: [Add Becca Lyria to your Discord account](https://discord.com/oauth2/authorize?client_id=1343341112437248041)
1. **Installation**: [Add Becca Lyria to your Discord account](https://discord.com/oauth2/authorise?client_id=1343341112437248041)
2. **Subscription**: The bot requires an active subscription to use its features
3. **Start Playing**: Use the `/start` command to begin your adventure
@@ -62,7 +62,7 @@ Becca Lyria is built as a modern Discord bot using TypeScript and several key te
**AI Integration:**
- **Provider**: Anthropic Claude (claude-3-5-sonnet-latest for conversations, claude-sonnet-4-20250514 for story starts)
- **Context Management**: Maintains up to 20 messages of conversation history
- **Personality System**: Configurable personality traits for consistent character behavior
- **Personality System**: Configurable personality traits for consistent character behaviour
### Project Structure
@@ -137,7 +137,7 @@ The application requires several environment variables:
- Web server runs on port 5010 for health checks
- Requires Discord bot permissions for DMs and message content
- Needs stable Anthropic API access
- Logging integration with nhcarrigan logging service
- Logging integration with NHCarrigan logging service
## 3. Legal Documentation
@@ -178,13 +178,13 @@ This section is for documentation related to contributing to the Application's c
- Currently no tests implemented (placeholder exists)
**Licensing:**
- Licensed under Naomi's Public License
- Licensed under Naomi's Public Licence
- Copyright held by Naomi Carrigan
- See LICENSE.md for full terms
### Contribution Process
1. **Issues**: Report bugs and request features through GitHub issues
1. **Issues**: Report bugs in the #bug-reports forum channel and feature requests in the #feature-requests forum channel on our Discord community
2. **Pull Requests**: Fork, develop, and submit PRs for review
3. **Code Review**: All changes require review before merging
4. **Guidelines**: Follow established [contributing guidelines](CONTRIBUTING.md)
@@ -206,7 +206,7 @@ This section is for documentation related to contributing to the Application's c
### Contact Information
- **Chat Server**: [http://chat.nhcarrigan.com](http://chat.nhcarrigan.com)
- **Chat Server**: [https://chat.nhcarrigan.com](https://chat.nhcarrigan.com)
- **Email**: contact@nhcarrigan.com
- **Source Code**: [https://git.nhcarrigan.com/nhcarrigan/becca-lyria](https://git.nhcarrigan.com/nhcarrigan/becca-lyria)
- **Source Code**: [https://git.nhcarrigan.com/nhcarrigan/becca-lyria](https://git.nhcarrigan.com/NHCarrigan/becca-lyria)
- **Documentation**: [https://docs.nhcarrigan.com/](https://docs.nhcarrigan.com/)
@@ -0,0 +1,95 @@
---
title: "Beccalia: Origins"
---
Beccalia: Origins (hereinafter the "Game") is originally planned as the story of Becca and Rosalia growing up, this game was only released as a demo.
## 1. Player Documentation
This section is for players who are exploring or playing the Game.
### Controls
- **Keyboard / Gamepad:**
- Arrow keys / D-Pad: Move character
- Z / Enter / A: Confirm / Interact
- X / Esc / B: Cancel / Menu
- C / Space / Y: Open menu (if applicable)
- Shift / L / R: Dash (if enabled)
- **Touch UI (Mobile / Tablet):**
- Tap to move or interact
- On-screen buttons for menu and actions
### Troubleshooting
- Ensure your device meets RPG Maker MZ requirements.
- If the game crashes, try restarting the app or clearing temporary files.
- Ask us on discord if persistent issues occur.
---
## 2. Developer Documentation
This section is for those interested in running, modifying, or extending the Game.
### Engine & Dependencies
- **Engine:** RPG Maker MZ
- **Plugins Used:** none
- **Assets:** All original
### Setup Instructions
1. Open RPG Maker MZ.
2. Load the project folder `beccalia-origins`.
3. Use the "Playtest" button to run the Game locally.
4. To export, use the "Deployment" feature for target platforms.
### Directory Structure
- `data/` — database files (maps, events, actors, items, skills, etc.)
- `img/` — graphics (characters, tilesets, animations, pictures, etc.)
- `audio/` — music and sound effects
- `js/` — plugins and core scripts
- `www/` — exported HTML5 build (if deployed for web)
---
## 3. Legal Documentation
This section expands on legal or licensing information specific to the Game.
### Licensing
This Game is created using RPG Maker MZ. The game code and original content are the property of NHCarrigan. RPG Maker MZ runtime assets are licensed under the terms provided by KADOKAWA Corporation. All original graphics, music, and story content belong to NHCarrigan and are protected by copyright.
### Third-Party Notices
- Any third-party assets, music, or plugins included are credited in game.
## 4. Contributing Documentation
This section is for contributors or collaborators on the Game.
### How to Contribute
- Fork or copy the project folder.
- Submit patches or mods via Git.
- Include a changelog and clear notes on modifications.
### Coding Standards
- Plugins in `js/plugins/` should follow standard JS conventions.
- Comment custom scripts clearly for readability.
### Art & Audio Guidelines
- Maintain original resolutions where possible (48x48 tiles, etc.).
- Use consistent naming for files in `img/` and `audio/`.
### Contact
- For collaboration or questions, ask us on discord.
@@ -0,0 +1,95 @@
---
title: "Beccalia: Prologue"
---
Beccalia: Prologue (hereinafter the "Game") is an introductory story that sets the stage for the Beccalia universe, featuring Becca and Rosalia.
## 1. Player Documentation
This section is for players who are exploring or playing the Game.
### Controls
- **Keyboard / Gamepad:**
- Arrow keys / D-Pad: Move character
- Z / Enter / A: Confirm / Interact
- X / Esc / B: Cancel / Menu
- C / Space / Y: Open menu (if applicable)
- Shift / L / R: Dash (if enabled)
- **Touch UI (Mobile / Tablet):**
- Tap to move or interact
- On-screen buttons for menu and actions
### Troubleshooting
- Ensure your device meets RPG Maker MZ requirements.
- If the game crashes, try restarting the app or clearing temporary files.
- Ask us on discord if persistent issues occur.
---
## 2. Developer Documentation
This section is for those interested in running, modifying, or extending the Game.
### Engine & Dependencies
- **Engine:** RPG Maker MZ
- **Plugins Used:** none
- **Assets:** All original
### Setup Instructions
1. Open RPG Maker MZ.
2. Load the project folder `beccalia-prologue`.
3. Use the "Playtest" button to run the Game locally.
4. To export, use the "Deployment" feature for target platforms.
### Directory Structure
- `data/` — database files (maps, events, actors, items, skills, etc.)
- `img/` — graphics (characters, tilesets, animations, pictures, etc.)
- `audio/` — music and sound effects
- `js/` — plugins and core scripts
- `www/` — exported HTML5 build (if deployed for web)
---
## 3. Legal Documentation
This section expands on legal or licensing information specific to the Game.
### Licensing
This Game is created using RPG Maker MZ. The game code and original content are the property of NHCarrigan. RPG Maker MZ runtime assets are licensed under the terms provided by KADOKAWA Corporation. All original graphics, music, and story content belong to NHCarrigan and are protected by copyright.
### Third-Party Notices
- Any third-party assets, music, or plugins included are credited in game.
## 4. Contributing Documentation
This section is for contributors or collaborators on the Game.
### How to Contribute
- Fork or copy the project folder.
- Submit patches or mods via Git.
- Include a changelog and clear notes on modifications.
### Coding Standards
- Plugins in `js/plugins/` should follow standard JS conventions.
- Comment custom scripts clearly for readability.
### Art & Audio Guidelines
- Maintain original resolutions where possible (48x48 tiles, etc.).
- Use consistent naming for files in `img/` and `audio/`.
### Contact
- For collaboration or questions, ask us on discord.
+5 -5
View File
@@ -83,15 +83,15 @@ posts/ # Markdown blog posts
- **SEO Optimized**: Proper metadata, Open Graph, and Twitter Card support
- **TypeScript**: Full type safety throughout the application
- **Responsive Design**: Mobile-friendly layout
- **Custom Styling**: Branded colors and typography
- **Custom Styling**: Branded colours and typography
## 3. Legal Documentation
### License
The Application is distributed under **Naomi's Public License** as indicated in the source code headers.
The Application is distributed under **Naomi's Public Licence** as indicated in the source code headers.
### Copyright
All source code is copyright © nhcarrigan (Naomi Carrigan).
All source code is copyright © NHCarrigan (Naomi Carrigan).
### Third-Party Dependencies
The Application uses the following open-source libraries:
@@ -131,8 +131,8 @@ Blog post content represents the personal opinions and experiences of the author
All source files must include the standard copyright header:
```typescript
/**
* @copyright nhcarrigan
* @license Naomi's Public License
* @copyright NHCarrigan
* @license Naomi's Public Licence
* @author Naomi Carrigan
*/
```
+293
View File
@@ -0,0 +1,293 @@
---
title: Boost Monitor
---
Boost Monitor (hereinafter the "Application") is a Discord bot that automatically manages special roles for server boosters. The Application monitors server members and removes booster-exclusive roles (such as custom colour roles) when a member stops boosting the server.
## 1. User Documentation
This section is for those interacting with a live instance of the Application.
### Overview
The Discord Boost Monitor operates automatically in the background of your Discord server. It requires no direct user interaction once configured by server administrators.
### How It Works
1. **Automatic Monitoring**: The bot monitors all member updates in the Discord server
2. **Boost Detection**: When a member's boost status changes, the bot checks if they still have the server booster role
3. **Role Management**: If a member no longer has the booster role, the bot automatically removes any configured booster-exclusive roles (such as custom colour roles)
### Key Features
- **Automated Role Removal**: No manual intervention needed when members stop boosting
- **Configurable Roles**: Server-specific booster and colour role IDs can be configured
- **Status Monitoring**: Health check endpoint available at the bot's web interface
- **Debug Webhooks**: Sends status updates and error reports to configured Discord webhooks
### Accessing the Bot
The bot runs as a background service and does not have traditional user-facing commands. Server administrators can monitor its status through:
- **Web Interface**: HTTPS endpoint showing bot status and information
- **Debug Webhook**: Real-time updates sent to configured Discord webhook
- **Server Logs**: Winston-based logging for troubleshooting
## 2. Technical Documentation
This section is for those interested in running their own instance of the Application.
### Prerequisites
- **Node.js**: Version 22 or higher
- **pnpm**: Version 9 or higher
- **Discord Bot Token**: From the Discord Developer Portal
- **SSL Certificates**: For HTTPS server (Let's Encrypt or similar)
- **Sentry Account** (optional): For error tracking
### Installation
1. Clone the repository:
```bash
git clone https://git.nhcarrigan.com/NHCarrigan/boost-monitor.git
cd oogie-woogie-boostie-woostie
```
2. Install dependencies:
```bash
pnpm install
```
3. Configure environment variables by creating a `.env` file:
```bash
cp sample.env .env
```
4. Edit `.env` with your configuration:
```env
DISCORD_TOKEN="your-discord-bot-token"
SENTRY_DSN="your-sentry-dsn"
DEBUG_HOOK="your-discord-webhook-url"
```
### Configuration
#### Role Configuration
Edit `src/config/roles.ts` to configure your server-specific role IDs:
- **colourRoles**: Array of role IDs that should be removed when a member stops boosting (src/config/roles.ts:1-10)
- **boosterRole**: The ID of your server's booster role (src/config/roles.ts:12)
Example:
```typescript
export const colourRoles = [
"883281643098484736", // Red role
"883283836887261204", // Blue role
// Add your colour role IDs here
];
export const boosterRole = "712431541531181177"; // Your booster role ID
```
#### SSL Certificates
The bot expects SSL certificates at the following locations:
- Certificate: `/etc/letsencrypt/live/oogie.nhcarrigan.com/cert.pem`
- Private Key: `/etc/letsencrypt/live/oogie.nhcarrigan.com/privkey.pem`
Update the paths in `src/server/serve.ts:18-22` if your certificates are located elsewhere.
### Building and Running
1. Build the TypeScript code:
```bash
pnpm build
```
2. Start the bot:
```bash
pnpm start
```
3. For development with linting:
```bash
pnpm lint
```
### Architecture
#### Core Components
- **Main Entry Point** (`src/index.ts`): Initializes the Discord client, sets up event listeners, and starts the web server
- **Role Manager** (`src/modules/manageRoles.ts`): Core logic for detecting boost status and removing roles
- **Web Server** (`src/server/serve.ts`): Fastify-based HTTPS server for health monitoring
- **Error Handler** (`src/utils/errorHandler.ts`): Centralised error handling with Sentry integration and Discord webhook notifications
- **Log Handler** (`src/utils/logHandler.ts`): Winston-based logging with timestamps and colour coding
#### Bot Intents
The bot requires the following Discord gateway intents (src/index.ts:22):
- `Guilds`: Access to guild information
- `GuildMembers`: Access to member updates (privileged intent)
Note: The `GuildMembers` intent must be enabled in your bot's Discord Developer Portal settings.
#### Event Flow
1. Bot connects to Discord and fetches guild members (src/index.ts:25-39)
2. Bot listens for `guildMemberUpdate` events (src/index.ts:42-44)
3. On member update, `manageRoles` function checks boost status (src/modules/manageRoles.ts:13-26)
4. If member is not boosting, configured colour roles are removed
5. Errors are logged and sent to Sentry and debug webhook
#### Web Server
The Fastify server runs on port 3443 with HTTPS and provides:
- Health check endpoint at `/` (src/server/serve.ts:27-66)
- Simple HTML page with bot information and links
- Status notifications sent to debug webhook on startup
### Monitoring and Debugging
#### Sentry Integration
All errors are automatically captured and sent to Sentry (src/index.ts:9-17), providing:
- Stack trace rewriting for better debugging
- Full error context and stack traces
- 100% transaction sampling rate
#### Discord Webhooks
Debug webhooks are used for:
- Bot startup confirmation (src/index.ts:26-31)
- Member count logging (src/index.ts:35-39)
- Server startup notification (src/server/serve.ts:73-80)
- Error notifications with embeds (src/utils/errorHandler.ts:22-38)
#### Logging
Winston logger provides console output with:
- Timestamps in `YYYY-MM-DD HH:mm:ss` format
- Colour-coded log levels
- NPM-style log levels (silly, verbose, info, warn, error)
### Deployment Considerations
1. **Privileged Intents**: Ensure `GuildMembers` intent is enabled in Discord Developer Portal
2. **SSL Certificates**: Keep certificates up-to-date (consider using certbot for Let's Encrypt)
3. **Environment Variables**: Secure your `.env` file and never commit it to version control
4. **Port Access**: Ensure port 3443 is accessible for health monitoring
5. **Process Management**: Consider using PM2 or systemd for process management
6. **Single Guild**: Bot is designed for single-guild operation (src/index.ts:33)
## 3. Legal Documentation
This section is for expansions to our legal policies specific to the Application.
### Software License
This Application is licensed under the global software licence maintained by Naomi Carrigan. Full licence details can be found at: https://docs.nhcarrigan.com/#/license
Copyright is held by Naomi Carrigan.
### Privacy Considerations
The Application processes the following Discord data:
- **Guild member information**: Required for detecting boost status changes
- **Role information**: Required for managing booster-exclusive roles
- **Member update events**: Monitored to detect boost status changes
This data is processed in real-time and is not permanently stored by the Application outside of:
- Error logs sent to Sentry
- Debug messages sent to Discord webhooks
- Console logs from Winston logger
For full privacy policy details, see: PRIVACY.md
### Terms of Service
The Application operates as an automated moderation tool for Discord servers. Server administrators are responsible for:
- Configuring appropriate role IDs
- Informing server members about automated role management
- Ensuring compliance with Discord's Terms of Service
For full terms of service, see: TERMS.md
### Security Policy
Security vulnerabilities should be reported according to the guidelines in: SECURITY.md
## 4. Contributing Documentation
This section is for documentation related to contributing to the Application's codebase.
### Getting Started
Full contributing guidelines are available at: https://docs.nhcarrigan.com/#/contributing
### Development Setup
1. Fork and clone the repository
2. Install dependencies with `pnpm install`
3. Create a `.env` file from `sample.env`
4. Make your changes in a feature branch
5. Run linting with `pnpm lint` before committing
6. Build the project with `pnpm build` to ensure TypeScript compiles
### Code Style
The project uses:
- **ESLint**: `@nhcarrigan/eslint-config` (max 0 warnings)
- **Prettier**: `@nhcarrigan/prettier-config`
- **TypeScript**: `@nhcarrigan/typescript-config`
Run `pnpm lint` to check code style before submitting PRs.
### Project Structure
```
src/
├── index.ts # Main entry point
├── config/
│ └── roles.ts # Role ID configuration
├── modules/
│ └── manageRoles.ts # Core role management logic
├── server/
│ └── serve.ts # Fastify web server
└── utils/
├── errorHandler.ts # Centralised error handling
└── logHandler.ts # Winston logging configuration
```
### Testing
Currently, the project does not have automated tests (package.json:11). When contributing new features, consider:
- Manual testing with a test Discord server
- Verifying role removal works correctly
- Testing error handling paths
- Checking webhook notifications
### Submitting Changes
1. Ensure code passes linting: `pnpm lint`
2. Build successfully: `pnpm build`
3. Review the Code of Conduct: CODE_OF_CONDUCT.md
4. Submit a Pull Request with:
- Clear description of changes
- Rationale for the changes
- Any testing performed
### Code of Conduct
All contributors must adhere to the Code of Conduct outlined in: CODE_OF_CONDUCT.md
### Reporting Issues
Bug reports and feature requests should be posted in the #bug-reports or #feature-requests forum channels on our Discord community.
### Contact
For questions or support:
- **Chat Server**: https://chat.nhcarrigan.com
- **Email**: contact@nhcarrigan.com
+6 -6
View File
@@ -2,7 +2,7 @@
title: Caelia
---
Caelia (hereinafter the "Application") is a Discord bot that provides gentle reminders when users utilize non-inclusive language in their messages, helping promote more welcoming and inclusive community spaces.
Caelia (hereinafter the "Application") is a Discord bot that provides gentle reminders when users utilise non-inclusive language in their messages, helping promote more welcoming and inclusive community spaces.
## 1. User Documentation
@@ -10,11 +10,11 @@ This section is for those interacting with a live instance of the Application.
### What is Caelia?
Caelia is a Discord bot designed to help create more inclusive communities by gently notifying users when they may have used language that could be considered non-inclusive. The bot uses the Alex.js library to analyze messages and provide helpful suggestions for more inclusive alternatives.
Caelia is a Discord bot designed to help create more inclusive communities by gently notifying users when they may have used language that could be considered non-inclusive. The bot uses the Alex.js library to analyse messages and provide helpful suggestions for more inclusive alternatives.
### How to Add Caelia to Your Server
1. Visit the authorization link: https://discord.com/oauth2/authorize?client_id=1408530011572535346
1. Visit the authorisation link: https://discord.com/oauth2/authorise?client_id=1408530011572535346
2. Select your server and grant the necessary permissions
3. Caelia will automatically begin monitoring messages in channels where she has access
@@ -129,7 +129,7 @@ This section is for expansions to our legal policies specific to the Application
### License
This software is licensed under Naomi's Public License. All code is copyright NHCarrigan and authored by Naomi Carrigan.
This software is licensed under Naomi's Public Licence. All code is copyright NHCarrigan and authored by Naomi Carrigan.
### Data Handling
@@ -199,13 +199,13 @@ src/
- **Language Rules**: Enhancing Alex.js configuration for better accuracy
- **Error Handling**: Improving error recovery and user experience
- **Performance**: Optimizing message processing speed
- **Performance**: Optimising message processing speed
- **Features**: Adding new functionality while maintaining simplicity
- **Documentation**: Improving user and developer documentation
### Reporting Issues
- Use GitHub issues for bug reports
- Post in the #bug-reports forum channel on our Discord community for bug reports
- Join the Discord support server for discussions: https://chat.nhcarrigan.com
- Email support: contact@nhcarrigan.com
+38
View File
@@ -0,0 +1,38 @@
---
title: Calenelle
---
Calenelle (hereinafter the "Application") is a group coordination app with event scheduling and such.
## 1. User Documentation
:::note
This section is coming soon!
:::
This section is for those interacting with a live instance of the Application.
## 2. Technical Documentation
:::note
This section is coming soon!
:::
This section is for those interested in running their own instance of the Application.
## 3. Legal Documentation
:::note
This section is coming soon!
:::
This section is for expansions to our legal policies specific to the Application.
## 4. Contributing Documentation
:::note
This section is coming soon!
:::
This section is for documentation related to contributing to the Application's codebase.
+42 -43
View File
@@ -2,18 +2,18 @@
title: Callista
---
Callista (hereinafter the "Application") is a Discord bot that allows users to bookmark messages so they can find them later. The Application provides a simple interface for saving message links via DM, with optional note-taking capabilities to help organize and remember why messages were bookmarked.
Callista (hereinafter the "Application") is a Discord bot that allows users to bookmark messages so they can find them later. The Application provides a simple interface for saving message links via DM, with optional note-taking capabilities to help organise and remember why messages were bookmarked.
## 1. User Documentation
This section is for those interacting with a live instance of the Application.
### 1.1 Adding the Bot
### 1.1. Adding the Bot
Callista is available as a Discord user-installable application. You can add Callista to your Discord account by visiting:
https://discord.com/oauth2/authorize?client_id=1391494389477412906
https://discord.com/oauth2/authorise?client_id=1391494389477412906
### 1.2 Bookmarking Messages
### 1.2. Bookmarking Messages
To bookmark a message:
@@ -23,7 +23,7 @@ To bookmark a message:
**Note:** You must have Direct Messages enabled to receive bookmarks. If you receive an error, check your Discord privacy settings.
### 1.3 Adding Notes to Bookmarks
### 1.3. Adding Notes to Bookmarks
Each bookmark can have an associated note to help you remember context:
@@ -32,7 +32,7 @@ Each bookmark can have an associated note to help you remember context:
3. Enter your note (1-1000 characters)
4. Your note will be appended to the bookmark message
### 1.4 Editing Notes
### 1.4. Editing Notes
To edit an existing note on a bookmark:
@@ -40,7 +40,7 @@ To edit an existing note on a bookmark:
2. Update the note text in the modal
3. The bookmark message will be updated with your new note
### 1.5 Deleting Bookmarks
### 1.5. Deleting Bookmarks
To delete a bookmark from your DMs:
@@ -50,14 +50,14 @@ To delete a bookmark from your DMs:
**Note:** The Delete command only works in DMs with Callista (bot DM context).
### 1.6 Additional Features
### 1.6. Additional Features
Each bookmark message includes convenient buttons:
- **Add Note/Edit Note**: Add or modify notes on your bookmarks
- **Join our Discord**: Link to the support server (https://chat.nhcarrigan.com)
- **Donate**: Premium button for supporting the bot developer
### 1.7 Command Reference
### 1.7. Command Reference
| Command | Type | Context | Description |
|---------|------|---------|-------------|
@@ -68,14 +68,14 @@ Each bookmark message includes convenient buttons:
This section is for those interested in running their own instance of the Application.
### 2.1 Prerequisites
### 2.1. Prerequisites
- Node.js (compatible with version specified in package.json)
- pnpm 10.17.1 or higher (specified in packageManager field)
- A Discord Bot Token
- 1Password CLI (op) for production environment variables (or modify start script)
### 2.2 Dependencies
### 2.2. Dependencies
**Runtime Dependencies:**
- `discord.js` (14.22.1): Discord API wrapper
@@ -87,7 +87,7 @@ This section is for those interested in running their own instance of the Applic
- ESLint with @nhcarrigan configuration
- tsx for development execution
### 2.3 Installation
### 2.3. Installation
1. Clone the repository:
```bash
@@ -111,7 +111,7 @@ This section is for those interested in running their own instance of the Applic
```
Copy the output JSON and register it via the Discord Developer Portal or API.
### 2.4 Building
### 2.4. Building
Compile TypeScript to JavaScript:
```bash
@@ -120,7 +120,7 @@ pnpm run build
Output is generated in the `prod/` directory.
### 2.5 Running
### 2.5. Running
**Production:**
```bash
@@ -134,7 +134,7 @@ This uses 1Password CLI to inject environment variables. Modify the start script
tsx src/index.ts
```
### 2.6 Architecture Overview
### 2.6. Architecture Overview
**Project Structure:**
```
@@ -163,7 +163,7 @@ src/
3. **Web Server** (`server/serve.ts:54-79`): Runs on port 6111 for health monitoring
4. **Message Context Commands**: Registered via `commandData.js` with user-install integration
### 2.7 Bot Configuration
### 2.7. Bot Configuration
The bot requires the following Discord application settings:
@@ -194,20 +194,20 @@ The bot requires the following Discord application settings:
]
```
### 2.8 Environment Variables
### 2.8. Environment Variables
| Variable | Required | Description |
|----------|----------|-------------|
| BOT_TOKEN | Yes | Discord bot token for authentication |
### 2.9 Monitoring and Health Checks
### 2.9. Monitoring and Health Checks
The Application exposes a web server on port 6111:
- **Endpoint:** `GET /`
- **Response:** HTML page with bot information
- **Purpose:** Health monitoring and bot information display
### 2.10 Logging
### 2.10. Logging
Logging is handled via `@nhcarrigan/logger` with the following log levels:
- `debug`: Informational messages (bot online, server started)
@@ -215,14 +215,14 @@ Logging is handled via `@nhcarrigan/logger` with the following log levels:
Logs are written from `utils/logger.ts:1`.
### 2.11 Error Handling
### 2.11. Error Handling
The Application implements error handling for:
- Failed DM delivery (user has DMs disabled) - `interactions/bookmark.ts:43-46`
- Missing message context for modals - `index.ts:46-52`
- Server startup failures - `server/serve.ts:66-77`
### 2.12 Deployment Considerations
### 2.12. Deployment Considerations
1. **Port Configuration:** The web server runs on port 6111 by default
2. **Secrets Management:** The default start script uses 1Password CLI
@@ -233,15 +233,15 @@ The Application implements error handling for:
This section is for expansions to our legal policies specific to the Application.
### 3.1 License
### 3.1. License
This Application is licensed under **Naomi's Public License** as indicated in the source file headers.
This Application is licensed under **Naomi's Public Licence** as indicated in the source file headers.
Copyright held by **NHCarrigan / Naomi Carrigan**.
Full license text available at: https://docs.nhcarrigan.com/#/license
Full licence text available at: https://docs.nhcarrigan.com/#/license
### 3.2 Privacy
### 3.2. Privacy
Privacy policy document: `PRIVACY.md` in the repository root.
@@ -254,17 +254,17 @@ Privacy policy document: `PRIVACY.md` in the repository root.
**Data Retention:** Data persists as long as users keep their DM messages. Users can delete bookmarks at any time using the Delete command.
### 3.3 Terms of Service
### 3.3. Terms of Service
Terms of service document: `TERMS.md` in the repository root.
### 3.4 Security
### 3.4. Security
Security policy document: `SECURITY.md` in the repository root.
For security concerns, please follow the reporting procedures outlined in the security policy.
### 3.5 Code of Conduct
### 3.5. Code of Conduct
Code of conduct document: `CODE_OF_CONDUCT.md` in the repository root.
@@ -272,7 +272,7 @@ Code of conduct document: `CODE_OF_CONDUCT.md` in the repository root.
This section is for documentation related to contributing to the Application's codebase.
### 4.1 Contributing Guidelines
### 4.1. Contributing Guidelines
Contributing guidelines document: `CONTRIBUTING.md` in the repository root.
@@ -281,7 +281,7 @@ Before contributing, please review:
2. The Contributing Guidelines (`CONTRIBUTING.md`)
3. The License terms (`LICENSE.md`)
### 4.2 Development Setup
### 4.2. Development Setup
1. Fork the repository
2. Clone your fork
@@ -290,7 +290,7 @@ Before contributing, please review:
5. Copy your bot token to a `prod.env` file (or use environment variables directly)
6. Run the development server: `tsx src/index.ts`
### 4.3 Code Standards
### 4.3. Code Standards
The project uses:
- **TypeScript** (5.9.2) with strict type checking
@@ -304,13 +304,13 @@ pnpm run lint
**Note:** The lint script uses `--max-warnings 0`, so warnings are treated as errors.
### 4.4 Code Style Notes
### 4.4. Code Style Notes
- All source files include copyright headers with `@copyright`, `@license`, and `@author` tags
- Some ESLint rules are selectively disabled with comments (e.g., `index.ts:26`)
- The project uses ESM (module) syntax (`"type": "module"` in package.json)
### 4.5 Testing
### 4.5. Testing
Currently, the project has a placeholder test script:
```bash
@@ -319,7 +319,7 @@ pnpm test
This exits with code 0 (no tests configured yet).
### 4.6 Pull Request Process
### 4.6. Pull Request Process
1. Create a feature branch from `main`
2. Make your changes following the code standards
@@ -328,12 +328,12 @@ This exits with code 0 (no tests configured yet).
5. Submit a pull request with a clear description of changes
6. Address any review feedback
### 4.7 Adding New Features
### 4.7. Adding New Features
**Adding a new button:**
1. Create a new file in `src/buttons/` exporting a `ButtonBuilder`
2. Import and add the button to the relevant `ActionRowBuilder` in `index.ts`
3. Add handler logic in `handleInteraction` if the button requires custom behavior
3. Add handler logic in `handleInteraction` if the button requires custom behaviour
**Adding a new command:**
1. Create a handler in `src/interactions/`
@@ -346,28 +346,27 @@ This exits with code 0 (no tests configured yet).
2. Add modal handling logic in the `isModalSubmit` section of `handleInteraction`
3. Link the modal to a button or command that calls `showModal()`
### 4.8 Repository Information
### 4.8. Repository Information
- **Main Branch:** `main`
- **Package Manager:** pnpm (lockfile version: 10.17.1)
- **CI/CD:** Configuration available in `.gitea/` directory
- **Editor Configuration:** VSCode settings in `.vscode/`
### 4.9 Contact
### 4.9. Contact
For questions or support:
- **Support Server:** https://chat.nhcarrigan.com
- **Email:** contact@nhcarrigan.com
- **Documentation:** https://docs.nhcarrigan.com/
- **Source Code:** https://git.nhcarrigan.com/nhcarrigan/callista
- **Source Code:** https://git.nhcarrigan.com/NHCarrigan/callista
### 4.10 Issue Reporting
### 4.10. Issue Reporting
Please report bugs and feature requests via GitHub/Gitea issues at:
https://git.nhcarrigan.com/nhcarrigan/callista
Please report bugs in the [Bug Reports](https://support.nhcarrigan.com/c/bug-reports/6) category and feature requests in the [Feature Requests](https://support.nhcarrigan.com/c/feature-requests/7) category on our support forum.
Include:
- Clear description of the issue or feature
- Steps to reproduce (for bugs)
- Expected vs actual behavior
- Expected vs actual behaviour
- Environment details (Discord client version, etc.)
+4 -4
View File
@@ -37,7 +37,7 @@ Celestine (hereinafter the "Application") is a comprehensive paid moderation bot
#### User Experience Features
- **`/rank`** - View personal level and XP in the server
- **`/leaderboard`** - Browse server level rankings with pagination
- **`/profile`** - Customize profile appearance (avatar, colors, background)
- **`/profile`** - Customise profile appearance (avatar, colours, background)
- **`/role`** - Self-assign permitted roles
- **`/birthday`** - Set birthday for automatic celebrations
- **`/level-role`** - Configure roles automatically assigned at specific levels
@@ -55,8 +55,8 @@ Celestine (hereinafter the "Application") is a comprehensive paid moderation bot
#### Leveling System
- Automatic XP gain from message activity with anti-spam cooldowns
- Customizable level roles that auto-assign at specified levels
- Visual profile cards with customizable backgrounds and colors
- Customisable level roles that auto-assign at specified levels
- Visual profile cards with customisable backgrounds and colours
- Server leaderboards with pagination
#### Security & Moderation
@@ -277,7 +277,7 @@ The Application processes and stores:
- Modular command structure for maintainability
- Event-driven architecture for real-time responses
- Database abstraction through Prisma ORM
- Configuration-driven behavior customization
- Configuration-driven behaviour customisation
### Extension Points
+6 -7
View File
@@ -10,7 +10,7 @@ This section is for those interacting with a live instance of the Application.
### Getting Started
1. **Add Chibika to Your Discord Server**: Use the [Discord OAuth2 authorization link](https://discord.com/oauth2/authorize?client_id=1396225647269122098) to add Chibika to your Discord server.
1. **Add Chibika to Your Discord Server**: Use the [Discord OAuth2 authorisation link](https://discord.com/oauth2/authorise?client_id=1396225647269122098) to add Chibika to your Discord server.
2. **Purchase Server Subscription**: To use Chibika's features, you must purchase a server subscription through Discord's built-in store system.
@@ -21,7 +21,7 @@ Displays information about Chibika, including:
- What the bot does
- How to get started with server subscriptions
- Support and help resources
- Links to Discord server and forum for assistance
- Links to Discord server for assistance
#### `/ascii [category]`
Retrieves random ASCII art from the specified category:
@@ -44,7 +44,6 @@ Retrieves random emoji-based ASCII art from the emoji collection.
If you encounter issues or need assistance:
- Join the [Discord support server](https://chat.nhcarrigan.com)
- Visit the [support forum](https://forum.nhcarrigan.com)
- Contact via email: `contact@nhcarrigan.com`
## 2. Technical Documentation
@@ -134,7 +133,7 @@ src/
#### ASCII Art Management
- Structured data format with `text` and `author` fields (`src/interfaces/ascii.ts:7`)
- Category-based organization (anime, cats, emoji)
- Category-based organisation (anime, cats, emoji)
- Random selection utility (`src/utils/getRandomValue.ts`)
#### Web Server
@@ -147,7 +146,7 @@ src/
This section is for expansions to our legal policies specific to the Application.
### Licensing
- Source code licensed under Naomi's Public License
- Source code licensed under Naomi's Public Licence
- Copyright held by Naomi Carrigan (@nhcarrigan)
### Terms and Privacy
@@ -156,7 +155,7 @@ This section is for expansions to our legal policies specific to the Application
### Security
- Security guidelines and reporting procedures outlined in `SECURITY.md`
- Responsible disclosure encouraged through GitHub issues
- Responsible disclosure encouraged through the #bug-reports forum channel on our Discord community
## 4. Contributing Documentation
@@ -181,7 +180,7 @@ This section is for documentation related to contributing to the Application's c
6. Submit pull request
### Issue Reporting
- Bug reports and feature requests via [GitHub Issues](https://github.com/anthropics/claude-code/issues)
- Bug reports and feature requests via [GitHub Issues](https://github.com/anthropics/claude-code/issues) (external project)
- Security issues through responsible disclosure (see `SECURITY.md`)
### Community
+38
View File
@@ -0,0 +1,38 @@
---
title: Clarion
---
Clarion (hereinafter the "Application") is a Discord bot with dashboard that allows server mangers to post and edit announcements, rules, and similar.
## 1. User Documentation
:::note
This section is coming soon!
:::
This section is for those interacting with a live instance of the Application.
## 2. Technical Documentation
:::note
This section is coming soon!
:::
This section is for those interested in running their own instance of the Application.
## 3. Legal Documentation
:::note
This section is coming soon!
:::
This section is for expansions to our legal policies specific to the Application.
## 4. Contributing Documentation
:::note
This section is coming soon!
:::
This section is for documentation related to contributing to the Application's codebase.
+13 -13
View File
@@ -2,7 +2,7 @@
title: Cordelia Taryne
---
Cordelia Taryne (hereinafter the "Application") is an AI-powered multi-purpose assistant Discord bot that leverages Anthropic's Claude AI to provide various text processing, analysis, and assistance features. The bot features a distinctive vampire personality named Cordelia with haughty and self-inflated characteristics, providing users with intelligent assistance while maintaining a unique character persona.
Cordelia Taryne (hereinafter the "Application") is an AI-powered multi-purpose assistant Discord bot that leverages Anthropic's Claude AI to provide various text processing, analysis, and assistance features. The bot features a distinctive vampire personality named Cordelia with haughty and self-inflated characteristics, providing users with intelligent assistance whilst maintaining a unique character persona.
## 1. User Documentation
@@ -10,7 +10,7 @@ This section is for those interacting with a live instance of the Application.
### Getting Started
To use Cordelia Taryne, [add her to your Discord account](https://discord.com/oauth2/authorize?client_id=1338664192714211459).
To use Cordelia Taryne, [add her to your Discord account](https://discord.com/oauth2/authorise?client_id=1338664192714211459).
### Available Commands
@@ -42,8 +42,8 @@ Cordelia Taryne offers the following slash commands:
- **Access**: Requires active subscription
#### `/mood`
- **Description**: Analyze the sentiment and mood of text passages
- **Parameters**: `text` (required, max 2000 characters) - The text to analyze
- **Description**: Analyse the sentiment and mood of text passages
- **Parameters**: `text` (required, max 2000 characters) - The text to analyse
- **Usage**: `/mood text: I had an amazing day at the beach!`
- **Access**: Requires active subscription
@@ -55,7 +55,7 @@ Cordelia Taryne offers the following slash commands:
#### `/summarise`
- **Description**: Generate concise summaries of longer text passages
- **Parameters**: `text` (required, max 2000 characters) - The text to summarize
- **Parameters**: `text` (required, max 2000 characters) - The text to summarise
- **Usage**: `/summarise text: [long article or document text]`
- **Access**: Requires active subscription
@@ -71,14 +71,14 @@ Most features require an active subscription. The bot uses Discord's premium sub
Cordelia has a distinctive personality:
- **Character**: A vampire assistant with a haughty and self-inflated demeanour
- **Appearance**: Blonde hair in twin buns, pink-red cat-like eyes, pale skin, gold dress
- **Behavior**: Subtly condescending but never directly rude or insulting
- **Behaviour**: Subtly condescending but never directly rude or insulting
- **Communication**: Professional assistance without role-playing text
### Support and Feedback
- **Bug Reports**: Open a GitHub issue
- **Feature Requests**: Create a GitHub issue with the enhancement label
- **General Support**: Visit the [chat server](http://chat.nhcarrigan.com)
- **Bug Reports**: Post in the [Bug Reports](https://support.nhcarrigan.com/c/bug-reports/6) category on our support forum
- **Feature Requests**: Post in the [Feature Requests](https://support.nhcarrigan.com/c/feature-requests/7) category on our support forum
- **General Support**: Visit the [chat server](https://chat.nhcarrigan.com)
- **Contact**: Email `contact@nhcarrigan.com`
## 2. Technical Documentation
@@ -113,7 +113,7 @@ Required environment variables:
1. **Clone the repository**:
```bash
git clone https://github.com/nhcarrigan/cordelia-taryne.git
git clone https://git.nhcarrigan.com/NHCarrigan/cordelia-taryne.git
cd cordelia-taryne
```
@@ -217,7 +217,7 @@ The Application integrates with:
### Intellectual Property
- Bot personality and character design are original creations
- Source code is licensed under Naomi's Public License
- Source code is licensed under Naomi's Public Licence
- Avatar and visual assets are proprietary
- AI model responses are generated by Anthropic's Claude
@@ -264,7 +264,7 @@ src/
### Contribution Process
1. **Issue Creation**: Create detailed GitHub issues for bugs/features
1. **Issue Creation**: Post detailed bug reports or feature requests in the appropriate support forum category ([Bug Reports](https://support.nhcarrigan.com/c/bug-reports/6) or [Feature Requests](https://support.nhcarrigan.com/c/feature-requests/7))
2. **Discussion**: Discuss approach before starting work
3. **Implementation**: Follow coding standards and patterns
4. **Testing**: Test thoroughly in development environment
@@ -288,7 +288,7 @@ src/
4. Test subscription gating and error handling
5. Update documentation
#### Modifying AI Behavior
#### Modifying AI Behaviour
1. Update personality configuration if needed
2. Modify system prompts in relevant modules
3. Test with various inputs and edge cases
+661
View File
@@ -0,0 +1,661 @@
---
title: Data API
---
Data API (hereinafter the "Application") is a lightweight web API server designed to host and serve personal and professional data for the NHCarrigan ecosystem. The Application acts as a centralised headless CMS, providing structured data in both YAML and JSON formats to power multiple websites, applications, and Discord bots.
## 1. User Documentation
This section is for those interacting with a live instance of the Application.
### 1.1. API Overview
The Data Server provides a RESTful API that serves various categories of data through simple HTTP GET requests. All endpoints support both YAML and JSON formats.
**Base URL**: The server runs on `https://data.nhcarrigan.com'.
**Root Endpoint**:
- `GET /` - Returns a welcome message: "Welcome to the NHCarrigan Data API!"
### 1.2. Available Endpoints
All data endpoints are available in two formats by changing the file extension:
#### Projects Data
- `GET /projects.json` - Returns project portfolio data in JSON format
- `GET /projects.yml` - Returns project portfolio data in YAML format
Contains information about development projects including:
- Project names and descriptions
- Project URLs and repository links
- Project categories (websites, community tools, Discord bots, etc.)
- Avatar images
- Status indicators (premium, work-in-progress)
#### Resume Data
- `GET /resume.json` - Returns resume data in JSON format
- `GET /resume.yml` - Returns resume data in YAML format
Contains comprehensive professional information:
- Employment history (current and prior positions)
- Volunteer experience
- Education credentials
- Professional certifications
- Notable projects
- Publications and articles
#### Testimonials
- `GET /testimonials.json` - Returns testimonials in JSON format
- `GET /testimonials.yml` - Returns testimonials in YAML format
Contains professional testimonials and recommendations with:
- Testimonial author names
- Testimonial content
- Date information
#### Donation Information
- `GET /donate.json` - Returns donation platform data in JSON format
- `GET /donate.yml` - Returns donation platform data in YAML format
Contains details about donation platforms:
- Platform names and URLs
- Icon references
- Colour schemes
- Platform descriptions
#### Funding Information
- `GET /funding.json` - Returns comprehensive funding data in JSON format
- `GET /funding.yml` - Returns comprehensive funding data in YAML format
Contains detailed funding information:
- Entity details
- Project listings with unique identifiers
- Funding channel information
- Subscription plan details
- Financial history and records
### 1.3. CORS Support
The Application has CORS enabled for all origins, allowing consumption from any domain without cross-origin restrictions.
### 1.4. Content Types
The Application automatically sets appropriate Content-Type headers:
- JSON endpoints: `application/json`
- YAML endpoints: `text/yaml` or `application/x-yaml`
### 1.5. Rate Limiting
Currently, the Application does not implement rate limiting. Users should be respectful of the server resources and avoid excessive requests.
### 1.6. Data Freshness
Data is compiled from YAML source files during the build process. To receive updated data, the server must be rebuilt and restarted when source data changes.
## 2. Technical Documentation
This section is for those interested in running their own instance of the Application.
### 2.1. Prerequisites
Before running the Application, ensure you have the following installed:
- **Node.js**: Latest LTS version recommended
- **pnpm**: Version 10.17.0 (specified in package.json as packageManager)
- **1Password CLI** (optional): For secure environment variable management in production
### 2.2. Technology Stack
- **Runtime**: Node.js with ES modules
- **Language**: TypeScript 5.9.2
- **Web Framework**: Fastify 5.6.1
- **Data Format**: YAML (source) → JSON (runtime)
- **Testing**: Vitest 3.2.4
- **Linting**: ESLint 9.36.0
- **Package Manager**: pnpm 10.17.0
### 2.3. Installation
1. Clone the repository:
```bash
git clone <repository-url>
cd data
```
2. Install dependencies using pnpm:
```bash
pnpm install
```
### 2.4. Project Structure
```
/data/
├── src/ # TypeScript source code
│ ├── index.ts # Main entry point - Fastify server
│ ├── modules/
│ │ └── buildRoutes.ts # Dynamic route builder
│ ├── interfaces/ # TypeScript type definitions
│ │ ├── projects.ts
│ │ ├── resume.ts
│ │ ├── testimonials.ts
│ │ ├── donate.ts
│ │ └── funding.ts
│ └── utils/
│ └── logger.ts # Logger configuration
├── data/ # Data directory (YAML sources and JSON builds)
│ ├── projects.yml / .json
│ ├── resume.yml / .json
│ ├── testimonials.yml / .json
│ ├── donate.yml / .json
│ └── funding.yml / .json
├── test/
│ └── yaml.spec.ts # Comprehensive validation tests
├── prod/ # Compiled JavaScript output
├── build.js # YAML to JSON build script
├── tsconfig.json # TypeScript configuration
└── package.json # Project metadata and scripts
```
### 2.5. Configuration
The Application uses the following configuration points:
#### Server Port
- Default: Port 9999
- Location: `src/index.ts:34`
- Can be modified by editing the port number in the source code
#### Data Directory
- Location: `./data`
- Contains both source YAML files and built JSON files
- Referenced in: `src/modules/buildRoutes.ts`
#### CORS Settings
- Currently configured to allow all origins
- Location: `src/index.ts:30`
- Can be restricted by modifying the Fastify CORS configuration
### 2.6. Data Management
#### Adding New Data Endpoints
1. Create a new YAML file in the `/data` directory:
```bash
touch data/newdata.yml
```
2. Create a corresponding TypeScript interface in `src/interfaces/`:
```typescript
// src/interfaces/newdata.ts
export interface NewData {
// Define your data structure
}
```
3. The Application will automatically:
- Generate routes for `/newdata.yml` and `/newdata.json`
- Serve the content when the server restarts
#### Editing Existing Data
1. Edit the YAML files in the `/data` directory
2. Run the build command to convert YAML to JSON
3. Restart the server to serve updated data
The YAML files are the source of truth. Always edit YAML files, not JSON files, as JSON files are auto-generated.
### 2.7. Build Process
The build process consists of two steps:
1. **YAML to JSON Conversion**: `node build.js`
- Reads all YAML files from the data directory
- Generates corresponding JSON files
- Preserves the human-readable YAML as the source of truth
2. **TypeScript Compilation**: `tsc`
- Compiles TypeScript source code to JavaScript
- Outputs to the `/prod` directory
- Uses configuration from `tsconfig.json` (extends @nhcarrigan/typescript-config)
To run the complete build:
```bash
pnpm run build
```
### 2.8. Available Scripts
```bash
# Build (YAML → JSON + TypeScript compilation)
pnpm run build
# Start production server (with 1Password environment variables)
pnpm run start
# Run test suite
pnpm test
# Linting
pnpm run lint # Run all linters
pnpm run lint:ts # ESLint only
pnpm run lint:spelling # Spell check YAML files
pnpm run lint:yaml # YAML validation
```
### 2.9. Testing
The Application includes comprehensive test coverage using Vitest.
**Test File**: `test/yaml.spec.ts`
**What is tested**:
- Data structure validation against TypeScript interfaces
- URL reachability for all external links (with retry logic)
- Date format validation
- Required field presence
- Data type correctness
**Running tests**:
```bash
pnpm test
```
Tests have a 120-second timeout to accommodate URL validation checks, which may be rate-limited.
### 2.10. Development Workflow
1. **Make changes to data**:
- Edit YAML files in `/data` directory
- Use your preferred text editor
2. **Validate your changes**:
```bash
pnpm run lint:yaml # Validate YAML syntax
pnpm run lint:spelling # Check spelling
pnpm test # Run full test suite
```
3. **Build the application**:
```bash
pnpm run build
```
4. **Start the server locally**:
```bash
node ./prod/index.js
```
Or with 1Password environment variables:
```bash
pnpm run start
```
5. **Test endpoints**:
```bash
curl http://localhost:9999/projects.json
```
### 2.11. Deployment
#### Environment Variables
The production start script uses 1Password CLI for secure environment variable management:
```bash
op run --env-file ./prod.env -- node ./prod/index.js
```
Create a `prod.env` file with 1Password references for any required environment variables.
#### Production Considerations
1. **Reverse Proxy**: Consider running the Application behind a reverse proxy (nginx, Apache) for:
- SSL/TLS termination
- Rate limiting
- Caching
- Load balancing
2. **Process Management**: Use a process manager to ensure uptime:
- PM2
- systemd
- Docker with restart policies
3. **Monitoring**: Implement monitoring for:
- Server health
- Response times
- Error rates
4. **Backups**: Regularly backup the `/data` directory, as it contains the source YAML files.
### 2.12. Troubleshooting
#### Server won't start
- Verify port 9999 is not in use
- Check that dependencies are installed (`pnpm install`)
- Ensure the build completed successfully (`pnpm run build`)
#### Data not updating
- Verify you edited the YAML files, not JSON files
- Run `pnpm run build` to regenerate JSON
- Restart the server
#### Test failures
- **URL validation failures**: May be due to rate limiting; tests include retry logic
- **Data structure failures**: Ensure YAML structure matches TypeScript interfaces
- **Spelling failures**: Add custom words to cspell configuration if needed
## 3. Legal Documentation
This section is for expansions to our legal policies specific to the Application.
### 3.1. Data Usage and Privacy
#### Data Served by the Application
The Application serves public, non-sensitive data intended for public consumption. The data categories include:
- **Projects**: Public information about open-source projects and portfolio work
- **Resume**: Professional experience, education, and certifications
- **Testimonials**: Public testimonials and recommendations
- **Donation Information**: Public donation platform links
- **Funding Information**: Public funding channel and subscription information
#### No Personal User Data Collection
The Application itself does not collect, store, or process any personal data from users accessing the API. The server:
- Does not require authentication
- Does not track user requests
- Does not use cookies or similar tracking technologies
- Does not log IP addresses or personally identifiable information
#### CORS and Third-Party Access
By enabling CORS for all origins, the Application explicitly permits third-party websites and applications to access the served data. This is intentional and by design, as the data is meant for public consumption.
### 3.2. Data Accuracy and Updates
The data served by the Application is maintained on a best-effort basis. While efforts are made to ensure accuracy:
- Data may become outdated between updates
- URLs and external links may become invalid over time
- No guarantee of real-time data freshness is provided
Users consuming this data should:
- Implement appropriate error handling for unavailable resources
- Cache responses responsibly
- Not rely on the Application for time-sensitive or critical decisions
### 3.3. Service Availability
The Application is provided "as-is" without guarantees of:
- Continuous availability
- Specific uptime percentages
- Response time performance
- Data freshness
Users should not build critical systems that depend on the Application's availability without implementing appropriate fallbacks and error handling.
### 3.4. Intellectual Property
#### Data Content
The data served by the Application contains information about projects, professional experience, and other content that may be subject to intellectual property rights:
- Project names, descriptions, and logos may be trademarks
- Code and software referenced may be under various open-source licences
- Testimonial content remains the intellectual property of the original authors
Users consuming this data should:
- Respect intellectual property rights
- Provide proper attribution when displaying data
- Review specific licences for any referenced projects or software
#### Application Code
The Application's source code is licensed under the terms specified in the LICENSE.md file. Copyright is held by Naomi Carrigan.
### 3.5. Terms of Service
The general Terms of Service can be found at: https://docs.nhcarrigan.com/#/terms
#### Application-Specific Terms
Users of the Application agree to:
- Use the API in good faith and not for malicious purposes
- Not attempt to overwhelm the server with excessive requests
- Not attempt to exploit vulnerabilities or security weaknesses
- Respect the intended public use of the data
### 3.6. Privacy Policy
The general Privacy Policy can be found at: https://docs.nhcarrigan.com/#/privacy
#### Application-Specific Privacy Notes
As noted in section 3.1, the Application does not collect user data. The privacy policy primarily applies to:
- Contributors to the codebase (governed by GitHub's privacy policy)
- Data maintainers with access to the data repository
## 4. Contributing Documentation
This section is for documentation related to contributing to the Application's codebase.
### 4.1. General Contributing Guidelines
General contributing guidelines can be found at: https://docs.nhcarrigan.com/#/contributing
Please review these guidelines before contributing to the Application.
### 4.2. Code of Conduct
Before interacting with the project or community, please read the [Code of Conduct](CODE_OF_CONDUCT.md).
### 4.3. Ways to Contribute
#### 4.3.1. Data Contributions
If you have corrections or updates to the data served by the Application:
1. **Data corrections**: If you notice incorrect information, please open an issue
2. **Testimonials**: If you'd like to add a testimonial, please contact through the official channels
3. **Project updates**: For updates to project information, verify you have permission to modify the data
#### 4.3.2. Code Contributions
Contributors can help improve the Application in several ways:
**Features**:
- Enhanced API endpoints
- New data validation rules
- Performance optimisations
- Additional data format support
- API documentation improvements
**Bug Fixes**:
- Server stability issues
- Route handling bugs
- Build process errors
- Test failures
**Quality Improvements**:
- Code refactoring
- Test coverage expansion
- Documentation enhancements
- Type safety improvements
### 4.4. Development Setup
1. **Fork and clone** the repository
2. **Install dependencies**: `pnpm install`
3. **Create a branch** for your changes: `git checkout -b feature/your-feature-name`
4. **Make your changes** following the guidelines below
5. **Test your changes**: `pnpm test`
6. **Lint your code**: `pnpm run lint`
7. **Build the project**: `pnpm run build`
8. **Commit and push** your changes
9. **Open a Pull Request**
### 4.5. Code Style Guidelines
#### TypeScript
- Follow the ESLint configuration (`@nhcarrigan/eslint-config`)
- Use explicit type annotations for function parameters and return values
- Prefer interfaces over type aliases for object shapes
- Use ES modules (`import`/`export`) syntax
- Maintain strict type safety (no `any` types unless absolutely necessary)
**Example**:
```typescript
// Good
export const processData = (input: string): ProcessedData => {
// implementation
};
// Avoid
export const processData = (input) => {
// implementation
};
```
#### File Organization
- Place interfaces in `src/interfaces/`
- Place utility functions in `src/utils/`
- Place core logic in `src/modules/`
- Keep the main entry point (`src/index.ts`) minimal
#### Error Handling
- Use the custom logger from `@nhcarrigan/logger`
- Provide meaningful error messages
- Handle errors gracefully without crashing the server
### 4.6. Testing Guidelines
All contributions should maintain or improve test coverage.
#### Writing Tests
- Use Vitest test framework
- Place tests in the `/test` directory
- Use descriptive test names
**Example test structure**:
```typescript
describe("Feature Name", () => {
it("should do something specific", () => {
// Arrange
const input = setupTestData();
// Act
const result = performAction(input);
// Assert
expect(result).toBe(expectedValue);
});
});
```
#### Running Tests
Before submitting a PR:
```bash
pnpm test # Run all tests
```
### 4.7. Documentation Guidelines
When contributing documentation:
- Use clear, concise language
- Include code examples where helpful
- Update relevant sections when changing functionality
- Check spelling with `pnpm run lint:spelling`
### 4.8. Pull Request Process
1. **Ensure all checks pass**:
- All tests pass (`pnpm test`)
- Code lints without warnings (`pnpm run lint`)
- Build succeeds (`pnpm run build`)
2. **Write a clear PR description**:
- Describe what changes were made
- Explain why the changes were necessary
- Reference any related issues
3. **Respond to feedback**:
- Address review comments promptly
- Be open to suggestions and improvements
- Update the PR as requested
4. **Squash commits** if requested to maintain a clean git history
### 4.9. Adding New Data Categories
To add a new data category to the Application:
1. **Create the TypeScript interface**:
```typescript
// src/interfaces/newcategory.ts
export interface NewCategory {
id: string;
name: string;
// other fields
}
```
2. **Create the YAML data file**:
```yaml
# data/newcategory.yml
- id: example
name: Example Item
```
3. **Add tests**:
```typescript
// test/yaml.spec.ts
describe("New Category Data", () => {
it("should have valid structure", () => {
// validation tests
});
});
```
4. **Update documentation**:
- Add endpoint documentation to section 1.2
- Update project structure in section 2.4
5. **Test the changes**:
```bash
pnpm run build
node ./prod/index.js
curl http://localhost:9999/newcategory.json
```
### 4.10. Security Considerations
When contributing, keep security in mind:
- Never commit sensitive data (API keys, passwords, personal information)
- Validate all input data in tests
- Follow secure coding practices
- Report security vulnerabilities privately before opening public issues
### 4.11. Getting Help
If you need help contributing:
- Post in the [Bug Reports](https://support.nhcarrigan.com/c/bug-reports/6) or [Feature Requests](https://support.nhcarrigan.com/c/feature-requests/7) categories on our support forum
- Join the [Chat Server](https://chat.nhcarrigan.com)
- Email: `contact@nhcarrigan.com`
### 4.12. Recognition
All contributors will be recognised for their contributions. Significant contributions may be highlighted in release notes and project documentation.
---
**Application Version**: 1.0.0
**Maintained by**: NHCarrigan
@@ -0,0 +1,240 @@
---
title: Discord Analytics
---
Discord Analytics (hereinafter the "Application") is a TypeScript library package designed to integrate with Discord bots to provide automated analytics tracking and metrics collection. The Application pairs with the @nhcarrigan/logger tool to pipe Discord bot analytics and telemetry data.
## 1. User Documentation
This section is for those interacting with a live instance of the Application.
### Overview
Discord Analytics is distributed as an npm package and is designed to be integrated into Discord.js-based bots. The package is available at [@nhcarrigan/discord-analytics](https://www.npmjs.com/package/@nhcarrigan/discord-analytics).
### Features
The Application provides the following capabilities:
- **Automated Daily Metrics Collection**: Runs a CRON job at midnight (system time) to collect:
- Total number of guilds (Discord servers) the bot is a member of
- Total member count across all guilds
- Approximate number of user installs for the application
- **Gateway Event Logging**: Allows logging of Discord gateway events with custom metadata for detailed analytics tracking
### Basic Usage
1. Install the package via npm:
```
npm install @nhcarrigan/discord-analytics
```
2. Import and initialize the DiscordAnalytics class with your Discord client and logger instance:
```typescript
import { DiscordAnalytics } from '@nhcarrigan/discord-analytics';
const analytics = new DiscordAnalytics(client, logger);
```
3. Start the automated metrics collection:
```typescript
analytics.startCron();
```
4. Log gateway events from your Discord event listeners:
```typescript
client.on(Events.MessageCreate, async (message) => {
await analytics.logGatewayEvent(Events.MessageCreate, {
channelId: message.channelId
});
});
```
5. Stop the CRON job when needed:
```typescript
analytics.stopCron();
```
## 2. Technical Documentation
This section is for those interested in running their own instance of the Application.
### Prerequisites
- Node.js (compatible with node-schedule 2.1.1)
- Discord.js v14.x or higher
- @nhcarrigan/logger v1.1.0-hotfix or higher
### Installation
The Application is installed as an npm package dependency:
```bash
npm install @nhcarrigan/discord-analytics
```
Or using pnpm:
```bash
pnpm add @nhcarrigan/discord-analytics
```
### Architecture
#### Core Components
The Application consists of a single main class located in `src/index.ts`:
**DiscordAnalytics Class** (src/index.ts:14-96)
The main class provides three public methods:
1. **`constructor(client: Client, logger: Logger)`** (src/index.ts:22-25)
- Initializes the analytics instance with a Discord.js client and logger
- Parameters:
- `client`: The Discord.js client instance to monitor
- `logger`: Instance of @nhcarrigan/logger for metric logging
2. **`startCron(): void`** (src/index.ts:33-65)
- Starts a CRON job scheduled to run at midnight daily (0 0 * * *)
- Collects and logs three metrics:
- `user_installs`: Approximate count of user installs
- `guilds`: Total number of guilds the bot is in
- `members`: Total member count across all guilds
- Includes error handling that logs failures via the logger
3. **`stopCron(): void`** (src/index.ts:70-76)
- Cancels the running CRON job if active
- Safely handles the case where no job is running
4. **`logGatewayEvent(event: Events, payload: Record<string, unknown>): Promise<void>`** (src/index.ts:85-95)
- Logs Discord gateway events as metrics
- Parameters:
- `event`: The Discord.js event type (e.g., Events.MessageCreate)
- `payload`: Custom metadata to attach to the metric
#### Dependencies
- **node-schedule** (2.1.1): Provides CRON job scheduling functionality
- **@nhcarrigan/logger** (peer dependency): Handles metric and error logging
- **discord.js** (peer dependency v14.x): Discord API wrapper
#### Build Process
The Application uses TypeScript and includes the following build scripts:
- `pnpm run lint`: Runs ESLint with zero warnings tolerance
- `pnpm run build`: Removes the `prod` directory and compiles TypeScript
- `pnpm prepublish`: Runs linting and build before publishing
The compiled output is located in the `prod` directory with `prod/index.js` as the main entry point.
### Configuration
The CRON schedule is hardcoded to run at midnight daily (system time). The schedule can be identified in the code at src/index.ts:37 as `"0 0 * * *"`.
### Data Collection
The Application collects the following metrics:
- **Guild Count**: Total number of Discord servers (src/index.ts:54)
- **Member Count**: Sum of all members across guilds (src/index.ts:55)
- **User Installs**: Approximate user installation count (src/index.ts:49-52)
- **Gateway Events**: Custom event tracking with metadata (src/index.ts:89-94)
All metrics are logged using the provided logger instance's `metric()` method.
### Error Handling
Errors during the CRON job execution are caught and logged via the logger's `error()` method (src/index.ts:57-62). The Application ensures errors are properly converted to Error instances before logging.
## 3. Legal Documentation
This section is for expansions to our legal policies specific to the Application.
### License
The Application is licensed under [Naomi's Public Licence](https://docs.nhcarrigan.com/#/license) (referenced as "global software licence").
Copyright is held by Naomi Carrigan.
### Privacy Considerations
The Application collects the following data from Discord:
- Guild (server) identifiers and counts
- Member counts (aggregate numbers, not individual user data)
- User installation counts (approximate numbers from Discord API)
- Gateway event data with optional custom metadata
Users integrating this Application should ensure their privacy policies adequately disclose the collection and logging of this telemetry data.
### Third-Party Services
The Application interacts with:
- Discord API (via discord.js)
- The configured logging service (@nhcarrigan/logger)
Data is transmitted to whatever backend service is configured with the logger instance.
## 4. Contributing Documentation
This section is for documentation related to contributing to the Application's codebase.
### Contributing Guidelines
Full contributing guidelines can be found at: https://docs.nhcarrigan.com/#/contributing
### Code of Conduct
Before interacting with the community, please review the Code of Conduct at: https://docs.nhcarrigan.com/#/coc
### Development Setup
1. Clone the repository
2. Install dependencies:
```bash
pnpm install
```
3. Make your changes in the `src` directory
4. Run linting:
```bash
pnpm run lint
```
5. Build the project:
```bash
pnpm run build
```
### Code Style
The project uses:
- ESLint with @nhcarrigan/eslint-config (v5.2.0)
- TypeScript with @nhcarrigan/typescript-config (v4.0.0)
- Maximum warnings: 0 (strict mode)
### Pull Request Process
1. Create a Pull Request with your proposed changes
2. Ensure all linting passes
3. The maintainers will review as soon as possible
### Reporting Issues
If you have feedback or a bug report, please post in the #bug-reports forum channel on our Discord community.
### Contact
The maintainers may be contacted through:
- [Chat Server](https://chat.nhcarrigan.com)
- Email: contact@nhcarrigan.com
### Current Version
Version: 0.0.6
Recent changes can be viewed in the git commit history.
+16 -16
View File
@@ -1,17 +1,17 @@
---
title: NHCarrigan Documentation Site
title: NHCarrigan Documentation
---
NHCarrigan Documentation Site (hereinafter the "Application") is a comprehensive documentation website built with Astro and Starlight that serves as the central hub for all documentation related to NHCarrigan's projects, policies, and services. The site provides organized access to technical documentation, legal policies, community guidelines, and project-specific information across multiple categories including Discord bots, web applications, libraries, and development tools. The Application features a custom-themed interface with accessibility considerations, analytics integration, and environmental sustainability features.
NHCarrigan Documentation (hereinafter the "Application") is a comprehensive documentation website built with Astro and Starlight that serves as the central hub for all documentation related to NHCarrigan's projects, policies, and services. The site provides organised access to technical documentation, legal policies, community guidelines, and project-specific information across multiple categories including Discord bots, web applications, libraries, and development tools. The Application features a custom-themed interface with accessibility considerations, analytics integration, and environmental sustainability features.
## 1. User Documentation
### Site Structure and Navigation
The Application is organized into several main sections accessible via the sidebar navigation:
The Application is organised into several main sections accessible via the sidebar navigation:
- **About Us**: Mission statement, sustainability information, hiring, donations, contact, and mentorship
- **Legal Information**: Terms of service, privacy policy, software license, security policy, DMCA information, subprocessors list, and government actions
- **Legal Information**: Terms of service, privacy policy, software licence, security policy, DMCA information, subprocessors list, and government actions
- **Community Policies**: Code of conduct, community guidelines, and appeal process
- **Development Documentation**: Contributing guide, contributor covenant, style guide, issue/PR labels, development environment, server setup, and VTubing setup
- **Project Documentation**: Comprehensive documentation for all NHCarrigan projects including Discord bots, web applications, libraries, and tools
@@ -22,18 +22,18 @@ The Application is organized into several main sections accessible via the sideb
#### Custom Theming
- Light and dark mode support with automatic detection
- Custom "Sakura Dreams" color scheme with pink/purple tones
- Custom "Sakura Dreams" colour scheme with pink/purple tones
- Accessibility features including OpenDyslexic font support
- Responsive design that works across all devices
#### Enhanced Footer
- TreeNation carbon offset widget integration for environmental sustainability
- Direct donation link for supporting the organization
- Direct donation link for supporting the organisation
- Standard Starlight navigation elements (edit links, last updated, pagination)
#### Analytics and Tracking
- Privacy-focused Plausible Analytics integration
- Page view and event tracking for user behavior insights
- Page view and event tracking for user behaviour insights
- Google AdSense integration for monetization
#### Content Features
@@ -47,7 +47,7 @@ The Application is organized into several main sections accessible via the sideb
The Application includes several accessibility features:
- Semantic HTML structure with proper heading hierarchy
- OpenDyslexic font support for users with dyslexia
- High contrast color schemes
- High contrast colour schemes
- Keyboard navigation support
- Screen reader compatible markup
@@ -60,7 +60,7 @@ The Application is built using modern web technologies:
- **Framework**: Astro 5.3.0 - Static site generator for optimal performance
- **Theme**: Starlight 0.32.0 - Documentation-focused Astro integration
- **Language**: TypeScript 5.7.3 - Type-safe development
- **Build Tool**: Native Astro build system with minification and optimization
- **Build Tool**: Native Astro build system with minification and optimisation
- **Package Manager**: PNPM (evidenced by pnpm-lock.yaml)
- **Hosting**: Static deployment to https://docs.nhcarrigan.com
@@ -116,7 +116,7 @@ public/ # Static assets
- Hierarchical sidebar navigation structure
- Project status badges with version information
- External links to community resources
- Organized categorization of all documentation
- Organized categorisation of all documentation
### Custom Components
@@ -135,9 +135,9 @@ public/ # Static assets
### Styling System
#### CSS Variables and Theming
- Custom color scheme using CSS variables
- Custom colour scheme using CSS variables
- Pink/purple "Sakura Dreams" theme
- Dark mode with inverted color palette
- Dark mode with inverted colour palette
- Background image integration for visual appeal
#### Typography
@@ -173,7 +173,7 @@ public/ # Static assets
#### Social and Community
- Links to self-hosted Git instance (git.nhcarrigan.com)
- Forum integration (forum.nhcarrigan.com)
- Discord community integration (chat.nhcarrigan.com)
### Performance and SEO
@@ -195,14 +195,14 @@ The Application serves as the central repository for all legal documentation rel
### Comprehensive Legal Coverage
- **Terms of Service**: User agreements for all NHCarrigan services
- **Privacy Policy**: Data collection, processing, and user rights
- **Software License**: Open source licensing for projects
- **Software Licence**: Open source licensing for projects
- **Security Policy**: Vulnerability reporting and security practices
- **DMCA and Copyright**: Intellectual property policies
- **Subprocessors List**: Third-party service providers and data processing
- **Government Actions**: Transparency reporting for legal requests
### Policy Management
- Centralized location for all legal documents
- Centralised location for all legal documents
- Version control through Git for policy changes
- Public accessibility for transparency
- Regular updates reflecting current legal requirements
@@ -272,7 +272,7 @@ The Application serves as the central repository for all legal documentation rel
- Update project version badges
- Refresh project screenshots
- Review and update legal documents
- Monitor analytics for user behavior insights
- Monitor analytics for user behaviour insights
- Update dependencies and security patches
#### Community Involvement
+362
View File
@@ -0,0 +1,362 @@
---
title: Eclaire
---
Eclaire (hereinafter the "Application") is a real-time speech-to-speech translation web application that captures live audio from a user's microphone, transcribes the speech using Deepgram's API, and translates the transcribed text into a target language.
## 1. User Documentation
This section is for those interacting with a live instance of the Application.
### Getting Started
1. **Initial Setup**: Navigate to the Configuration page to set up your API credentials and language preferences.
2. **Configuration Options**:
- **Deepgram API Key**: Required for speech-to-text transcription. You must provide your own API key from [Deepgram](https://deepgram.com).
- **Translation Service API Key**: Required for text translation. A demo key is available with a 10 requests/minute rate limit, or you can provide your own key.
- **Source Language**: Select from 12 supported languages (English, German, Dutch, Swedish, Danish, Spanish, French, Portuguese, Italian, Turkish, Norwegian, Indonesian).
- **Target Language**: Select from 60+ supported languages for translation.
3. **Using the Translation Interface**:
- Navigate to the Agent page to begin translation.
- Click "Start" to begin capturing audio from your microphone.
- Speak clearly into your microphone in the configured source language.
- The application will display real-time transcription and translations.
- Click "Finalize" to manually end the current speech segment if needed.
- Click "Stop" to end the session.
### Features
- **Real-Time Transcription**: Powered by Deepgram's nova-3-general model with automatic punctuation
- **Multi-Language Translation**: Support for 60+ target languages via LibreTranslate
- **Conversation History**: View all transcriptions and translations in a message-based format
- **Connection Status**: Monitor your connection status and any errors
- **Cost Estimation**: Track estimated costs (approximately $0.32/hour)
### Audio Quality Settings
The application automatically enables:
- Echo cancellation
- Noise suppression
- Auto gain control
### Limitations
- Source language is limited to 12 languages supported by Deepgram
- Translation service demo key has a rate limit of 10 requests/minute
- Requires modern browser with microphone access
- WebSocket connection required for real-time functionality
## 2. Technical Documentation
This section is for those interested in running their own instance of the Application.
### Prerequisites
- Node.js (version compatible with Angular 19.1.4)
- pnpm package manager
- Modern web browser with WebRTC support
- Deepgram API key
- LibreTranslate API key (or access to a LibreTranslate instance)
### Installation
1. Clone the repository:
```bash
git clone <repository-url>
cd eclaire
```
2. Install dependencies:
```bash
npm install
```
3. Start the development server:
```bash
npm run dev
```
4. Build for production:
```bash
npm run build
```
### Technology Stack
**Frontend Framework:**
- Angular 19.1.4 with standalone components
- TypeScript 5.7.3
- RxJS 7.8.1 for reactive programming
- Angular Reactive Forms for configuration management
**External APIs:**
- Deepgram WebSocket API (nova-3-general model) for speech-to-text
- LibreTranslate API for text translation
**Audio Processing:**
- Web Audio API for microphone access
- ScriptProcessor for audio stream processing (4096 buffer size)
- 48kHz sample rate, mono channel, Int16 format
### Architecture
#### Components
1. **HomeComponent** (`src/app/home/home.component.ts`)
- Landing page with navigation links
- Entry point for users
2. **ConfigComponent** (`src/app/config/config.component.ts`)
- Configuration interface using reactive forms
- Manages API keys and language preferences
- Form validation for required fields
- Stores configuration in ConfigService
3. **AgentComponent** (`src/app/agent/agent.component.ts`)
- Main translation interface
- Manages WebSocket lifecycle
- Handles microphone capture and audio streaming
- Displays transcription and translation results
- Tracks connection status and errors
#### Services
1. **ConfigService** (`src/app/config.service.ts`)
- In-memory storage for application configuration
- Provides configuration access across components
- Stores: API keys, source language, target language
2. **SocketService** (`src/app/socket.service.ts`)
- Manages WebSocket connection to Deepgram
- Handles audio streaming in real-time
- Event-based architecture for message handling
- Supports keep-alive and finalisation
- Configuration options:
- Model: nova-3-general
- Language: configurable source language
- Encoding: linear16
- Sample rate: 48000
- Channels: 1 (mono)
- Endpointing: 500ms
- Features: punctuate
#### Routing
- `/` - Redirects to home
- `/home` - Landing page
- `/config` - Configuration page
- `/agent` - Translation interface
### API Integration
#### Deepgram API
The application uses Deepgram's WebSocket API for real-time transcription:
```typescript
wss://api.deepgram.com/v1/listen
```
Query parameters:
- `model=nova-3-general`
- `language=<source-language>`
- `encoding=linear16`
- `sample_rate=48000`
- `channels=1`
- `endpointing=500`
- `punctuate=true`
Authentication: Bearer token (API key) in WebSocket URL
#### LibreTranslate API
The application uses the LibreTranslate API for text translation:
```typescript
https://trans.nhcarrigan.com/translate
```
POST request body:
```json
{
"q": "<text-to-translate>",
"source": "<source-language-code>",
"target": "<target-language-code>",
"api_key": "<api-key>"
}
```
### Development
#### Available Scripts
- `npm run dev` - Start development server
- `npm run lint` - Run ESLint with zero warnings policy
- `npm run build` - Build for production
#### Code Quality
- ESLint configuration from `@nhcarrigan/eslint-config`
- TypeScript configuration from `@nhcarrigan/typescript-config`
- Strict linting with `--max-warnings 0`
#### Testing
- Framework: Jasmine ~5.5.0
- Test Runner: Karma ~6.4.4
- Coverage reporting enabled
### Deployment Considerations
1. **Environment Variables**: API keys should be configurable per deployment environment
2. **CORS**: Ensure proper CORS configuration for LibreTranslate API
3. **HTTPS**: Required for microphone access in production
4. **WebSocket**: Ensure WebSocket connections are allowed through firewalls
5. **Browser Support**: Requires WebRTC and Web Audio API support
### Performance
- Audio streaming at 48kHz with 4096 sample buffer
- WebSocket for low-latency real-time communication
- Estimated cost: $0.32/hour for Deepgram usage
- Efficient audio processing with minimal overhead
## 3. Legal Documentation
This section is for expansions to our legal policies specific to the Application.
### License
This software is licensed under the [global software licence](https://docs.nhcarrigan.com/#/license).
Copyright held by Naomi Carrigan.
### Privacy Policy
The Application's privacy practices are governed by the [global privacy policy](https://docs.nhcarrigan.com/#/privacy).
#### Application-Specific Privacy Considerations
1. **Audio Data**: The Application captures audio from your microphone and streams it to Deepgram's servers for transcription. Audio data is not stored locally by the Application.
2. **API Keys**: API keys are stored in-memory during your session and are not persisted to local storage or transmitted to any servers other than the respective API providers (Deepgram and LibreTranslate).
3. **Third-Party Services**:
- **Deepgram**: Audio data is transmitted to Deepgram for transcription. Refer to [Deepgram's privacy policy](https://deepgram.com/privacy) for information on their data handling practices.
- **LibreTranslate**: Transcribed text is transmitted to the LibreTranslate API for translation. The default instance is hosted at trans.nhcarrigan.com.
4. **Local Storage**: The Application does not persist any user data to browser storage.
### Terms of Service
The Application's usage is governed by the [global terms of service](https://docs.nhcarrigan.com/#/terms).
#### Application-Specific Terms
1. **API Usage**: Users are responsible for their own Deepgram API usage and associated costs. The Application provides cost estimates but does not guarantee accuracy.
2. **Demo API Key**: The translation service demo API key is provided for testing purposes only and has rate limits (10 requests/minute). It may be revoked or changed at any time.
3. **Service Availability**: The Application depends on third-party services (Deepgram and LibreTranslate). Service interruptions may occur due to factors outside of our control.
4. **Accuracy**: The Application provides translation services based on third-party APIs. Translation accuracy is not guaranteed and should not be relied upon for critical communications.
### Security Policy
For security concerns, please refer to the [SECURITY.md](SECURITY.md) file in the repository.
## 4. Contributing Documentation
This section is for documentation related to contributing to the Application's codebase.
### Contributing Guidelines
General contributing guidelines can be found at: https://docs.nhcarrigan.com/#/contributing
### Code of Conduct
Before interacting with our community, please read our [Code of Conduct](CODE_OF_CONDUCT.md).
### Development Setup
1. Fork the repository
2. Clone your fork: `git clone <your-fork-url>`
3. Install dependencies: `npm install`
4. Create a feature branch: `git checkout -b feature/your-feature-name`
5. Make your changes
6. Run linting: `npm run lint`
7. Commit your changes with clear commit messages
8. Push to your fork: `git push origin feature/your-feature-name`
9. Open a Pull Request
### Code Style
- Follow the ESLint configuration (`@nhcarrigan/eslint-config`)
- Use TypeScript with strict type checking
- Follow Angular style guide for component and service structure
- Use meaningful variable and function names
- Add comments for complex logic
### Component Guidelines
- Use standalone components (Angular 19+)
- Implement proper lifecycle hooks
- Use reactive programming patterns with RxJS
- Follow Angular dependency injection best practices
- Keep components focused on a single responsibility
### Service Guidelines
- Use `@Injectable({ providedIn: 'root' })` for singleton services
- Implement proper error handling
- Use TypeScript interfaces for type safety
- Document public methods with JSDoc comments
### Testing Guidelines
- Write unit tests for components and services
- Aim for high code coverage
- Test user interactions and edge cases
- Mock external dependencies (APIs, services)
### Pull Request Process
1. Ensure all tests pass
2. Ensure linting passes with zero warnings
3. Update documentation if needed
4. Provide a clear description of changes
5. Reference any related issues
6. Wait for review from maintainers
### Areas for Contribution
- **UI/UX Improvements**: Enhance the user interface and experience
- **Additional Languages**: Expand language support where possible
- **Performance Optimization**: Improve audio processing efficiency
- **Testing**: Increase test coverage
- **Documentation**: Improve user and technical documentation
- **Accessibility**: Enhance accessibility features
- **Error Handling**: Improve error messages and handling
- **Configuration**: Add more configuration options
### Reporting Issues
If you have feedback or a bug report, please post in the #bug-reports forum channel on our Discord community with:
- Clear description of the issue
- Steps to reproduce (for bugs)
- Expected vs actual behaviour
- Browser and OS information
- Screenshots if applicable
### Contact
We may be contacted through:
- [Chat Server](https://chat.nhcarrigan.com)
- Email: contact@nhcarrigan.com
---
**Version**: 1.1.0
**Author**: Naomi Carrigan

Some files were not shown because too many files have changed in this diff Show More