pydevelop-docs


Namepydevelop-docs JSON
Version 0.1.0 PyPI version JSON
download
home_pagehttps://will.astley.dev
SummaryUniversal Python documentation generator with 40+ Sphinx extensions pre-configured. Zero-configuration setup for beautiful, professional documentation.
upload_time2025-08-20 23:32:13
maintainerNone
docs_urlNone
authorWilliam R. Astley
requires_python<3.13,>=3.12
licenseNone
keywords documentation sphinx python docs api autodoc
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # PyDevelop-Docs

> **Universal Python documentation generator with 40+ Sphinx extensions pre-configured**

[![PyPI version](https://badge.fury.io/py/pydevelop-docs.svg)](https://badge.fury.io/py/pydevelop-docs)
[![Python Support](https://img.shields.io/pypi/pyversions/pydevelop-docs.svg)](https://pypi.org/project/pydevelop-docs/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

Transform any Python project into beautiful, professional documentation with **zero configuration**. PyDevelop-Docs automatically detects your project structure and generates a complete Sphinx documentation setup with modern themes, extensive features, and intelligent API documentation.

## ✨ Features

### 🎯 **Zero Configuration**
- **Works immediately** with any Python project structure
- **Automatic detection** of monorepos, single packages, src layouts, flat layouts
- **Smart path configuration** for AutoAPI and asset management
- **Intelligent metadata extraction** from pyproject.toml, setup.py

### 📦 **Universal Project Support**
- **Monorepos**: `packages/package-name/` structures
- **Src Layout**: `src/package_name/` organization  
- **Flat Layout**: Package in project root
- **Simple Projects**: Basic Python files

### 🎨 **Professional Appearance**
- **Beautiful Furo theme** with dark mode support
- **Responsive design** for all devices
- **Custom CSS enhancements** for better readability
- **Professional navigation** with hierarchical organization

### 🔧 **40+ Pre-configured Extensions**
- **AutoAPI** with hierarchical organization (not flat alphabetical!)
- **Syntax highlighting** with copy buttons
- **Mermaid diagrams** and PlantUML support
- **Interactive elements** with sphinx-design
- **SEO optimization** with sitemaps and OpenGraph
- **And much more!** See [complete extension list](#included-extensions)

### ⚡ **Smart CLI Commands**
- **`setup-general`**: Analyze and set up any Python project
- **`copy-setup`**: Transfer documentation between projects  
- **Interactive and non-interactive** modes available
- **Dry-run capability** for previewing actions

## 🚀 Quick Start

### Installation
```bash
pip install pydevelop-docs
```

### One-Command Setup
```bash
# Set up documentation for any Python project
pydevelop-docs setup-general /path/to/your/project

# Navigate and build
cd /path/to/your/project/docs
make html

# Your documentation is ready at build/html/index.html! 🎉
```

That's it! PyDevelop-Docs automatically:
- ✅ Detects your project type and structure
- ✅ Configures 40+ Sphinx extensions
- ✅ Sets up AutoAPI with proper paths
- ✅ Creates professional homepage and navigation
- ✅ Installs beautiful theme with custom styling

## 📋 Project Types Supported

### Monorepo Structure
```
my-monorepo/
├── packages/
│   ├── package-a/
│   │   └── src/package_a/
│   ├── package-b/ 
│   │   └── src/package_b/
│   └── package-c/
│       └── src/package_c/
└── pyproject.toml
```
**Detection**: ✅ Monorepo | **AutoAPI**: `['../packages']`

### Src Layout
```
my-package/
├── src/
│   └── my_package/
├── tests/
├── docs/  # ← Created here
└── pyproject.toml
```
**Detection**: ✅ Single Package | **AutoAPI**: `['../../src']`

### Flat Layout  
```
my-package/
├── my_package/
├── tests/
├── docs/  # ← Created here
└── pyproject.toml
```
**Detection**: ✅ Single Package | **AutoAPI**: `['../my_package']`

### Simple Project
```
my-scripts/
├── main.py
├── utils.py
├── docs/  # ← Created here
└── requirements.txt
```
**Detection**: ✅ Simple Project | **AutoAPI**: `['..']`

## 🛠️ Usage Examples

### Command Line Interface

```bash
# Interactive setup with project analysis
pydevelop-docs setup-general /path/to/project

# Non-interactive setup
pydevelop-docs setup-general /path/to/project --non-interactive --force

# Preview what will be created
pydevelop-docs setup-general /path/to/project --dry-run

# Custom documentation directory
pydevelop-docs setup-general /path/to/project --target-dir /custom/docs/path

# Copy documentation setup between projects
pydevelop-docs copy-setup /source/project /destination/project --include-config
```

### Python API

```python
from pydevelop_docs import setup_project_docs

# One-line setup
result = setup_project_docs("/path/to/project")
print(f"Documentation created at: {result['target_dir']}")

# Non-interactive with custom options
result = setup_project_docs(
    "/path/to/project",
    target_dir="/custom/location",
    force=True,
    interactive=False
)

# Preview without executing
plan = setup_project_docs("/path/to/project", dry_run=True)
for action in plan['actions']:
    print(f"Would create: {action}")
```

### Advanced Configuration

```python
from pydevelop_docs.config import get_haive_config

# Get pre-configured Sphinx configuration
config = get_haive_config(
    package_name="my-package",
    package_path="/path/to/package"
)

# Use in your docs/source/conf.py
globals().update(config)
```

### Project Analysis

```python
from pydevelop_docs.general_setup import ProjectDetector
from pathlib import Path

# Analyze any Python project
detector = ProjectDetector(Path("/path/to/project"))
info = detector.detect_project_type()

print(f"Project type: {info['type']}")  # monorepo, single_package, etc.
print(f"Package manager: {info['package_manager']}")  # poetry, setuptools, etc.
print(f"Found {len(info['packages'])} packages")
print(f"Structure: {info['structure']['pattern']}")
```

## 📖 Generated Documentation Structure

PyDevelop-Docs creates a complete documentation setup:

```
docs/
├── Makefile                    # Build automation
├── requirements.txt            # Documentation dependencies  
├── source/
│   ├── conf.py                # Complete Sphinx configuration
│   ├── index.rst              # Professional homepage
│   ├── _static/               # CSS, JavaScript, assets
│   │   ├── css/
│   │   │   ├── custom.css     # Custom styling
│   │   │   └── furo-intense.css # Dark mode fixes
│   │   └── js/
│   │       └── api-enhancements.js
│   ├── _templates/            # Custom Jinja2 templates
│   └── autoapi/               # Auto-generated API docs
│       └── index.rst          # API reference (hierarchical!)
└── build/
    └── html/                  # Built documentation
        └── index.html         # Your beautiful docs! 🎉
```

## 🎨 Theme and Styling

### Furo Theme with Enhancements
- **Modern responsive design** that works on all devices
- **Dark/light mode toggle** with proper contrast
- **Smooth animations** and professional typography
- **Enhanced navigation** with improved sidebar
- **Custom color scheme** optimized for readability

### Key Styling Features
- **Hierarchical API navigation** (not flat alphabetical lists!)
- **Improved code block styling** with copy buttons
- **Better table and admonition styling**
- **Enhanced mobile experience**
- **Professional color scheme** with accessibility focus

## 🔧 Included Extensions

PyDevelop-Docs includes 40+ carefully selected and pre-configured Sphinx extensions:

### Core Documentation
- `sphinx.ext.autodoc` - Automatic API documentation
- `sphinx.ext.napoleon` - Google/NumPy docstring support
- `sphinx.ext.viewcode` - Source code links
- `sphinx.ext.intersphinx` - Cross-project linking

### API Documentation  
- `autoapi.extension` - Automatic API reference (with hierarchical fix!)
- `sphinx_autodoc_typehints` - Type hint documentation
- `sphinxcontrib.autodoc_pydantic` - Pydantic model documentation

### Enhanced Features
- `myst_parser` - Markdown support
- `sphinx_copybutton` - Copy code buttons
- `sphinx_design` - Modern UI components
- `sphinx_tabs` - Tabbed content
- `sphinxcontrib.mermaid` - Diagram support

### SEO and Discovery
- `sphinx_sitemap` - SEO sitemaps
- `sphinxext.opengraph` - Social media previews
- `sphinx_favicon` - Custom favicons

### And Many More!
See the [complete extension list](docs/extensions.md) with configuration details.

## ⚙️ Configuration Details

### AutoAPI Hierarchical Organization

**The Problem**: Default AutoAPI creates flat, alphabetical lists of 200+ classes that are impossible to navigate.

**Our Solution**: Hierarchical organization that follows your project structure:

```python
# Key configuration in generated conf.py
autoapi_own_page_level = "module"  # Keep classes with their modules!
autoapi_options = [
    "members",
    "undoc-members", 
    "show-inheritance",
    "show-module-summary",  # Enables hierarchical grouping
]
```

**Result**: Beautiful organized navigation like:
```
📦 my_package
├── 📁 core
│   ├── 📄 engine (3 classes)
│   └── 📄 schema (5 classes)  
└── 📁 utils
    └── 📄 helpers (2 functions)
```

Instead of:
```
❌ All Classes (A-Z)
├── AgentConfig
├── BaseModel
├── Calculator
├── [197 more in flat list...]
```

### Smart Path Detection

PyDevelop-Docs automatically configures AutoAPI directories based on your project structure:

- **Monorepo**: `autoapi_dirs = ['../packages']`
- **Src Layout**: `autoapi_dirs = ['../../src']`  
- **Flat Layout**: `autoapi_dirs = ['../package_name']`
- **Simple Project**: `autoapi_dirs = ['..']`

No manual configuration needed! 🎯

## 🚧 Development

### Setting up for Development
```bash
git clone https://github.com/your-org/pydevelop-docs.git
cd pydevelop-docs

# Install with development dependencies
poetry install --with dev,docs

# Run tests
poetry run pytest

# Build documentation
cd docs && make html
```

### Running Tests
```bash
# Full test suite
poetry run pytest

# Test with coverage
poetry run pytest --cov=pydevelop_docs

# Test specific functionality
poetry run pytest tests/test_general_setup.py -v
```

### Building Documentation
```bash
# Build your own docs (meta!)
cd docs
make html

# Or use the tool on itself
pydevelop-docs setup-general . --force
cd docs && make html
```

## 🤝 Contributing

We welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) for details.

### Quick Contribution Setup
```bash
# Fork and clone
git clone https://github.com/your-username/pydevelop-docs.git
cd pydevelop-docs

# Install development dependencies  
poetry install --with dev,docs,test

# Create feature branch
git checkout -b feature/your-feature-name

# Make changes and test
poetry run pytest
poetry run ruff check
poetry run mypy

# Submit pull request! 🎉
```

## 📊 Comparison

| Feature | PyDevelop-Docs | Manual Sphinx | Other Tools |
|---------|----------------|---------------|-------------|
| **Setup Time** | < 1 minute | Hours | Minutes |
| **Project Detection** | ✅ Automatic | ❌ Manual | ⚠️ Limited |
| **Extension Count** | 40+ | 0 | 5-10 |
| **Theme Quality** | ✅ Professional | ⚠️ Basic | ⚠️ Varies |
| **AutoAPI Hierarchy** | ✅ Fixed | ❌ Flat | ❌ Flat |
| **Mobile Responsive** | ✅ Yes | ❌ No | ⚠️ Sometimes |
| **Dark Mode** | ✅ Yes | ❌ No | ⚠️ Sometimes |
| **SEO Ready** | ✅ Yes | ❌ No | ❌ No |

## 📜 License

MIT License - see [LICENSE](LICENSE) file for details.

## 🙏 Acknowledgments

- **Sphinx Team** - For the amazing documentation framework
- **Furo Theme** - For the beautiful modern theme
- **AutoAPI** - For automatic API documentation
- **All Extension Authors** - For creating the tools that make this possible

## 👨‍💻 Author

**William R. Astley**
- Website: [will.astley.dev](https://will.astley.dev)
- GitHub: [@pr1m8](https://github.com/pr1m8)

## 📞 Support

- **Documentation**: [Full Documentation](https://pydevelop-docs.readthedocs.io/)
- **Issues**: [GitHub Issues](https://github.com/pr1m8/pydevelop-docs/issues)
- **Discussions**: [GitHub Discussions](https://github.com/pr1m8/pydevelop-docs/discussions)

---

**🚀 From zero to professional documentation in under a minute!**

*Made with ❤️ for the Python community*
            

Raw data

            {
    "_id": null,
    "home_page": "https://will.astley.dev",
    "name": "pydevelop-docs",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<3.13,>=3.12",
    "maintainer_email": null,
    "keywords": "documentation, sphinx, python, docs, api, autodoc",
    "author": "William R. Astley",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/89/60/0391609544b97f7222ad68ba7ad89d64f96b6b0807458415e725a014f0d5/pydevelop_docs-0.1.0.tar.gz",
    "platform": null,
    "description": "# PyDevelop-Docs\n\n> **Universal Python documentation generator with 40+ Sphinx extensions pre-configured**\n\n[![PyPI version](https://badge.fury.io/py/pydevelop-docs.svg)](https://badge.fury.io/py/pydevelop-docs)\n[![Python Support](https://img.shields.io/pypi/pyversions/pydevelop-docs.svg)](https://pypi.org/project/pydevelop-docs/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\nTransform any Python project into beautiful, professional documentation with **zero configuration**. PyDevelop-Docs automatically detects your project structure and generates a complete Sphinx documentation setup with modern themes, extensive features, and intelligent API documentation.\n\n## \u2728 Features\n\n### \ud83c\udfaf **Zero Configuration**\n- **Works immediately** with any Python project structure\n- **Automatic detection** of monorepos, single packages, src layouts, flat layouts\n- **Smart path configuration** for AutoAPI and asset management\n- **Intelligent metadata extraction** from pyproject.toml, setup.py\n\n### \ud83d\udce6 **Universal Project Support**\n- **Monorepos**: `packages/package-name/` structures\n- **Src Layout**: `src/package_name/` organization  \n- **Flat Layout**: Package in project root\n- **Simple Projects**: Basic Python files\n\n### \ud83c\udfa8 **Professional Appearance**\n- **Beautiful Furo theme** with dark mode support\n- **Responsive design** for all devices\n- **Custom CSS enhancements** for better readability\n- **Professional navigation** with hierarchical organization\n\n### \ud83d\udd27 **40+ Pre-configured Extensions**\n- **AutoAPI** with hierarchical organization (not flat alphabetical!)\n- **Syntax highlighting** with copy buttons\n- **Mermaid diagrams** and PlantUML support\n- **Interactive elements** with sphinx-design\n- **SEO optimization** with sitemaps and OpenGraph\n- **And much more!** See [complete extension list](#included-extensions)\n\n### \u26a1 **Smart CLI Commands**\n- **`setup-general`**: Analyze and set up any Python project\n- **`copy-setup`**: Transfer documentation between projects  \n- **Interactive and non-interactive** modes available\n- **Dry-run capability** for previewing actions\n\n## \ud83d\ude80 Quick Start\n\n### Installation\n```bash\npip install pydevelop-docs\n```\n\n### One-Command Setup\n```bash\n# Set up documentation for any Python project\npydevelop-docs setup-general /path/to/your/project\n\n# Navigate and build\ncd /path/to/your/project/docs\nmake html\n\n# Your documentation is ready at build/html/index.html! \ud83c\udf89\n```\n\nThat's it! PyDevelop-Docs automatically:\n- \u2705 Detects your project type and structure\n- \u2705 Configures 40+ Sphinx extensions\n- \u2705 Sets up AutoAPI with proper paths\n- \u2705 Creates professional homepage and navigation\n- \u2705 Installs beautiful theme with custom styling\n\n## \ud83d\udccb Project Types Supported\n\n### Monorepo Structure\n```\nmy-monorepo/\n\u251c\u2500\u2500 packages/\n\u2502   \u251c\u2500\u2500 package-a/\n\u2502   \u2502   \u2514\u2500\u2500 src/package_a/\n\u2502   \u251c\u2500\u2500 package-b/ \n\u2502   \u2502   \u2514\u2500\u2500 src/package_b/\n\u2502   \u2514\u2500\u2500 package-c/\n\u2502       \u2514\u2500\u2500 src/package_c/\n\u2514\u2500\u2500 pyproject.toml\n```\n**Detection**: \u2705 Monorepo | **AutoAPI**: `['../packages']`\n\n### Src Layout\n```\nmy-package/\n\u251c\u2500\u2500 src/\n\u2502   \u2514\u2500\u2500 my_package/\n\u251c\u2500\u2500 tests/\n\u251c\u2500\u2500 docs/  # \u2190 Created here\n\u2514\u2500\u2500 pyproject.toml\n```\n**Detection**: \u2705 Single Package | **AutoAPI**: `['../../src']`\n\n### Flat Layout  \n```\nmy-package/\n\u251c\u2500\u2500 my_package/\n\u251c\u2500\u2500 tests/\n\u251c\u2500\u2500 docs/  # \u2190 Created here\n\u2514\u2500\u2500 pyproject.toml\n```\n**Detection**: \u2705 Single Package | **AutoAPI**: `['../my_package']`\n\n### Simple Project\n```\nmy-scripts/\n\u251c\u2500\u2500 main.py\n\u251c\u2500\u2500 utils.py\n\u251c\u2500\u2500 docs/  # \u2190 Created here\n\u2514\u2500\u2500 requirements.txt\n```\n**Detection**: \u2705 Simple Project | **AutoAPI**: `['..']`\n\n## \ud83d\udee0\ufe0f Usage Examples\n\n### Command Line Interface\n\n```bash\n# Interactive setup with project analysis\npydevelop-docs setup-general /path/to/project\n\n# Non-interactive setup\npydevelop-docs setup-general /path/to/project --non-interactive --force\n\n# Preview what will be created\npydevelop-docs setup-general /path/to/project --dry-run\n\n# Custom documentation directory\npydevelop-docs setup-general /path/to/project --target-dir /custom/docs/path\n\n# Copy documentation setup between projects\npydevelop-docs copy-setup /source/project /destination/project --include-config\n```\n\n### Python API\n\n```python\nfrom pydevelop_docs import setup_project_docs\n\n# One-line setup\nresult = setup_project_docs(\"/path/to/project\")\nprint(f\"Documentation created at: {result['target_dir']}\")\n\n# Non-interactive with custom options\nresult = setup_project_docs(\n    \"/path/to/project\",\n    target_dir=\"/custom/location\",\n    force=True,\n    interactive=False\n)\n\n# Preview without executing\nplan = setup_project_docs(\"/path/to/project\", dry_run=True)\nfor action in plan['actions']:\n    print(f\"Would create: {action}\")\n```\n\n### Advanced Configuration\n\n```python\nfrom pydevelop_docs.config import get_haive_config\n\n# Get pre-configured Sphinx configuration\nconfig = get_haive_config(\n    package_name=\"my-package\",\n    package_path=\"/path/to/package\"\n)\n\n# Use in your docs/source/conf.py\nglobals().update(config)\n```\n\n### Project Analysis\n\n```python\nfrom pydevelop_docs.general_setup import ProjectDetector\nfrom pathlib import Path\n\n# Analyze any Python project\ndetector = ProjectDetector(Path(\"/path/to/project\"))\ninfo = detector.detect_project_type()\n\nprint(f\"Project type: {info['type']}\")  # monorepo, single_package, etc.\nprint(f\"Package manager: {info['package_manager']}\")  # poetry, setuptools, etc.\nprint(f\"Found {len(info['packages'])} packages\")\nprint(f\"Structure: {info['structure']['pattern']}\")\n```\n\n## \ud83d\udcd6 Generated Documentation Structure\n\nPyDevelop-Docs creates a complete documentation setup:\n\n```\ndocs/\n\u251c\u2500\u2500 Makefile                    # Build automation\n\u251c\u2500\u2500 requirements.txt            # Documentation dependencies  \n\u251c\u2500\u2500 source/\n\u2502   \u251c\u2500\u2500 conf.py                # Complete Sphinx configuration\n\u2502   \u251c\u2500\u2500 index.rst              # Professional homepage\n\u2502   \u251c\u2500\u2500 _static/               # CSS, JavaScript, assets\n\u2502   \u2502   \u251c\u2500\u2500 css/\n\u2502   \u2502   \u2502   \u251c\u2500\u2500 custom.css     # Custom styling\n\u2502   \u2502   \u2502   \u2514\u2500\u2500 furo-intense.css # Dark mode fixes\n\u2502   \u2502   \u2514\u2500\u2500 js/\n\u2502   \u2502       \u2514\u2500\u2500 api-enhancements.js\n\u2502   \u251c\u2500\u2500 _templates/            # Custom Jinja2 templates\n\u2502   \u2514\u2500\u2500 autoapi/               # Auto-generated API docs\n\u2502       \u2514\u2500\u2500 index.rst          # API reference (hierarchical!)\n\u2514\u2500\u2500 build/\n    \u2514\u2500\u2500 html/                  # Built documentation\n        \u2514\u2500\u2500 index.html         # Your beautiful docs! \ud83c\udf89\n```\n\n## \ud83c\udfa8 Theme and Styling\n\n### Furo Theme with Enhancements\n- **Modern responsive design** that works on all devices\n- **Dark/light mode toggle** with proper contrast\n- **Smooth animations** and professional typography\n- **Enhanced navigation** with improved sidebar\n- **Custom color scheme** optimized for readability\n\n### Key Styling Features\n- **Hierarchical API navigation** (not flat alphabetical lists!)\n- **Improved code block styling** with copy buttons\n- **Better table and admonition styling**\n- **Enhanced mobile experience**\n- **Professional color scheme** with accessibility focus\n\n## \ud83d\udd27 Included Extensions\n\nPyDevelop-Docs includes 40+ carefully selected and pre-configured Sphinx extensions:\n\n### Core Documentation\n- `sphinx.ext.autodoc` - Automatic API documentation\n- `sphinx.ext.napoleon` - Google/NumPy docstring support\n- `sphinx.ext.viewcode` - Source code links\n- `sphinx.ext.intersphinx` - Cross-project linking\n\n### API Documentation  \n- `autoapi.extension` - Automatic API reference (with hierarchical fix!)\n- `sphinx_autodoc_typehints` - Type hint documentation\n- `sphinxcontrib.autodoc_pydantic` - Pydantic model documentation\n\n### Enhanced Features\n- `myst_parser` - Markdown support\n- `sphinx_copybutton` - Copy code buttons\n- `sphinx_design` - Modern UI components\n- `sphinx_tabs` - Tabbed content\n- `sphinxcontrib.mermaid` - Diagram support\n\n### SEO and Discovery\n- `sphinx_sitemap` - SEO sitemaps\n- `sphinxext.opengraph` - Social media previews\n- `sphinx_favicon` - Custom favicons\n\n### And Many More!\nSee the [complete extension list](docs/extensions.md) with configuration details.\n\n## \u2699\ufe0f Configuration Details\n\n### AutoAPI Hierarchical Organization\n\n**The Problem**: Default AutoAPI creates flat, alphabetical lists of 200+ classes that are impossible to navigate.\n\n**Our Solution**: Hierarchical organization that follows your project structure:\n\n```python\n# Key configuration in generated conf.py\nautoapi_own_page_level = \"module\"  # Keep classes with their modules!\nautoapi_options = [\n    \"members\",\n    \"undoc-members\", \n    \"show-inheritance\",\n    \"show-module-summary\",  # Enables hierarchical grouping\n]\n```\n\n**Result**: Beautiful organized navigation like:\n```\n\ud83d\udce6 my_package\n\u251c\u2500\u2500 \ud83d\udcc1 core\n\u2502   \u251c\u2500\u2500 \ud83d\udcc4 engine (3 classes)\n\u2502   \u2514\u2500\u2500 \ud83d\udcc4 schema (5 classes)  \n\u2514\u2500\u2500 \ud83d\udcc1 utils\n    \u2514\u2500\u2500 \ud83d\udcc4 helpers (2 functions)\n```\n\nInstead of:\n```\n\u274c All Classes (A-Z)\n\u251c\u2500\u2500 AgentConfig\n\u251c\u2500\u2500 BaseModel\n\u251c\u2500\u2500 Calculator\n\u251c\u2500\u2500 [197 more in flat list...]\n```\n\n### Smart Path Detection\n\nPyDevelop-Docs automatically configures AutoAPI directories based on your project structure:\n\n- **Monorepo**: `autoapi_dirs = ['../packages']`\n- **Src Layout**: `autoapi_dirs = ['../../src']`  \n- **Flat Layout**: `autoapi_dirs = ['../package_name']`\n- **Simple Project**: `autoapi_dirs = ['..']`\n\nNo manual configuration needed! \ud83c\udfaf\n\n## \ud83d\udea7 Development\n\n### Setting up for Development\n```bash\ngit clone https://github.com/your-org/pydevelop-docs.git\ncd pydevelop-docs\n\n# Install with development dependencies\npoetry install --with dev,docs\n\n# Run tests\npoetry run pytest\n\n# Build documentation\ncd docs && make html\n```\n\n### Running Tests\n```bash\n# Full test suite\npoetry run pytest\n\n# Test with coverage\npoetry run pytest --cov=pydevelop_docs\n\n# Test specific functionality\npoetry run pytest tests/test_general_setup.py -v\n```\n\n### Building Documentation\n```bash\n# Build your own docs (meta!)\ncd docs\nmake html\n\n# Or use the tool on itself\npydevelop-docs setup-general . --force\ncd docs && make html\n```\n\n## \ud83e\udd1d Contributing\n\nWe welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) for details.\n\n### Quick Contribution Setup\n```bash\n# Fork and clone\ngit clone https://github.com/your-username/pydevelop-docs.git\ncd pydevelop-docs\n\n# Install development dependencies  \npoetry install --with dev,docs,test\n\n# Create feature branch\ngit checkout -b feature/your-feature-name\n\n# Make changes and test\npoetry run pytest\npoetry run ruff check\npoetry run mypy\n\n# Submit pull request! \ud83c\udf89\n```\n\n## \ud83d\udcca Comparison\n\n| Feature | PyDevelop-Docs | Manual Sphinx | Other Tools |\n|---------|----------------|---------------|-------------|\n| **Setup Time** | < 1 minute | Hours | Minutes |\n| **Project Detection** | \u2705 Automatic | \u274c Manual | \u26a0\ufe0f Limited |\n| **Extension Count** | 40+ | 0 | 5-10 |\n| **Theme Quality** | \u2705 Professional | \u26a0\ufe0f Basic | \u26a0\ufe0f Varies |\n| **AutoAPI Hierarchy** | \u2705 Fixed | \u274c Flat | \u274c Flat |\n| **Mobile Responsive** | \u2705 Yes | \u274c No | \u26a0\ufe0f Sometimes |\n| **Dark Mode** | \u2705 Yes | \u274c No | \u26a0\ufe0f Sometimes |\n| **SEO Ready** | \u2705 Yes | \u274c No | \u274c No |\n\n## \ud83d\udcdc License\n\nMIT License - see [LICENSE](LICENSE) file for details.\n\n## \ud83d\ude4f Acknowledgments\n\n- **Sphinx Team** - For the amazing documentation framework\n- **Furo Theme** - For the beautiful modern theme\n- **AutoAPI** - For automatic API documentation\n- **All Extension Authors** - For creating the tools that make this possible\n\n## \ud83d\udc68\u200d\ud83d\udcbb Author\n\n**William R. Astley**\n- Website: [will.astley.dev](https://will.astley.dev)\n- GitHub: [@pr1m8](https://github.com/pr1m8)\n\n## \ud83d\udcde Support\n\n- **Documentation**: [Full Documentation](https://pydevelop-docs.readthedocs.io/)\n- **Issues**: [GitHub Issues](https://github.com/pr1m8/pydevelop-docs/issues)\n- **Discussions**: [GitHub Discussions](https://github.com/pr1m8/pydevelop-docs/discussions)\n\n---\n\n**\ud83d\ude80 From zero to professional documentation in under a minute!**\n\n*Made with \u2764\ufe0f for the Python community*",
    "bugtrack_url": null,
    "license": null,
    "summary": "Universal Python documentation generator with 40+ Sphinx extensions pre-configured. Zero-configuration setup for beautiful, professional documentation.",
    "version": "0.1.0",
    "project_urls": {
        "Documentation": "https://pydevelop-docs.readthedocs.io",
        "Homepage": "https://will.astley.dev",
        "Repository": "https://github.com/pr1m8/pydevelop-docs"
    },
    "split_keywords": [
        "documentation",
        " sphinx",
        " python",
        " docs",
        " api",
        " autodoc"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "441ab65e16ef5aa12cf1605a81c8ca75603f06017051e29de245dcac05ca51ad",
                "md5": "9c4134d2b11f3d1e4c78733a499f6c02",
                "sha256": "3c00eb80c332916c89dcbe47721222d0826ed364c125648f76ade0a927b2a61f"
            },
            "downloads": -1,
            "filename": "pydevelop_docs-0.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "9c4134d2b11f3d1e4c78733a499f6c02",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<3.13,>=3.12",
            "size": 214452,
            "upload_time": "2025-08-20T23:32:11",
            "upload_time_iso_8601": "2025-08-20T23:32:11.345348Z",
            "url": "https://files.pythonhosted.org/packages/44/1a/b65e16ef5aa12cf1605a81c8ca75603f06017051e29de245dcac05ca51ad/pydevelop_docs-0.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "89600391609544b97f7222ad68ba7ad89d64f96b6b0807458415e725a014f0d5",
                "md5": "44e5b519a9d5aaf831728c438f54095e",
                "sha256": "580195ae4890212055b9cf8b5832b7a228f9bd633c1d387021b8ede6d6155e39"
            },
            "downloads": -1,
            "filename": "pydevelop_docs-0.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "44e5b519a9d5aaf831728c438f54095e",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<3.13,>=3.12",
            "size": 177823,
            "upload_time": "2025-08-20T23:32:13",
            "upload_time_iso_8601": "2025-08-20T23:32:13.760454Z",
            "url": "https://files.pythonhosted.org/packages/89/60/0391609544b97f7222ad68ba7ad89d64f96b6b0807458415e725a014f0d5/pydevelop_docs-0.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-20 23:32:13",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "pr1m8",
    "github_project": "pydevelop-docs",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "pydevelop-docs"
}
        
Elapsed time: 2.09492s