From 149c780b837eb7cbc5b12ac73918fd6e696ada8a Mon Sep 17 00:00:00 2001 From: AltStack Bot Date: Wed, 25 Feb 2026 23:10:07 +0530 Subject: [PATCH] Add GitHub community standards, templates, and workflows --- .github/CODEOWNERS | 10 +++++ .github/ISSUE_TEMPLATE/add-guide.yml | 19 ++++++++++ .github/ISSUE_TEMPLATE/add-tool.yml | 40 ++++++++++++++++++++ .github/ISSUE_TEMPLATE/fix-data.yml | 26 +++++++++++++ .github/pull_request_template.md | 14 +++++++ .github/workflows/check-docs.yml | 28 ++++++++++++++ .github/workflows/validate-data.yml | 28 ++++++++++++++ CODE_OF_CONDUCT.md | 55 ++++++++++++++++++++++++++++ LICENSE | 19 ++++++++++ SECURITY.md | 15 ++++++++ 10 files changed, 254 insertions(+) create mode 100644 .github/CODEOWNERS create mode 100644 .github/ISSUE_TEMPLATE/add-guide.yml create mode 100644 .github/ISSUE_TEMPLATE/add-tool.yml create mode 100644 .github/ISSUE_TEMPLATE/fix-data.yml create mode 100644 .github/pull_request_template.md create mode 100644 .github/workflows/check-docs.yml create mode 100644 .github/workflows/validate-data.yml create mode 100644 CODE_OF_CONDUCT.md create mode 100644 LICENSE create mode 100644 SECURITY.md diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 0000000..7a84680 --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1,10 @@ +# Core Data Maintainers +/data/ @aa-humaaan +/data/schema @aa-humaaan + +# Documentation Maintainers +/docs/ @aa-humaaan + +# Core Logic/Scripts +/scripts/ @aa-humaaan + diff --git a/.github/ISSUE_TEMPLATE/add-guide.yml b/.github/ISSUE_TEMPLATE/add-guide.yml new file mode 100644 index 0000000..0eb8353 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/add-guide.yml @@ -0,0 +1,19 @@ +name: Add Deployment Guide +description: Propose to add a new self-hosted deployment guide for an alternative tool. +title: "[New Guide]: " +labels: ["new-guide", "needs-review", "docs"] +body: + - type: input + id: alternative_name + attributes: + label: Open Source Alternative Name + description: What is the name of the OSS alternative? + validations: + required: true + - type: textarea + id: scope + attributes: + label: Guide Outline + description: Briefly describe what the self-host guide will cover (e.g., Docker Compose, CapRover integration). + validations: + required: true diff --git a/.github/ISSUE_TEMPLATE/add-tool.yml b/.github/ISSUE_TEMPLATE/add-tool.yml new file mode 100644 index 0000000..0af7579 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/add-tool.yml @@ -0,0 +1,40 @@ +name: Add New Alternative Tool +description: Propose a new open-source alternative to a popular SaaS product. +title: "[New Tool]: " +labels: ["add-tool", "needs-review"] +body: + - type: input + id: proprietary_tool + attributes: + label: Proprietary Tool (Parent) + description: What proprietary tool does this replace? (e.g., Slack, Notion) + validations: + required: true + - type: input + id: alternative_name + attributes: + label: Open Source Alternative Name + description: What is the name of the OSS alternative? + validations: + required: true + - type: input + id: website + attributes: + label: Website or GitHub URL + description: Link to the alternative's main page. + validations: + required: true + - type: textarea + id: description + attributes: + label: Description + description: A brief paragraph describing what it does. + validations: + required: true + - type: textarea + id: pros_cons + attributes: + label: Pros and Cons + description: List a few pros and cons for using this alternative. + validations: + required: true diff --git a/.github/ISSUE_TEMPLATE/fix-data.yml b/.github/ISSUE_TEMPLATE/fix-data.yml new file mode 100644 index 0000000..1b1408f --- /dev/null +++ b/.github/ISSUE_TEMPLATE/fix-data.yml @@ -0,0 +1,26 @@ +name: Fix Data Error +description: Report a bug, broken link, or incorrect data point in the open-source dataset. +title: "[Data Fix]: " +labels: ["fix-data", "needs-review"] +body: + - type: input + id: alternative_name + attributes: + label: Open Source Alternative Name + description: What is the name of the OSS alternative that needs fixing? + validations: + required: true + - type: textarea + id: what_is_wrong + attributes: + label: What is Wrong? + description: Please describe the incorrect data point (e.g., pricing link is a 404). + validations: + required: true + - type: textarea + id: what_is_right + attributes: + label: Expected Fix + description: What should the data be corrected to? Provide links to evidence if possible. + validations: + required: true diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000..0209bfa --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,14 @@ +### What does this PR do? + +Please provide a brief summary of the changes this PR introduces. E.g., adding a new Open Source alternative, fixing broken links, or adding a new deployment guide. + +### Related Issues + +Fixes # + +### Checklist + +- [ ] I've read the `CONTRIBUTING.md` guide. +- [ ] If this adds a new tool, it includes the required schema fields, notably `id`, `name`, `type`, `url`, `open_source_url`. +- [ ] If this updates docs, the changes are written in MDX to match existing docs in `docs/app/deploy/`. +- [ ] This maintains a neutral, fact-based tone when making pros/cons edits. diff --git a/.github/workflows/check-docs.yml b/.github/workflows/check-docs.yml new file mode 100644 index 0000000..f2878bb --- /dev/null +++ b/.github/workflows/check-docs.yml @@ -0,0 +1,28 @@ +name: Docs Build Check + +on: + pull_request: + paths: + - 'docs/**' + +jobs: + build: + runs-on: ubuntu-latest + defaults: + run: + working-directory: docs + steps: + - uses: actions/checkout@v4 + + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: '20' + cache: 'npm' + cache-dependency-path: 'docs/package-lock.json' + + - name: Install Dependencies + run: npm ci || npm install + + - name: Build Nextra Docs + run: npm run build diff --git a/.github/workflows/validate-data.yml b/.github/workflows/validate-data.yml new file mode 100644 index 0000000..af14cb2 --- /dev/null +++ b/.github/workflows/validate-data.yml @@ -0,0 +1,28 @@ +name: Validate JSON Data + +on: + push: + paths: + - 'data/**/*.json' + pull_request: + paths: + - 'data/**/*.json' + +jobs: + validate: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: '20' + + - name: Check JSON Validity + run: | + for file in $(find data -name "*.json"); do + echo "Validating $file..." + jq empty "$file" || exit 1 + done + echo "All JSON files are valid." diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 0000000..2a81af5 --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1,55 @@ +# Contributor Covenant Code of Conduct + +## Our Pledge + +We as members, contributors, and leaders pledge to make participation in our +community a harassment-free experience for everyone, regardless of age, body +size, visible or invisible disability, ethnicity, sex characteristics, gender +identity and expression, level of experience, education, socio-economic status, +nationality, personal appearance, race, religion, or sexual identity +and orientation. + +We pledge to act and interact in ways that contribute to an open, welcoming, +diverse, inclusive, and healthy community. + +## Our Standards + +Examples of behavior that contributes to a positive environment for our +community include: + +* Demonstrating empathy and kindness toward other people +* Being respectful of differing opinions, viewpoints, and experiences +* Giving and gracefully accepting constructive feedback +* Accepting responsibility and apologizing to those affected by our mistakes, + and learning from the experience +* Focusing on what is best not just for us as individuals, but for the + overall community + +Examples of unacceptable behavior include: + +* The use of sexualized language or imagery, and sexual attention or + advances of any kind +* Trolling, insulting or derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or email + address, without their explicit permission +* Other conduct which could reasonably be considered inappropriate in a + professional setting + +## Enforcement Responsibilities + +Community leaders are responsible for clarifying and enforcing our standards of +acceptable behavior and will take appropriate and fair corrective action in +response to any behavior that they deem inappropriate, threatening, offensive, +or harmful. + +## Scope + +This Code of Conduct applies within all community spaces, and also applies when +an individual is officially representing the community in public spaces. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported to the community leaders. All complaints will be reviewed and +investigated promptly and fairly. diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..1a1fe71 --- /dev/null +++ b/LICENSE @@ -0,0 +1,19 @@ +Code: Apache License 2.0 +Data (data/*.json): Creative Commons Attribution 4.0 International (CC BY 4.0) +Documentation: Creative Commons Attribution 4.0 International (CC BY 4.0) + +============================================================================== + +Apache License +Version 2.0, January 2004 +http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +... (Standard Apache 2.0 terms apply to code files) + +============================================================================== + +Creative Commons Attribution 4.0 International Public License + +... (Standard CC BY 4.0 terms apply to data and docs) diff --git a/SECURITY.md b/SECURITY.md new file mode 100644 index 0000000..2074945 --- /dev/null +++ b/SECURITY.md @@ -0,0 +1,15 @@ +# Security Policy + +## Supported Versions + +Currently, the data and platform are updated on a rolling release basis in the `main` branch. + +## Reporting a Vulnerability + +If you've found a vulnerability or a security flaw in The Alt Stack Data or Documentation project, please DO NOT open a public issue. + +Please report the issue privately to the maintainers. You can reach out directly via the contact form on the main website or to the primary maintainers' emails. + +We will try to acknowledge the issue within 48 hours and work on a fix promptly. + +Thank you for helping keep the community secure!