cd /home/spinoza/github/beta/fuzzy-infer
# Install with pip
pip install mkdocs-material mkdocstrings[python] mkdocs-jupyter mkdocs-git-revision-date-localized-plugin
# Or install all dev dependencies
pip install -e ".[dev]"# Serve documentation locally
mkdocs serve
# Open browser to http://localhost:8000
# Documentation will auto-reload when you save changes# Build static site
mkdocs build
# Build with strict mode (catches errors)
mkdocs build --strict
# Output is in ./site/ directoryAlready configured! The workflow at .github/workflows/docs.yml will automatically deploy on push to master.
Steps:
-
Enable GitHub Pages in Repository Settings:
- Go to: https://github.com/queelius/fuzzy-infer/settings/pages
- Under "Build and deployment":
- Source: GitHub Actions
- Save
-
Push your code:
git add . git commit -m "Add comprehensive MkDocs documentation" git push origin master
-
Monitor deployment:
- Go to: https://github.com/queelius/fuzzy-infer/actions
- Watch the "Deploy Documentation" workflow
- When complete, documentation will be at: https://queelius.github.io/fuzzy-infer/
# Build and deploy to gh-pages branch
mkdocs gh-deploy
# With custom message
mkdocs gh-deploy -m "Update documentation"docs/
├── index.md # Homepage
├── quick-start.md # 5-minute quick start
├── installation.md # Installation guide
├── guide/
│ ├── concepts.md # Core fuzzy logic concepts
│ ├── inference.md # How inference engine works
│ ├── fluent-api.md # Fluent API guide
│ ├── cli.md # Command-line interface
│ ├── unix-pipes.md # Unix philosophy & pipelines
│ ├── examples.md # Code examples
│ └── notebook.ipynb # Interactive Jupyter tutorial
├── api/
│ ├── core.md # Core module API reference
│ ├── models.md # Data models API
│ ├── fluent.md # Fluent API reference
│ ├── jsonl.md # JSONL serialization API
│ └── cli.md # CLI module reference
├── development/
│ └── contributing.md # Contributing guide
├── DEPLOYMENT.md # This deployment guide
└── CHANGELOG.md # Version history
After deployment, verify:
- Documentation is accessible at GitHub Pages URL
- All navigation links work
- Search functionality works
- Code examples render correctly
- Jupyter notebook renders
- API documentation displays properly
- Images/diagrams display (if any)
- Dark/light mode toggle works
- Mobile responsive design works
Solution:
pip install mkdocs-materialSolution:
# Install all documentation dependencies
pip install mkdocstrings[python] mkdocs-jupyter mkdocs-git-revision-date-localized-pluginSolution:
- Check workflow file at
.github/workflows/docs.yml - Ensure GitHub Pages is enabled with source "GitHub Actions"
- Check Actions tab for error details
- Verify all dependencies are in
pyproject.toml
Solution:
- Clear browser cache
- Wait 2-3 minutes for GitHub Pages to update
- Check workflow completed successfully
- Try hard refresh (Ctrl+Shift+R or Cmd+Shift+R)
Solution:
# Build with strict mode to find issues
mkdocs build --strict
# Fix any reported errorsEdit mkdocs.yml:
theme:
palette:
- scheme: default
primary: indigo # Change this
accent: orange # Change this- Create markdown file in
docs/ - Add to
mkdocs.ymlnavigation:
nav:
- User Guide:
- New Page: guide/new-page.md- Test locally:
mkdocs serve
API docs auto-generate from docstrings. To update:
- Update docstrings in Python code
- Rebuild documentation:
mkdocs build
# Update documentation dependencies
pip install --upgrade mkdocs-material mkdocstrings mkdocs-jupyter
# Test build still works
mkdocs build --strict- Test all code examples regularly
- Update for new Python versions
- Verify links are not broken
- Update screenshots if UI changes
Add Google Analytics to track:
- Popular pages
- Search queries
- User flow
- Bounce rate
Use mike for version management:
pip install mike
# Deploy version 2.0
mike deploy 2.0 latest --update-aliases
# Set default
mike set-default latest
# Serve versioned docs
mike serveTo use custom domain:
-
Create
docs/CNAMEfile with domain:docs.fuzzy-infer.org -
Configure DNS with CNAME record pointing to:
queelius.github.io -
Enable in GitHub Pages settings
- MkDocs: https://www.mkdocs.org/
- Material Theme: https://squidfunk.github.io/mkdocs-material/
- mkdocstrings: https://mkdocstrings.github.io/
- GitHub Pages: https://pages.github.com/
For documentation issues:
- Open issue: https://github.com/queelius/fuzzy-infer/issues
- Check existing docs: https://queelius.github.io/fuzzy-infer/
- Review deployment guide:
docs/DEPLOYMENT.md
Your documentation is ready to deploy! Just:
- Install dependencies:
pip install mkdocs-material mkdocstrings[python] mkdocs-jupyter mkdocs-git-revision-date-localized-plugin - Test locally:
mkdocs serve - Enable GitHub Pages (source: GitHub Actions)
- Push to master:
git push origin master - Visit: https://queelius.github.io/fuzzy-infer/
That's it! 🎉
Created: 2025-10-12 Status: Complete and ready for deployment Estimated Build Time: 2-3 minutes on GitHub Actions