secubox-openwrt/scripts
CyberMind-FR ef936f1295 docs: Add GitHub Pages documentation site structure
Created comprehensive documentation site using MkDocs Material theme
for GitHub Pages deployment. Moved version sync scripts to secubox-tools.

## Documentation Site (18 new files)

Created docs/ directory with complete documentation:

**Main Pages:**
- index.md - Home page with navigation cards and module overview
- quick-start.md - Quick start guide
- documentation-index.md - Documentation index

**Development Guides:**
- development-guidelines.md - Complete development reference (1857 lines)
- code-templates.md - Working examples and patterns (1405 lines)
- module-implementation-guide.md - Step-by-step workflow (901 lines)

**Reference Documentation:**
- claude.md - Build system and RPCD architecture (553 lines)
- validation-guide.md - Validation workflows (518 lines)
- permissions-guide.md - Permission guidelines (248 lines)
- luci-development-reference.md - LuCI development (1196 lines)

**Module Information:**
- module-status.md - 15 module status (896 lines)
- feature-regeneration-prompts.md - AI prompts (2084 lines)
- todo-analyse.md - Roadmap and tasks (1080 lines)

**Archive (4 files):**
- archive/index.md - Archive index
- archive/build-issues.md - Build troubleshooting
- archive/completion-report.md - Project milestones
- archive/module-enable-disable-design.md - Feature design

**Styling:**
- stylesheets/extra.css - SecuBox custom CSS

## Scripts Reorganization (2 files moved)

Moved version sync utilities to secubox-tools:
- scripts/sync_module_versions.py → secubox-tools/sync_module_versions.py
- scripts/sync_module_versions.sh → secubox-tools/sync_module_versions.sh

## Site Features

- Material theme with dark/light mode
- Responsive design with navigation tabs
- Live search and syntax highlighting
- Custom SecuBox branding (indigo/violet gradients)
- 12,780+ lines of comprehensive documentation

Summary:
- 21 files changed (+12,780 lines)
- 18 new documentation pages
- 2 scripts relocated
- Ready for GitHub Pages deployment

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-28 21:57:29 +01:00
..
README.md docs: Add GitHub Wiki and Pages setup automation 2025-12-28 10:00:05 +01:00
setup-github-pages.sh Add GitHub Pages documentation site with MkDocs Material 2025-12-28 10:06:23 +01:00
setup-wiki.sh docs: Add GitHub Wiki and Pages setup automation 2025-12-28 10:00:05 +01:00

Documentation Publishing Scripts

Version: 1.0.0 Last Updated: 2025-12-28 Purpose: Automated scripts for publishing SecuBox documentation


📜 Available Scripts

1. setup-wiki.sh

Purpose: Sync DOCS/ to GitHub Wiki

Usage:

./scripts/setup-wiki.sh

What it does:

  • Clones wiki repository
  • Creates Home page with navigation
  • Creates sidebar
  • Copies all documentation files
  • Fixes internal links for wiki format
  • Commits and pushes to wiki

Requirements:

  • Git installed
  • Wiki enabled in GitHub repository
  • SSH access to GitHub

Time: ~2 minutes


2. setup-github-pages.sh

Purpose: Create GitHub Pages site with MkDocs Material theme

Usage:

./scripts/setup-github-pages.sh

What it does:

  • Installs MkDocs if needed
  • Creates mkdocs.yml configuration
  • Generates docs/ directory structure
  • Creates beautiful home page
  • Copies all documentation files
  • Fixes internal links for web
  • Builds preview site

Requirements:

  • Python 3.x installed
  • pip3 installed
  • ~100MB disk space

Time: ~10 minutes (first time)


🎯 Which Script to Use?

Use setup-wiki.sh if:

  • You want quick setup (2 minutes)
  • Internal documentation only
  • Simple navigation is sufficient
  • No theming needed

Use setup-github-pages.sh if:

  • You want professional appearance
  • Public documentation
  • Custom domain support needed
  • Dark mode support wanted
  • Better mobile experience needed

Our recommendation: Use GitHub Pages for SecuBox's professional documentation.

See WIKI-SETUP-GUIDE.md for complete setup instructions.


🚀 Quick Start

Option 1: GitHub Wiki

# 1. Enable Wiki in GitHub settings
# 2. Run script
./scripts/setup-wiki.sh

# 3. View at:
# https://github.com/gkerma/secubox-openwrt/wiki
# 1. Install dependencies
sudo apt-get install python3 python3-pip
pip3 install mkdocs mkdocs-material pymdown-extensions

# 2. Run script
./scripts/setup-github-pages.sh

# 3. Test locally
mkdocs serve

# 4. Commit and push
git add mkdocs.yml docs/
git commit -m "Add GitHub Pages documentation"
git push

# 5. Enable in GitHub settings
# Settings → Pages → Source: master, Folder: /docs

# 6. View at:
# https://gkerma.github.io/secubox-openwrt/

📋 Script Features

setup-wiki.sh

Feature Status
Auto-clone wiki repo
Create Home page
Create sidebar navigation
Copy all docs
Fix internal links
Archive organization
Auto-commit & push
Error handling

setup-github-pages.sh

Feature Status
Dependency check
Auto-install MkDocs
Material theme
Dark/Light mode
Search functionality
Mermaid diagrams
Mobile responsive
Custom CSS
Archive organization
Build preview
Link fixing
Error handling

🔄 Updating Documentation

For GitHub Wiki

Just run the script again:

./scripts/setup-wiki.sh

All changes in DOCS/ will be synced to wiki.

For GitHub Pages

# Option 1: Full re-sync
./scripts/setup-github-pages.sh

# Option 2: Manual update
cp DOCS/CHANGED-FILE.md docs/changed-file.md
mkdocs build
git add docs/
git commit -m "Update docs"
git push

🐛 Troubleshooting

setup-wiki.sh

Error: "Wiki repository doesn't exist"

Error: "Permission denied"

  • Ensure SSH key is configured for GitHub
  • Test: ssh -T git@github.com

setup-github-pages.sh

Error: "mkdocs: command not found"

  • Install MkDocs: pip3 install mkdocs mkdocs-material
  • Or run script again (auto-installs)

Error: "No module named 'material'"

  • Install theme: pip3 install mkdocs-material

Error: "Build failed"

  • Check mkdocs.yml syntax
  • Test: mkdocs build --strict
  • Check Python version: python3 --version (need 3.6+)

📊 Comparison

Aspect Wiki Script Pages Script
Setup Time 2 min 10 min
Dependencies Git only Python, MkDocs
Result Basic wiki Professional site
Theme Default Material Design
Features Basic Advanced
Mobile OK Excellent
SEO Basic Good
Custom Domain No Yes

🎨 Customization

Wiki

Edit generated files in wiki repository:

git clone https://github.com/gkerma/secubox-openwrt.wiki.git
cd secubox-openwrt.wiki
# Edit _Sidebar.md, Home.md, etc.
git commit -am "Customize wiki"
git push

GitHub Pages

Edit mkdocs.yml and docs/stylesheets/extra.css:

# Change theme colors
vim mkdocs.yml

# Change custom styles
vim docs/stylesheets/extra.css

# Rebuild
mkdocs build

📞 Support

Script Issues:

  • Check error messages in script output
  • Verify dependencies installed
  • Ensure DOCS/ directory exists

Need Help:


📝 Script Maintenance

Update scripts:

# Edit scripts
vim scripts/setup-wiki.sh
vim scripts/setup-github-pages.sh

# Test changes
./scripts/setup-wiki.sh --dry-run  # (if implemented)

# Commit
git add scripts/
git commit -m "Update wiki setup scripts"
git push

Last Updated: 2025-12-28 Maintainer: CyberMind.fr License: Apache-2.0