diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 3efbb47..2a1b685 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -95,13 +95,6 @@ jobs: "text": "*Workflow:*\n<${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}|View Run>" } ] - }, - { - "type": "section", - "text": { - "type": "mrkdwn", - "text": "*Commit Message:*\n${{ github.event.head_commit.message }}" - } } ] } @@ -148,13 +141,6 @@ jobs: "text": "*Workflow:*\n<${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}|View Run>" } ] - }, - { - "type": "section", - "text": { - "type": "mrkdwn", - "text": "*Commit Message:*\n${{ github.event.head_commit.message }}" - } } ] } diff --git a/.github/workflows/pr-notifications.yml b/.github/workflows/pr-notifications.yml new file mode 100644 index 0000000..b31b82b --- /dev/null +++ b/.github/workflows/pr-notifications.yml @@ -0,0 +1,183 @@ +name: PR Notifications + +on: + pull_request: + types: [opened, closed, reopened] + pull_request_review: + types: [submitted] + +jobs: + notify: + runs-on: ubuntu-latest + steps: + - name: Notify Slack on PR Opened + if: github.event.action == 'opened' + uses: slackapi/slack-github-action@v1.27.0 + with: + payload: | + { + "text": "🔔 New PR in pie-website-ng", + "blocks": [ + { + "type": "header", + "text": { + "type": "plain_text", + "text": "🔔 New Pull Request" + } + }, + { + "type": "section", + "fields": [ + { + "type": "mrkdwn", + "text": "*Repository:*\n${{ github.repository }}" + }, + { + "type": "mrkdwn", + "text": "*PR:*\n<${{ github.event.pull_request.html_url }}|#${{ github.event.pull_request.number }} - ${{ github.event.pull_request.title }}>" + }, + { + "type": "mrkdwn", + "text": "*Author:*\n${{ github.event.pull_request.user.login }}" + }, + { + "type": "mrkdwn", + "text": "*Base:*\n${{ github.event.pull_request.base.ref }}" + }, + { + "type": "mrkdwn", + "text": "*Head:*\n${{ github.event.pull_request.head.ref }}" + } + ] + } + ] + } + env: + SLACK_WEBHOOK_URL: ${{ secrets.SLACK_PR_WEBHOOK_URL }} + SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK + + - name: Notify Slack on PR Merged + if: github.event.action == 'closed' && github.event.pull_request.merged == true + uses: slackapi/slack-github-action@v1.27.0 + with: + payload: | + { + "text": "✅ PR Merged in pie-website-ng", + "blocks": [ + { + "type": "header", + "text": { + "type": "plain_text", + "text": "✅ Pull Request Merged" + } + }, + { + "type": "section", + "fields": [ + { + "type": "mrkdwn", + "text": "*Repository:*\n${{ github.repository }}" + }, + { + "type": "mrkdwn", + "text": "*PR:*\n<${{ github.event.pull_request.html_url }}|#${{ github.event.pull_request.number }} - ${{ github.event.pull_request.title }}>" + }, + { + "type": "mrkdwn", + "text": "*Author:*\n${{ github.event.pull_request.user.login }}" + }, + { + "type": "mrkdwn", + "text": "*Merged by:*\n${{ github.event.pull_request.merged_by.login }}" + }, + { + "type": "mrkdwn", + "text": "*Into:*\n${{ github.event.pull_request.base.ref }}" + } + ] + } + ] + } + env: + SLACK_WEBHOOK_URL: ${{ secrets.SLACK_PR_WEBHOOK_URL }} + SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK + + - name: Notify Slack on PR Closed (not merged) + if: github.event.action == 'closed' && github.event.pull_request.merged == false + uses: slackapi/slack-github-action@v1.27.0 + with: + payload: | + { + "text": "❌ PR Closed in pie-website-ng", + "blocks": [ + { + "type": "header", + "text": { + "type": "plain_text", + "text": "❌ Pull Request Closed" + } + }, + { + "type": "section", + "fields": [ + { + "type": "mrkdwn", + "text": "*Repository:*\n${{ github.repository }}" + }, + { + "type": "mrkdwn", + "text": "*PR:*\n<${{ github.event.pull_request.html_url }}|#${{ github.event.pull_request.number }} - ${{ github.event.pull_request.title }}>" + }, + { + "type": "mrkdwn", + "text": "*Author:*\n${{ github.event.pull_request.user.login }}" + } + ] + } + ] + } + env: + SLACK_WEBHOOK_URL: ${{ secrets.SLACK_PR_WEBHOOK_URL }} + SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK + + - name: Notify Slack on PR Review + if: github.event_name == 'pull_request_review' + uses: slackapi/slack-github-action@v1.27.0 + with: + payload: | + { + "text": "👀 PR Review in pie-website-ng", + "blocks": [ + { + "type": "header", + "text": { + "type": "plain_text", + "text": "${{ github.event.review.state == 'approved' && '✅ PR Approved' || github.event.review.state == 'changes_requested' && '🔄 Changes Requested' || '💬 PR Reviewed' }}" + } + }, + { + "type": "section", + "fields": [ + { + "type": "mrkdwn", + "text": "*Repository:*\n${{ github.repository }}" + }, + { + "type": "mrkdwn", + "text": "*PR:*\n<${{ github.event.pull_request.html_url }}|#${{ github.event.pull_request.number }} - ${{ github.event.pull_request.title }}>" + }, + { + "type": "mrkdwn", + "text": "*Reviewer:*\n${{ github.event.review.user.login }}" + }, + { + "type": "mrkdwn", + "text": "*State:*\n${{ github.event.review.state }}" + } + ] + } + ] + } + env: + SLACK_WEBHOOK_URL: ${{ secrets.SLACK_PR_WEBHOOK_URL }} + SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK diff --git a/PIE-vs-Perseus-Analysis.md b/PIE-vs-Perseus-Analysis.md index 7d889fb..e7d7289 100644 --- a/PIE-vs-Perseus-Analysis.md +++ b/PIE-vs-Perseus-Analysis.md @@ -396,7 +396,7 @@ interface PieController { - **PIE-QTI tooling**: Bidirectional import/export - **QTI Assessment Model compatibility**: High degree of alignment - PIE can be **exchanged directly** OR **via QTI** -- Dedicated project: [https://pie-framework.github.io/pie-qti](https://pie-framework.github.io/pie-qti) +- Dedicated project: [https://qti.pie-framework.org](https://qti.pie-framework.org) **Philosophy**: > "QTI (Question and Test Interoperability) is the industry standard for exchanging assessment content between systems. PIE complements QTI by providing rich interactive experiences and predictable rendering beyond QTI's specification." diff --git a/packages/pie-website-app/src/routes/+page.svelte b/packages/pie-website-app/src/routes/+page.svelte index df0ac8f..d23040c 100644 --- a/packages/pie-website-app/src/routes/+page.svelte +++ b/packages/pie-website-app/src/routes/+page.svelte @@ -513,7 +513,7 @@
We're actively developing importers and exporters to seamlessly move between QTI (2.x and 3.x) and PIE formats.
- + Explore PIE-QTI Tools