pymerdoc


Namepymerdoc JSON
Version 0.2.0 PyPI version JSON
download
home_pagehttps://github.com/scottpeterman/pymerdoc
SummaryA tool for creating and managing Mermaid diagrams with modern UI
upload_time2024-12-28 03:26:50
maintainerNone
docs_urlNone
authorScott Peterman
requires_python>=3.8
licenseNone
keywords
VCS
bugtrack_url
requirements colorama exceptiongroup importlib_metadata iniconfig Markdown packaging pillow pluggy PyQt6 PyQt6-Qt6 PyQt6-WebEngine PyQt6-WebEngine-Qt6 PyQt6_sip pytest pytest-qt tomli zipp
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # PyMerDoc - Mermaid Documentation Tools

A modern documentation toolkit built with PyQt6 that combines Mermaid diagram support with animated GIF creation capabilities. Perfect for creating technical documentation, tutorials, and animated diagrams.

![Platform](https://raw.githubusercontent.com/scottpeterman/pymerdoc/main/docs/screen1.png)![License](https://img.shields.io/badge/License-GPL--3.0-green)
![Python](https://img.shields.io/badge/Python-3.9+-yellow)

## Screenshots

### Main Documentation Interface
![Main Screen](docs/screen1.png)
Create and edit documentation with live Mermaid diagram previews.

### GIF Builder Tool
![GIF Builder](https://raw.githubusercontent.com/scottpeterman/pymerdoc/main/docs/screen2.png)![License](https://img.shields.io/badge/License-GPL--3.0-green)

Convert image sequences to animated GIFs for documentation.

### Mermaid Converter
![Mermaid Converter](https://raw.githubusercontent.com/scottpeterman/pymerdoc/main/docs/screen3.png)![License](https://img.shields.io/badge/License-GPL--3.0-green)

Convert Mermaid syntax to various diagram formats.

## Features

### Main Application (pymerdoc)
- Real-time preview of Mermaid diagrams
- Export diagrams to PNG/SVG
- Modern cyberpunk-themed interface
- Theme support (Light/Dark/System)
- File management capabilities

### GIF Maker (pymerdoc-gm)
- Convert PNG sequences to animated GIFs
- Customizable background colors
- Adjustable frame delay
- Drag-and-drop frame reordering
- Preview functionality

### Mermaid Converter (pymerdoc-mc)
- Standalone Mermaid diagram converter
- Multiple export formats
- Batch processing capabilities
- Custom styling options

## Installation

### From PyPI (Recommended)
```bash
pip install pymerdoc
```

### From Source
```bash
git clone https://github.com/scottpeterman/pymerdoc.git
cd pymerdoc
pip install -e .
```

## Usage

### Running the Applications

1. Main Documentation Tool:
```bash
pymerdoc
# or
python -m pymerdoc.main
```

2. GIF Builder:
```bash
pymerdoc-gm
# or
python -m pymerdoc.gm
```

3. Mermaid Converter:
```bash
pymerdoc-mc
# or
python -m pymerdoc.mc
```

### Creating Mermaid Diagrams

1. Open the main application
2. Enter your Mermaid syntax:
```mermaid
graph TD
    A[Start] --> B{Decision}
    B -->|Yes| C[OK]
    B -->|No| D[Cancel]
```
3. Preview updates in real-time
4. Export to desired format

### Creating Animated GIFs

1. Launch the GIF Builder:
```bash
pymerdoc-gm
```
2. Add PNG files using the "Add Files" button
3. Adjust frame order and timing
4. Set background color if needed
5. Click "Generate GIF" to create animation

## Requirements

- Python 3.8+
- PyQt6 6.8.0+
- PyQt6-WebEngine 6.8.0+
- Pillow 11.0.0+
- Additional dependencies listed in requirements.txt

## Configuration

The application stores configuration in platform-specific locations:
- Windows: `%APPDATA%/pymerdoc/`
- Linux: `~/.config/pymerdoc/`
- macOS: `~/Library/Application Support/pymerdoc/`

## Development Setup

1. Create virtual environment:
```bash
python -m venv .venv
source .venv/bin/activate  # Linux/macOS
.venv\Scripts\activate     # Windows
```

2. Install development dependencies:
```bash
pip install -r requirements.txt
```

3. Run tests:
```bash
pytest tests/
```

## Project Structure
```
pymerdoc/
├── docs/                 # Documentation and screenshots
├── pymerdoc/            # Main package
│   ├── main.py          # Main application
│   ├── gm.py            # GIF maker
│   ├── mc.py            # Mermaid converter
│   └── theme_manager.py # Theme handling
└── tests/               # Test suite
```

## Contributing

1. Fork the repository
2. Create your feature branch
```bash
git checkout -b feature/AmazingFeature
```
3. Commit your changes
```bash
git commit -m 'Add some AmazingFeature'
```
4. Push to the branch
```bash
git push origin feature/AmazingFeature
```
5. Open a Pull Request

## Testing

Run the test suite:
```bash
pytest tests/
```

## License

This project is licensed under the GNU General Public License v3 (GPLv3) - see the [LICENSE](LICENSE) file for details.

## Contact

Project Link: [https://github.com/scottpeterman/pymerdoc](https://github.com/scottpeterman/pymerdoc)

## Acknowledgments

- Mermaid.js for diagram rendering
- PyQt6 for the application framework
- All our contributors and users

## Release Notes

### 0.1.0
- Initial release
- Basic Mermaid diagram support
- GIF creation tool
- Mermaid converter utility

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/scottpeterman/pymerdoc",
    "name": "pymerdoc",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": null,
    "author": "Scott Peterman",
    "author_email": "scottpeterman@example.com",
    "download_url": null,
    "platform": null,
    "description": "# PyMerDoc - Mermaid Documentation Tools\r\n\r\nA modern documentation toolkit built with PyQt6 that combines Mermaid diagram support with animated GIF creation capabilities. Perfect for creating technical documentation, tutorials, and animated diagrams.\r\n\r\n![Platform](https://raw.githubusercontent.com/scottpeterman/pymerdoc/main/docs/screen1.png)![License](https://img.shields.io/badge/License-GPL--3.0-green)\r\n![Python](https://img.shields.io/badge/Python-3.9+-yellow)\r\n\r\n## Screenshots\r\n\r\n### Main Documentation Interface\r\n![Main Screen](docs/screen1.png)\r\nCreate and edit documentation with live Mermaid diagram previews.\r\n\r\n### GIF Builder Tool\r\n![GIF Builder](https://raw.githubusercontent.com/scottpeterman/pymerdoc/main/docs/screen2.png)![License](https://img.shields.io/badge/License-GPL--3.0-green)\r\n\r\nConvert image sequences to animated GIFs for documentation.\r\n\r\n### Mermaid Converter\r\n![Mermaid Converter](https://raw.githubusercontent.com/scottpeterman/pymerdoc/main/docs/screen3.png)![License](https://img.shields.io/badge/License-GPL--3.0-green)\r\n\r\nConvert Mermaid syntax to various diagram formats.\r\n\r\n## Features\r\n\r\n### Main Application (pymerdoc)\r\n- Real-time preview of Mermaid diagrams\r\n- Export diagrams to PNG/SVG\r\n- Modern cyberpunk-themed interface\r\n- Theme support (Light/Dark/System)\r\n- File management capabilities\r\n\r\n### GIF Maker (pymerdoc-gm)\r\n- Convert PNG sequences to animated GIFs\r\n- Customizable background colors\r\n- Adjustable frame delay\r\n- Drag-and-drop frame reordering\r\n- Preview functionality\r\n\r\n### Mermaid Converter (pymerdoc-mc)\r\n- Standalone Mermaid diagram converter\r\n- Multiple export formats\r\n- Batch processing capabilities\r\n- Custom styling options\r\n\r\n## Installation\r\n\r\n### From PyPI (Recommended)\r\n```bash\r\npip install pymerdoc\r\n```\r\n\r\n### From Source\r\n```bash\r\ngit clone https://github.com/scottpeterman/pymerdoc.git\r\ncd pymerdoc\r\npip install -e .\r\n```\r\n\r\n## Usage\r\n\r\n### Running the Applications\r\n\r\n1. Main Documentation Tool:\r\n```bash\r\npymerdoc\r\n# or\r\npython -m pymerdoc.main\r\n```\r\n\r\n2. GIF Builder:\r\n```bash\r\npymerdoc-gm\r\n# or\r\npython -m pymerdoc.gm\r\n```\r\n\r\n3. Mermaid Converter:\r\n```bash\r\npymerdoc-mc\r\n# or\r\npython -m pymerdoc.mc\r\n```\r\n\r\n### Creating Mermaid Diagrams\r\n\r\n1. Open the main application\r\n2. Enter your Mermaid syntax:\r\n```mermaid\r\ngraph TD\r\n    A[Start] --> B{Decision}\r\n    B -->|Yes| C[OK]\r\n    B -->|No| D[Cancel]\r\n```\r\n3. Preview updates in real-time\r\n4. Export to desired format\r\n\r\n### Creating Animated GIFs\r\n\r\n1. Launch the GIF Builder:\r\n```bash\r\npymerdoc-gm\r\n```\r\n2. Add PNG files using the \"Add Files\" button\r\n3. Adjust frame order and timing\r\n4. Set background color if needed\r\n5. Click \"Generate GIF\" to create animation\r\n\r\n## Requirements\r\n\r\n- Python 3.8+\r\n- PyQt6 6.8.0+\r\n- PyQt6-WebEngine 6.8.0+\r\n- Pillow 11.0.0+\r\n- Additional dependencies listed in requirements.txt\r\n\r\n## Configuration\r\n\r\nThe application stores configuration in platform-specific locations:\r\n- Windows: `%APPDATA%/pymerdoc/`\r\n- Linux: `~/.config/pymerdoc/`\r\n- macOS: `~/Library/Application Support/pymerdoc/`\r\n\r\n## Development Setup\r\n\r\n1. Create virtual environment:\r\n```bash\r\npython -m venv .venv\r\nsource .venv/bin/activate  # Linux/macOS\r\n.venv\\Scripts\\activate     # Windows\r\n```\r\n\r\n2. Install development dependencies:\r\n```bash\r\npip install -r requirements.txt\r\n```\r\n\r\n3. Run tests:\r\n```bash\r\npytest tests/\r\n```\r\n\r\n## Project Structure\r\n```\r\npymerdoc/\r\n\u251c\u2500\u2500 docs/                 # Documentation and screenshots\r\n\u251c\u2500\u2500 pymerdoc/            # Main package\r\n\u2502   \u251c\u2500\u2500 main.py          # Main application\r\n\u2502   \u251c\u2500\u2500 gm.py            # GIF maker\r\n\u2502   \u251c\u2500\u2500 mc.py            # Mermaid converter\r\n\u2502   \u2514\u2500\u2500 theme_manager.py # Theme handling\r\n\u2514\u2500\u2500 tests/               # Test suite\r\n```\r\n\r\n## Contributing\r\n\r\n1. Fork the repository\r\n2. Create your feature branch\r\n```bash\r\ngit checkout -b feature/AmazingFeature\r\n```\r\n3. Commit your changes\r\n```bash\r\ngit commit -m 'Add some AmazingFeature'\r\n```\r\n4. Push to the branch\r\n```bash\r\ngit push origin feature/AmazingFeature\r\n```\r\n5. Open a Pull Request\r\n\r\n## Testing\r\n\r\nRun the test suite:\r\n```bash\r\npytest tests/\r\n```\r\n\r\n## License\r\n\r\nThis project is licensed under the GNU General Public License v3 (GPLv3) - see the [LICENSE](LICENSE) file for details.\r\n\r\n## Contact\r\n\r\nProject Link: [https://github.com/scottpeterman/pymerdoc](https://github.com/scottpeterman/pymerdoc)\r\n\r\n## Acknowledgments\r\n\r\n- Mermaid.js for diagram rendering\r\n- PyQt6 for the application framework\r\n- All our contributors and users\r\n\r\n## Release Notes\r\n\r\n### 0.1.0\r\n- Initial release\r\n- Basic Mermaid diagram support\r\n- GIF creation tool\r\n- Mermaid converter utility\r\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A tool for creating and managing Mermaid diagrams with modern UI",
    "version": "0.2.0",
    "project_urls": {
        "Bug Reports": "https://github.com/scottpeterman/pymerdoc/issues",
        "Homepage": "https://github.com/scottpeterman/pymerdoc",
        "Source": "https://github.com/scottpeterman/pymerdoc"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "33fa0195e4f2fe4622c47a41343e556be0f9c03d0b0a24a1a2a498e20d2ace9b",
                "md5": "fd9a70e6630b14a8d683b4804cb9454a",
                "sha256": "1fb10a59c67f2aebd1cba6607fd2640916c0b674965ba20d351514cbc45d71cd"
            },
            "downloads": -1,
            "filename": "pymerdoc-0.2.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "fd9a70e6630b14a8d683b4804cb9454a",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 16829,
            "upload_time": "2024-12-28T03:26:50",
            "upload_time_iso_8601": "2024-12-28T03:26:50.527208Z",
            "url": "https://files.pythonhosted.org/packages/33/fa/0195e4f2fe4622c47a41343e556be0f9c03d0b0a24a1a2a498e20d2ace9b/pymerdoc-0.2.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-12-28 03:26:50",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "scottpeterman",
    "github_project": "pymerdoc",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [
        {
            "name": "colorama",
            "specs": [
                [
                    ">=",
                    "0.4.6"
                ]
            ]
        },
        {
            "name": "exceptiongroup",
            "specs": [
                [
                    ">=",
                    "1.2.2"
                ]
            ]
        },
        {
            "name": "importlib_metadata",
            "specs": [
                [
                    ">=",
                    "8.5.0"
                ]
            ]
        },
        {
            "name": "iniconfig",
            "specs": [
                [
                    ">=",
                    "2.0.0"
                ]
            ]
        },
        {
            "name": "Markdown",
            "specs": [
                [
                    ">=",
                    "3.7"
                ]
            ]
        },
        {
            "name": "packaging",
            "specs": [
                [
                    ">=",
                    "24.2"
                ]
            ]
        },
        {
            "name": "pillow",
            "specs": [
                [
                    ">=",
                    "11.0.0"
                ]
            ]
        },
        {
            "name": "pluggy",
            "specs": [
                [
                    ">=",
                    "1.5.0"
                ]
            ]
        },
        {
            "name": "PyQt6",
            "specs": [
                [
                    ">=",
                    "6.8.0"
                ]
            ]
        },
        {
            "name": "PyQt6-Qt6",
            "specs": [
                [
                    ">=",
                    "6.8.1"
                ]
            ]
        },
        {
            "name": "PyQt6-WebEngine",
            "specs": [
                [
                    ">=",
                    "6.8.0"
                ]
            ]
        },
        {
            "name": "PyQt6-WebEngine-Qt6",
            "specs": [
                [
                    ">=",
                    "6.8.1"
                ]
            ]
        },
        {
            "name": "PyQt6_sip",
            "specs": [
                [
                    ">=",
                    "13.9.1"
                ]
            ]
        },
        {
            "name": "pytest",
            "specs": [
                [
                    ">=",
                    "8.3.4"
                ]
            ]
        },
        {
            "name": "pytest-qt",
            "specs": [
                [
                    ">=",
                    "4.4.0"
                ]
            ]
        },
        {
            "name": "tomli",
            "specs": [
                [
                    ">=",
                    "2.2.1"
                ]
            ]
        },
        {
            "name": "zipp",
            "specs": [
                [
                    ">=",
                    "3.21.0"
                ]
            ]
        }
    ],
    "lcname": "pymerdoc"
}
        
Elapsed time: 0.34022s