Metadata-Version: 2.4
Name: beb
Version: 0.1.0
Summary: Build Blender extension archives from JSON or YAML manifests
Home-page: https://github.com/minimalefforttech/beb
Author: Alex Telford
License: MIT
Project-URL: Repository, https://github.com/minimalefforttech/beb
Project-URL: Issues, https://github.com/minimalefforttech/beb/issues
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: License :: OSI Approved :: MIT License
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: Markdown>=3.6
Requires-Dist: PyYAML>=6.0
Dynamic: author
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: license
Dynamic: license-file
Dynamic: project-url
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

<!-- Copyright 2026 Alex Telford, Minimal Effort Tech. -->

# Blender Extension Builder

Reusable tools for building Blender extension packages from a project manifest.

Source repository: https://github.com/minimalefforttech/beb

## Features

- Build Blender extension zip archives from `manifest.json`
- Load `manifest.yaml` and `manifest.yml` as alternate formats when `PyYAML` is available
- Download and cache dependency wheels per target platform
- Embed explicit custom wheels without forcing the wheel version to match the manifest version
- Generate configurable HTML docs from Markdown when `Markdown` is available
- Create deploy bundles with extension archives and generated documentation
- Use the package from Python or through the `beb` CLI

## Installation

```bash
pip install beb
```

`PyYAML` and `Markdown` are included as standard dependencies, but the package degrades gracefully if either feature dependency is unavailable in a target environment.

The published package name is `beb` and the top-level Python import package is also `beb`.

## Quick Start

```bash
beb validate
beb build
beb install --install-dir ./build/install
beb build --deploy
```

## Project Layout

- `beb`: importable package
- `cli`: small repository helper commands
- `examples`: example manifests for common workflows
- `docs`: user and developer guides
- `tests`: automated coverage for the manifest, wheels, builder, and docs pipeline

## Documentation

- User guide: `docs/user_guide.md`
- Developer guide: `docs/developer_guide.md`

## Releases

GitHub Actions builds wheels and source distributions on every push and publishes tagged releases to PyPI.

## License

This project is licensed under the MIT License. See `LICENSE`.
