Hugoifier
45 commits
| .github | Create dependabot.yml | 1 week, 1 day ago | |
| about | Deployed 3eed7c6 with MkDocs version: 1.6.1 | 4 weeks, 1 day ago | |
| architecture | Deployed 3eed7c6 with MkDocs version: 1.6.1 | 4 weeks, 1 day ago | |
| assets | Deployed 3eed7c6 with MkDocs version: 1.6.1 | 4 weeks, 1 day ago | |
| cli-reference | Deployed 3eed7c6 with MkDocs version: 1.6.1 | 4 weeks, 1 day ago | |
| docs | docs: add edge CDN section — static HTML is perfect for edg… | 4 weeks, 1 day ago | |
| getting-started | Deployed 3eed7c6 with MkDocs version: 1.6.1 | 4 weeks, 1 day ago | |
| hugoifier | fix: lint errors and CI — remove macOS, fix unused vars, ad… | 3 weeks, 3 days ago | |
| search | Deployed 3eed7c6 with MkDocs version: 1.6.1 | 4 weeks, 1 day ago | |
| tests | feat: default single/list layouts, frontmatter quoting fix,… | 3 weeks, 3 days ago | |
| .gitignore | Remove 3rd-party Hugo theme ZIPs from tracking | 3.4 KB | 4 weeks, 1 day ago |
| .nojekyll | Deployed 3eed7c6 with MkDocs version: 1.6.1 | 4 weeks, 1 day ago | |
| 404.html | Deployed 3eed7c6 with MkDocs version: 1.6.1 | 20.8 KB | 4 weeks, 1 day ago |
| CNAME | Deployed 3eed7c6 with MkDocs version: 1.6.1 | 13 bytes | 4 weeks, 1 day ago |
| Dockerfile | feat: package as hugoifier PyPI distribution - Rename src/… | 390 bytes | 4 weeks, 1 day ago |
| LICENSE | chore: add OSS community health files (LICENSE, CoC, CONTRI… | 1.1 KB | 4 weeks, 1 day ago |
| MANIFEST.in | feat: package as hugoifier PyPI distribution - Rename src/… | 92 bytes | 4 weeks, 1 day ago |
| README.md | docs: rewrite README with accurate docs and attribution to … | 2.6 KB | 3 weeks, 3 days ago |
| docker-compose.yml | fix(docker): broken CMD, wrong subcommand, missing env vars… | 359 bytes | 4 weeks, 1 day ago |
| index.html | Deployed 3eed7c6 with MkDocs version: 1.6.1 | 31.8 KB | 4 weeks, 1 day ago |
| mkdocs.yml | docs: add 'Why Hugo + Cloudflare' about page | 2.0 KB | 4 weeks, 1 day ago |
| prompts.md | feat(hugoifier): somewhat working POC | 9.0 KB | 1 year, 2 months ago |
| pyproject.toml | fix: lint errors and CI — remove macOS, fix unused vars, ad… | 1.9 KB | 3 weeks, 3 days ago |
| requirements.txt | chore: remove dead code (analyze_html.py) and unused depend… | 44 bytes | 4 weeks, 1 day ago |
| setup.py | feat: package as hugoifier PyPI distribution - Rename src/… | 115 bytes | 4 weeks, 1 day ago |
| sitemap.xml | Deployed 3eed7c6 with MkDocs version: 1.6.1 | 949 bytes | 4 weeks, 1 day ago |
| sitemap.xml.gz | Deployed 3eed7c6 with MkDocs version: 1.6.1 | 256 bytes | 4 weeks, 1 day ago |
README
Hugoifier
Convert any website to a production-ready Hugo site with Decap CMS — pixel-perfect, no content loss.
How it works
Hugoifier takes three types of input and produces a deployable Hugo site with CMS:
| Input | Method | AI needed? |
|---|---|---|
| Hugo theme | Assembles, patches deprecated APIs, adds CMS | No |
| Next.js app | Captures rendered HTML from dev server | No |
| Raw HTML | Extracts head/body directly into Hugo templates | No |
AI is only used as a fallback (Next.js without a running dev server) or for lightweight structural analysis.
Quick start
pip install hugoifier
# Convert a Hugo theme
hugoifier complete themes/my-theme
# Convert a Next.js app (start your dev server first)
hugoifier complete path/to/nextjs-app
# Convert a raw HTML site
hugoifier complete path/to/html-site
Output goes to output/{name}/ — a complete Hugo site ready to serve:
cd output/my-site && hugo serve
What you get
- Hugo site with all content, styles, and assets preserved
- Decap CMS at
/admin/with GitHub OAuth (Cloudflare Pages Functions) functions/api/auth.js+callback.jsfor OAuth flow- Whitelabel CMS branding (
--cms-name,--cms-logo,--cms-color)
Deploy to Cloudflare Pages
hugo --minify
npx wrangler pages deploy public --project-name my-site
Set GITHUB_CLIENT_ID and GITHUB_CLIENT_SECRET as environment variables for CMS auth.
Configuration
# Choose AI backend (only needed for fallback conversion)
HUGOIFIER_BACKEND=anthropic # or openai, google
ANTHROPIC_API_KEY=sk-...
# Whitelabel CMS
hugoifier complete my-site --cms-name "My CMS" --cms-logo https://... --cms-color "#515be3"
Development
git clone https://github.com/ConflictHQ/hugoifier.git
cd hugoifier
pip install -e ".[dev]"
pytest
Built with
Hugoifier is built on top of two excellent open-source projects:
- Hugo — The world's fastest static site generator. Apache 2.0 licensed. Created by Steve Francia and Bjarne Pedersen and contributors.
- Decap CMS (formerly Netlify CMS) — Open-source content management for Git workflows. MIT licensed. Maintained by the Decap community.
We're grateful to both communities for building the tools that make this project possible.
License
MIT — see LICENSE for details.
Made by Conflict.