name: site-deploy description: Build, preview, and deploy the VisaJobs.xyz Eleventy site. Use when the user asks to build, deploy, push, preview the site, run the dev server, or fix build errors.
Build & Deploy VisaJobs.xyz
Tech Stack
- Generator: Eleventy 3.x (config:
.eleventy.js) - Styling: Tailwind CSS 3.4 (config:
tailwind.config.js) - Templates: Nunjucks (
.njk) insrc/ - Search: Pagefind (post-build indexing)
- Hosting: GitHub Pages (repo:
relocate-with-us/relocate-with-us.github.io) - Domain: visajobs.xyz (CNAME file)
Project Structure
src/
├── _data/ # Global data (jobs.json, companies.json, site.json)
├── _includes/
│ ├── layouts/ # base.njk
│ └── partials/ # header, footer, newsletter
├── assets/
│ ├── css/input.css
│ └── js/main.js
├── index.njk # Home page
├── visa-sponsored-jobs/ # Main job listing
├── relocation-jobs/ # Relocation-focused listing
├── blog/ # Markdown blog posts
├── resources/ # Country guides, tips
└── tools/ # Visa checker, salary calc, etc.
media/ # Company logos (passthrough copied)
favicon/ # Favicons
Commands
Install dependencies
npm install
Development server
npx @11ty/eleventy --serve
Production build
npx @11ty/eleventy
Build output: _site/
Build Tailwind CSS
npx tailwindcss -i src/assets/css/input.css -o _site/assets/css/styles.css
Run Pagefind indexing (after build)
npx pagefind --site _site
Deploy (GitHub Pages)
The site auto-deploys on push to main via GitHub Pages.
git add -A
git commit -m "description of changes"
git push origin main
Remote URL
Currently HTTPS. To switch to SSH (avoids token prompts):
git remote set-url origin git@github.com:relocate-with-us/relocate-with-us.github.io.git
Key Config Notes
.eleventy.jscopiessrc/_data/jobs.jsonto_site/db.jsonafter build (legacy compatibility)src/_data/site.jsonholds site metadata, social links, analytics IDs- Google Analytics:
G-E6NMFQFHMZ - AdSense:
ca-pub-7578309605540082 - Grow.me/Mediavine Journey script is in
base.njk<head>
Common Issues
| Issue | Fix | |-------|-----| | Styles missing | Run Tailwind build before/alongside Eleventy | | Search broken | Run Pagefind after Eleventy build | | db.json stale | Rebuild — it's auto-copied from jobs.json | | Push needs token | Switch remote to SSH (see above) |
Docker Compose Architect
DevOps
Designs optimized Docker Compose configurations.
Incident Postmortem Writer
DevOps
Writes structured and blameless incident postmortem reports.
Runbook Creator
DevOps
Creates clear operational runbooks for common DevOps procedures.