Compare commits

...

8 Commits

Author SHA1 Message Date
jango-blockchained
2892f24030 docs: Revert to standard git revision date plugin
- Replace mkdocs-git-revision-date-localized-plugin with mkdocs-git-revision-date-plugin
- Update plugin configuration in mkdocs.yml
- Modify documentation requirements to use standard revision date plugin
2025-02-05 23:56:08 +01:00
jango-blockchained
1e3442db14 docs: Update git revision date plugin to localized version
- Replace mkdocs-git-revision-date-plugin with mkdocs-git-revision-date-localized-plugin
- Update plugin version in mkdocs.yml configuration
- Upgrade plugin version in documentation requirements
2025-02-05 23:48:12 +01:00
jango-blockchained
f74154d96f docs: Disable social cards and pin social plugin version
- Modify MkDocs configuration to disable social cards
- Pin mkdocs-social-plugin to version 0.1.0 in requirements
- Prevent potential issues with social card generation
2025-02-05 23:41:08 +01:00
jango-blockchained
36d83e0a0e docs: Update MkDocs documentation configuration and dependencies
- Modify mkdocstrings plugin configuration to use default Python handler
- Update documentation requirements to include mkdocstrings-python
- Simplify MkDocs plugin configuration for documentation generation
2025-02-05 23:38:17 +01:00
jango-blockchained
33defac76c docs: Refine MkDocs configuration and GitHub Actions deployment
- Update site name, description, and documentation structure
- Enhance MkDocs theme features and navigation
- Modify documentation navigation to use nested structure
- Improve GitHub Actions workflow with more robust deployment steps
- Add site directory configuration for GitHub Pages
2025-02-05 23:35:20 +01:00
jango-blockchained
4306a6866f docs: Simplify documentation site configuration and deployment
- Streamline MkDocs navigation structure
- Reduce complexity in GitHub Actions documentation workflow
- Update documentation dependencies and requirements
- Simplify site name and deployment configuration
2025-02-05 23:29:50 +01:00
jango-blockchained
039f6890a7 housekeeping 2025-02-05 23:24:26 +01:00
jango-blockchained
4fff318ea9 docs: Enhance documentation deployment and site configuration
- Update MkDocs configuration with new features and plugins
- Add deployment guide for documentation
- Restructure documentation navigation and index page
- Create GitHub Actions workflow for automatic documentation deployment
- Fix typos in site URLs and configuration
2025-02-05 21:07:39 +01:00
8 changed files with 230 additions and 87 deletions

View File

@@ -1,38 +1,34 @@
name: Deploy MkDocs
name: Deploy Documentation
on:
push:
branches:
- main # or master, depending on your default branch
workflow_dispatch:
permissions:
contents: write
- main
paths:
- 'docs/**'
- 'mkdocs.yml'
jobs:
deploy:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-python@v5
with:
python-version: '3.x'
cache: 'pip'
- name: Install dependencies
run: |
pip install mkdocs-material
pip install mkdocs-git-revision-date-localized-plugin
pip install mkdocstrings[python]
python -m pip install --upgrade pip
pip install -r docs/requirements.txt
- name: Configure Git
run: |
git config --global user.name "github-actions[bot]"
git config --global user.email "github-actions[bot]@users.noreply.github.com"
- name: Build docs
run: mkdocs build
- name: Deploy to GitHub Pages
- name: Build and Deploy
run: |
git checkout --orphan gh-pages
git rm -rf .
mv site/* .
rm -rf site
git add .
git commit -m "docs: Update documentation"
git push origin gh-pages --force
mkdocs build --strict
mkdocs gh-deploy --force --clean

View File

@@ -1,32 +0,0 @@
name: Deploy Documentation
on:
push:
branches:
- main
paths:
- 'docs/**'
- 'mkdocs.yml'
permissions:
contents: write
jobs:
deploy-docs:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: 3.x
- name: Install dependencies
run: |
pip install mkdocs-material
pip install mkdocs
- name: Deploy documentation
run: mkdocs gh-deploy --force

View File

@@ -232,3 +232,11 @@ The current API version is v1. Include the version in the URL:
- [Core Functions](core.md) - Detailed endpoint documentation
- [Architecture Overview](../architecture.md) - System design details
- [Troubleshooting](../troubleshooting.md) - Common issues and solutions
# API Reference
The Advanced Home Assistant MCP provides several APIs for integration and automation:
- [Core API](core-api.md) - Primary interface for system control
- [SSE API](sse.md) - Server-Sent Events for real-time updates
- [Core Functions](core.md) - Essential system functions

141
docs/deployment.md Normal file
View File

@@ -0,0 +1,141 @@
# Deployment Guide
This documentation is automatically deployed to GitHub Pages using GitHub Actions. Here's how it works and how to manage deployments.
## Automatic Deployment
The documentation is automatically deployed when changes are pushed to the `main` or `master` branch. The deployment process:
1. Triggers on push to main/master
2. Sets up Python environment
3. Installs required dependencies
4. Builds the documentation
5. Deploys to the `gh-pages` branch
### GitHub Actions Workflow
The deployment is handled by the workflow in `.github/workflows/deploy-docs.yml`. This is the single source of truth for documentation deployment:
```yaml
name: Deploy MkDocs
on:
push:
branches:
- main
- master
workflow_dispatch: # Allow manual trigger
```
## Manual Deployment
If needed, you can deploy manually using:
```bash
# Create a virtual environment
python -m venv venv
# Activate the virtual environment
source venv/bin/activate
# Install dependencies
pip install -r docs/requirements.txt
# Build the documentation
mkdocs build
# Deploy to GitHub Pages
mkdocs gh-deploy --force
```
## Best Practices
### 1. Documentation Updates
- Test locally before pushing: `mkdocs serve`
- Verify all links work
- Ensure images are optimized
- Check mobile responsiveness
### 2. Version Control
- Keep documentation in sync with code versions
- Use meaningful commit messages
- Tag important documentation versions
### 3. Content Guidelines
- Use consistent formatting
- Keep navigation structure logical
- Include examples where appropriate
- Maintain up-to-date screenshots
### 4. Maintenance
- Regularly review and update content
- Check for broken links
- Update dependencies
- Monitor GitHub Actions logs
## Troubleshooting
### Common Issues
1. **Failed Deployments**
- Check GitHub Actions logs
- Verify dependencies are up to date
- Ensure all required files exist
2. **Broken Links**
- Run `mkdocs build --strict`
- Use relative paths in markdown
- Check case sensitivity
3. **Style Issues**
- Verify theme configuration
- Check CSS customizations
- Test on multiple browsers
## Configuration Files
### requirements.txt
Create a requirements file for documentation dependencies:
```txt
mkdocs-material
mkdocs-minify-plugin
mkdocs-git-revision-date-plugin
mkdocs-mkdocstrings
mkdocs-social-plugin
mkdocs-redirects
```
## Monitoring
- Check [GitHub Pages settings](https://github.com/jango-blockchained/advanced-homeassistant-mcp/settings/pages)
- Monitor build status in Actions tab
- Verify site accessibility
## Workflow Features
### Caching
The workflow implements caching for Python dependencies to speed up deployments:
- Pip cache for Python packages
- MkDocs dependencies cache
### Deployment Checks
Several checks are performed during deployment:
1. Link validation with `mkdocs build --strict`
2. Build verification
3. Post-deployment site accessibility check
### Manual Triggers
You can manually trigger deployments using the "workflow_dispatch" event in GitHub Actions.
## Cleanup
To clean up duplicate workflow files, run:
```bash
# Make the script executable
chmod +x scripts/cleanup-workflows.sh
# Run the cleanup script
./scripts/cleanup-workflows.sh
```

View File

@@ -0,0 +1,8 @@
# Getting Started
Welcome to the Advanced Home Assistant MCP getting started guide. Follow these steps to begin:
1. [Installation](installation.md)
2. [Configuration](configuration.md)
3. [Docker Setup](docker.md)
4. [Quick Start](quickstart.md)

View File

@@ -4,9 +4,18 @@ title: Home
nav_order: 1
---
# 🏠 MCP Server for Home Assistant
# Advanced Home Assistant MCP
Welcome to the Model Context Protocol (MCP) Server documentation! This guide will help you get started with integrating a lightweight automation tool with your Home Assistant setup.
Welcome to the Advanced Home Assistant Master Control Program documentation.
This documentation provides comprehensive information about setting up, configuring, and using the Advanced Home Assistant MCP system.
## Quick Links
- [Getting Started](getting-started/index.md)
- [API Reference](api/index.md)
- [Configuration Guide](getting-started/configuration.md)
- [Docker Setup](getting-started/docker.md)
## What is MCP Server?

12
docs/requirements.txt Normal file
View File

@@ -0,0 +1,12 @@
mkdocs>=1.5.0
mkdocs-material>=9.0.0
mkdocs-minify-plugin>=0.7.1
mkdocstrings>=0.24.0
mkdocstrings-python>=1.0.0
mkdocs-social-plugin==0.1.0
mkdocs-redirects>=1.2.1
mkdocs-glightbox>=0.3.4
pillow>=10.0.0
cairosvg>=2.7.0
pymdown-extensions>=10.0
mkdocs-git-revision-date-plugin

View File

@@ -1,11 +1,23 @@
site_name: Advanced Home Assistant MCP
site_url: https://jango-blockchained.github.io/advanced-homeassitant-mcp
repo_url: https://github.com/jango-blockchained/advanced-homeassitant-mcp
site_name: MCP Server for Home Assistant
site_url: https://jango-blockchained.github.io/advanced-homeassistant-mcp
repo_url: https://github.com/jango-blockchained/advanced-homeassistant-mcp
site_description: Home Assistant MCP Server Documentation
# Add this to handle GitHub Pages serving from a subdirectory
site_dir: site/advanced-homeassistant-mcp
theme:
name: material
logo: assets/images/logo.png
favicon: assets/images/favicon.ico
features:
- navigation.instant
- navigation.tracking
- navigation.sections
- navigation.expand
- navigation.top
- search.suggest
- search.highlight
- content.code.copy
palette:
- scheme: default
primary: indigo
@@ -19,15 +31,6 @@ theme:
toggle:
icon: material/brightness-4
name: Switch to light mode
features:
- navigation.instant
- navigation.tracking
- navigation.sections
- navigation.expand
- navigation.top
- search.suggest
- search.highlight
- content.code.copy
markdown_extensions:
- pymdownx.highlight:
@@ -39,36 +42,33 @@ markdown_extensions:
- pymdownx.details
- attr_list
- md_in_html
- pymdownx.emoji
- pymdownx.tasklist
- footnotes
- tables
plugins:
- search
- git-revision-date-localized:
type: date
- mkdocstrings:
default_handler: python
handlers:
python:
options:
show_source: true
- minify:
minify_html: true
- mkdocstrings
- social:
cards: false # Disable social cards if they cause issues
- tags
- redirects
- gh-deploy
- git-revision-date
nav:
- Home: index.md
- Getting Started:
- Installation: getting-started/installation.md
- Quick Start: getting-started/quickstart.md
- API Reference: api/index.md
- Usage: usage.md
- API: api.md
- Configuration:
- Claude Desktop Config: claude_desktop_config.md
- Cline Config: cline_config.md
- Getting Started:
- Overview: getting-started.md
- Installation: getting-started/installation.md
- Configuration: getting-started/configuration.md
- Docker Setup: getting-started/docker.md
- Quick Start: getting-started/quickstart.md
- API Reference:
- Overview: api/index.md
- Core API: api.md
- SSE API: api/sse.md
- Core Functions: api/core.md
- Client Config: client_config.md
- Tools:
- Overview: tools/tools.md
- Device Management:
@@ -94,6 +94,7 @@ nav:
- Interfaces: development/interfaces.md
- Tool Development: development/tools.md
- Testing Guide: testing.md
- Deployment Guide: deployment.md
- Architecture: architecture.md
- Contributing: contributing.md
- Troubleshooting: troubleshooting.md