vercel / on-demand-isr

on-demand-isr.vercel.app
MIT License
788 stars 65 forks source link

Deploy with Vercel

On-Demand Incremental Static Regeneration

Demo of On-demand ISR in Next.js using GitHub Issues. When a new issue is created, a webhook from a GitHub App pushes new changes to the deployed application to regenerate the static page.

Setup

  1. Create a new GitHub App
    1. Provide the URL of your deployed application for Homepage URL
    2. Ensure Webhook "Active" is checked
    3. Add <your-site>/api/webhook as the Webhook URL
    4. Create a Webhook secret and add it to .env.local as GITHUB_WEBHOOK_SECRET
    5. Give "Read Only" access to Issues
    6. Subscribe to "Issues" events
  2. Add the App ID to .env.local as GITHUB_APP_ID
  3. Generate a private key and add it to .env.local as GITHUB_APP_PK_PEM
  4. Install the newly created GitHub App for your repo
  5. https://github.com/settings/apps/<your-app-name>/installations

Running Locally

$ bun dev

Learn More