diff --git a/.github/.kodiak.toml b/.github/.kodiak.toml new file mode 100644 index 0000000..7f84297 --- /dev/null +++ b/.github/.kodiak.toml @@ -0,0 +1,16 @@ +version = 1 + +[merge] +blacklist_title_regex = "^WIP:.*" +blacklist_labels = ["do-not-merge"] +delete_branch_on_merge = true +method = "squash" +prioritize_ready_to_merge = true +require_automerge_label = false + +[update] +always = true +require_automerge_label = false + +[approve] +auto_approve_usernames = ["dependabot"] diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md new file mode 100644 index 0000000..46a143c --- /dev/null +++ b/.github/CONTRIBUTING.md @@ -0,0 +1,9 @@ +# Contributing + +## General guidelines + +This project follows the [BNA Mechanics Contributing Guidelines]. Refer to them +for general principles. + +[bna mechanics contributing guidelines]: + https://peopleforbikes.github.io/contributing/ diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 0000000..e1ed417 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,84 @@ +--- +name: Bug report +about: Create a report to help us improve +labels: "kind/bug" +--- + +# Bug report + + + +## Current Behavior + + + +## Expected Behavior + + + +## Possible Solution + + + +## Steps to Reproduce + + + +1. +2. +3. + +## Context + + + +## Your Environment + + + +```bash +(replace the example bellow with the script output) +Last commit: + 583bc87 Fix configuration issue +Browser(s): + Mozilla Firefox 60.0 + Google Chrome 66.0.3359.139 +System Version: macOS 10.13.4 (17E202) +``` diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 0000000..638d561 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,24 @@ +--- +name: Feature request +about: Suggest an idea for this project +labels: "kind/feature" +--- + +# Feature request + + + +## Current Behavior + + + +## Expected Behavior + + + +## Possible Solution + + diff --git a/.github/ISSUE_TEMPLATE/help_request.md b/.github/ISSUE_TEMPLATE/help_request.md new file mode 100644 index 0000000..ae53ef7 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/help_request.md @@ -0,0 +1,17 @@ +--- +name: Help request +about: Ask for help +labels: feedback/question +--- + +# Help request + + + +## Problem + + + + + + diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 0000000..96e9556 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,54 @@ +# Pull Request + +## Types of changes + + + +- Bug fix (non-breaking change which fixes an issue) +- New feature (non-breaking change which adds functionality) +- Breaking change (fix or feature that would cause existing functionality to + change) +- Code cleanup / Refactoring +- Documentation +- Infrastructure and automation + +## Description + + + + + + + +## Checklist + + + +- [] I have updated the documentation accordingly +- [] I have updated the Changelog (if applicable) + + + +Fixes: PeopleForBikes/bna-dashboard# diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..45cd8ab --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,13 @@ +version: 2 +updates: + # Maintain dependencies for GitHub Actions. + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "weekly" + + # Maintain NPM dependencies. + - package-ecosystem: npm + directory: "/" + schedule: + interval: weekly diff --git a/.github/labels.yml b/.github/labels.yml new file mode 100644 index 0000000..3fff75c --- /dev/null +++ b/.github/labels.yml @@ -0,0 +1,108 @@ +--- +labels: + # Kinds. + - name: "kind/bug" + color: "#D73A4A" + description: "Something isn't working" + - name: "kind/design" + color: "#8000FF" + description: "Visual aspect" + - name: "kind/docs" + color: "#000BE0" + description: "Document the project" + - name: "kind/enhancement" + color: "#A2EEEF" + description: "Improve an existing feature" + - name: "kind/optimization" + color: "#A2EEEF" + description: "Optimize an existing feature" + - name: "kind/feature" + color: "#A2EEEF" + description: "New feature request" + - name: "kind/infrastructure" + color: "#387499" + description: "Issue regarding the local or cloud infrastructure setup" + - name: "kind/automation" + color: "#387499" + description: "Automate your tasks" + - name: "kind/security" + color: "#993333" + description: "CVEs and other security flaws" + + # Feedback. + - name: "feedback/question" + color: "#D876E3" + description: "Further information is requested" + - name: "feedback/discussion" + color: "#D876E3" + description: "Discuss a specific aspect of the project" + + # T-Shirt sizes. + - name: "size/XS" + color: "#00FF00" + description: "Extra small (0-9 lines of changes)" + - name: "size/S" + color: "#CCFF66" + description: "Small (10-29 lines of changes)" + - name: "size/M" + color: "#FFFF00" + description: "Medium (30-99 lines of changes)" + - name: "size/L" + color: "#FF9933" + description: "Large (100-499 lines of changes)" + - name: "size/XL" + color: "#B60205" + description: "Extra large (500-999 lines of changes)" + - name: "size/XXL" + color: "#8B0000" + description: "Extra Extra Large (1000+ lines of changes)" + + # Experience. + - name: "exp/beginner" + color: "#CBE4CE" + description: "Good for newcomers" + - name: "exp/intermediate" + color: "#CBE4CE" + description: "Show off your skills" + - name: "exp/expert" + color: "#CBE4CE" + description: "I have nothing else to teach you" + + # Statuses. + - name: "status/claimed" + color: "#FBCA04" + description: "Assigned" + - name: "status/help wanted" + color: "#008672" + description: "Could use an extra brain" + - name: "status/more info needed" + color: "#008672" + description: "Needs clarification" + - name: "status/invalid" + color: "#D2DAE1" + description: "No further triaging" + - name: "status/wontfix" + color: "#D2DAE1" + description: "Fix is too controversial or do not want to implement it" + - name: "status/duplicate" + color: "#D2DAE1" + description: "This issue or pull request already exists" + - name: "status/review-carefully!" + color: "#B60205" + description: "Requires extra attention during review" + + # Environment. + - name: "environment/dev" + color: "#F7FBFF" + description: "Developer environment" + - name: "environment/prod" + color: "#F7FBFF" + description: "Production environment" + + # Bots. + - name: "dependencies" + color: "#0366d6" + description: "Pull requests that update a dependency file" + - name: "do-not-merge" + color: "#DC143C" + description: "Prevents PRs with this label to be merged" diff --git a/.github/stale.yml b/.github/stale.yml new file mode 100644 index 0000000..3cfb1cc --- /dev/null +++ b/.github/stale.yml @@ -0,0 +1,31 @@ +# Number of days of inactivity before a PR becomes stale. +daysUntilStale: 21 +# Number of days of inactivity before a stale PR is closed. +daysUntilClose: 7 + +# Limit to only `pulls`. +only: pulls + +# Issues or Pull Requests with these labels will never be considered stale. Set to `[]` to disable. +exemptLabels: + - no-mergify + - do-not-merge + +# Comment to post when marking an issue as stale. Set to `false` to disable. +markComment: > + This pull request has been automatically marked as stale because it has not had + recent activity. + + It will be closed in 7 days if no further activity occurs. + + Thank you for your contribution! + +# Comment to post when closing a stale issue. Set to `false` to disable. +closeComment: > + This pull request has been automatically closed because there has + been no activity for 28 days. + + Please feel free to reopen it (or open a new one) if the proposed + change is still appropriate. + + Thank you for your contribution! diff --git a/.github/workflows/ci-npm.yml b/.github/workflows/ci-npm.yml new file mode 100644 index 0000000..a21d9ef --- /dev/null +++ b/.github/workflows/ci-npm.yml @@ -0,0 +1,24 @@ +name: ci-npm + +on: + pull_request: + types: + - opened + - synchronize + - reopened + +jobs: + lint: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4