diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 0000000..b6fdf93 --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1,2 @@ +# Default owner for all files +* @roman-rouba diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000..86fe542 --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,21 @@ +# Description + + +## Ticket + + +## Screenshot/Video (optional) + + +# Checklist + +- [ ] Linters passed +- [ ] Tests passed +- [ ] Documentation updated (if needed) + +# Review level + +- [ ] Standard review (peer review by 1-2 developers) +- [ ] Techlead/Architect review required +- [ ] QA review required + diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..fa00a27 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,110 @@ +name: CI + +on: + push: + branches: [ main, 'CALC-*' ] + pull_request: + branches: [ main ] + +jobs: + validate: + name: Validate HTML and Code Quality + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: '20' + + - name: Validate HTML file exists + run: | + if [ ! -f index.html ]; then + echo "❌ Error: index.html not found" + exit 1 + fi + echo "✅ index.html exists" + + - name: Check HTML structure + run: | + # Check for required HTML elements + if ! grep -q "" index.html; then + echo "❌ Missing DOCTYPE declaration" + exit 1 + fi + if ! grep -q " tag" + exit 1 + fi + if ! grep -q "
tag" + exit 1 + fi + if ! grep -q " tag" + exit 1 + fi + echo "✅ Basic HTML structure is valid" + + - name: Validate JavaScript syntax + run: | + # Extract JavaScript content + awk '/