π¬ Generate branded prospect websites with Claude, Jina, GitHub Pages, and Gmail
β‘ 57 views Β· π¬ Content Creation & Video
π‘ Pro Tip β If you need GitHub data beyond what the REST API gives you, ScraperNode has a repository scraper that extracts metadata at scale without token rate limits.
Description
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/.
π Nodes Used
GitHub, HTTP Request, Gmail, n8n Form Trigger
π₯ Import
Download workflow.json and import into n8n:
Workflow menu β Import from File