diff --git a/.github/workflows/auto_add_project.yml b/.github/workflows/auto_add_project.yml index 0fc12666..a9dd153a 100644 --- a/.github/workflows/auto_add_project.yml +++ b/.github/workflows/auto_add_project.yml @@ -12,5 +12,5 @@ jobs: steps: - uses: actions/add-to-project@v0.5.0 with: - project-url: https://github.com/orgs/push-protocol/projects/10 + project-url: https://github.com/orgs/pushchain/projects/10 github-token: ${{ secrets.ADD_TO_PROJECT_PAT }} \ No newline at end of file diff --git a/.github/workflows/check-links.yml b/.github/workflows/check-links.yml new file mode 100644 index 00000000..6dd69f08 --- /dev/null +++ b/.github/workflows/check-links.yml @@ -0,0 +1,64 @@ +name: Check Links + +on: + pull_request: + branches: + - main + paths: + - '**.md' + - '**.mdx' + - 'docs/**' + push: + branches: + - main + schedule: + # Run weekly on Mondays at 9 AM UTC + - cron: '0 9 * * 1' + workflow_dispatch: + +jobs: + check-links: + runs-on: ubuntu-latest + name: Check for broken links + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + with: + fetch-depth: 1 + + - name: Check links in Markdown files + uses: lycheeverse/lychee-action@v2 + with: + # Check all markdown files in the repository + args: | + --verbose + --no-progress + --max-retries 3 + --timeout 20 + --exclude-path node_modules + --exclude-path .git + --exclude-path build + --exclude-path dist + --exclude 'linkedin.com/in/*' + --exclude 'twitter.com/*' + --exclude 'x.com/*' + '**/*.md' + '**/*.mdx' + + # Fail action on broken links + fail: true + + # Output file for results + output: lychee-results.md + + # Format of the output + format: markdown + + - name: Upload link check results + if: always() + uses: actions/upload-artifact@v4 + with: + name: link-check-results + path: lychee-results.md + retention-days: 30 diff --git a/.lycheeignore b/.lycheeignore new file mode 100644 index 00000000..dc43fa62 --- /dev/null +++ b/.lycheeignore @@ -0,0 +1,16 @@ +# Ignore social media profile links (they often block bots) +https://twitter.com/* +https://x.com/* +https://linkedin.com/* +https://facebook.com/* + +# Ignore localhost links +http://localhost* +http://127.0.0.1* + +# Ignore example/placeholder URLs +https://example.com/* + +# Ignore any authentication-required URLs +**/login +**/signin diff --git a/README.md b/README.md index 3c8eb407..9b724b64 100644 --- a/README.md +++ b/README.md @@ -45,7 +45,7 @@ Click on the packages to view more details. - **[Docs](https://push.org/docs)** For comprehensive documentation. - **[Blog](https://medium.com/push-protocol)** To learn more about our partners, new launches, etc. - **[Discord](https://discord.com/invite/pushchain)** for support and discussions with the community and the team. -- **[GitHub](https://github.com/push-protocol)** for source code, project board, issues, and pull requests. +- **[GitHub](https://github.com/pushchain)** for source code, project board, issues, and pull requests. - **[X/Twitter](https://x.com/pushchain)** for the latest updates on the product and published blogs. ## Contributing @@ -56,7 +56,7 @@ Push Protocol is an open source Project. We firmly believe in a completely trans - Feature Request: Please submit a feature request if you have an idea or discover a capability that would make development simpler and more reliable. - Documentation Request: If you're reading the Push documentation and believe that we're missing something, please create a docs request. - Not sure where to start? Join our discord and we will help you get started!