Quick overview
This workflow collects a company name, website URL, and recipient email via an n8n form, scrapes the company website with Jina AI Reader, uses Anthropic Claude to extract brand content and generate a single-page HTML site, publishes it to GitHub Pages, and emails the live link via Gmail.
How it works
- Triggers on an n8n form submission that provides the company name, company website URL, and an email address.
- Fetches the homepage via Jina AI Reader, discovers up to 20 relevant internal links, and scrapes those pages to compile a combined content snapshot.
- Sends the full scraped content to Anthropic Claude Haiku to extract only the site’s real brand elements (colors, headlines, links, and section content) as structured JSON.
- Sends the extracted JSON to Anthropic Claude Sonnet to generate a complete single-file animated HTML website and then cleans the response to keep only valid HTML.
- Base64-encodes the HTML and uploads it to a GitHub repository under a company-specific folder for GitHub Pages hosting.
- If the target file already exists in GitHub, updates the existing file instead of failing, then builds the final GitHub Pages URL.
- Waits briefly for deployment and sends the generated site URL to the provided email address using Gmail.
Setup
- Create an Anthropic credential in n8n and attach it to both Claude HTTP Request steps.
- Set the JINA_API_KEY as an n8n environment variable so the workflow can scrape additional internal pages with Jina AI Reader.
- Provide GitHub credentials with write access to the target repository and ensure GitHub Pages is enabled for the repo/path used in the published URL.
- Add a Gmail OAuth2 credential and confirm the workflow’s email fields (recipient and message content) match your form inputs.
- Update the GitHub owner/repo name and the GitHub Pages base URL if you are not using izu737/job-sites and https://izu737.github.io/job-sites/.