--- id: poyo version: "0.5.0" license: MIT license_treatment: permissive maintenance: abandoned --- # poyo — A lightweight YAML Parser for Python. 🐓 License: permissive · Maintenance: abandoned · Downloads: 276.7K/mo ## What it is and what it does poyo is a lightweight YAML parser designed specifically to parse cookiecutter user configuration files. It deliberately supports only a subset of YAML—strings, booleans, integers, floats, None, dicts, and lists—and explicitly does not deserialize arbitrary Python objects, making it safer than full YAML parsers for untrusted input. It has no runtime dependencies and can parse YAML strings into Python dicts with support for comments, multiline strings, and basic type inference. The package was created to solve installation friction that arose when cookiecutter depended on heavier YAML libraries. It is not a general-purpose YAML tool: it cannot serialize to YAML, is not JSON-compatible, and only handles the YAML features needed for configuration files. The parser includes a `parse_string()` function that takes UTF-8 encoded YAML and returns a dict, plus a `PoyoException` for error handling. Use it for: - Parse cookiecutter template configuration files without pulling in heavy YAML dependencies - Load simple YAML-like configuration files in projects where full YAML support is unnecessary - Parse user configuration in applications that need safe, restricted YAML parsing without object deserialization - Extract configuration from YAML strings in environments where minimal dependencies are critical ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Parses a restricted subset of YAML into Python dicts, lists, and basic types without deserializing arbitrary objects. Yes, but only if you are parsing cookiecutter configs or similarly restricted YAML subsets. The package is stable, has zero dependencies, and carries no known vulnerabilities. However, it is abandoned—last updated 2019-07-26—so do not install it for general YAML parsing or if you need ongoing maintenance. For its narrow, original use case, it remains a lightweight, safe choice. ## Install pip install poyo uv add poyo poetry add poyo ## Installing poyo Before you install: Installation is frictionless with no runtime dependencies. However, the package is abandoned—last release was 2019-07-26 and last commit 2021-09-15. It remains stable for its narrow use case but will not receive updates or security patches. License in practice: MIT license permits commercial and private use with minimal restrictions, requiring only attribution and inclusion of the license text. Quickstart: from poyo import parse_string, PoyoException yaml_string = """--- greeting: hello docs: true """ try: config = parse_string(yaml_string) print(config) except PoyoException as exc: print(f"Parse error: {exc}") Verify before relying: - Whether the restricted YAML subset is sufficient for your specific configuration format - Compatibility with Python versions beyond 3.7 (classifiers list 3.7 as the highest tested version) ## Package facts - License: MIT (permissive) - Python support: supports_current - Install friction: low - Maintenance: abandoned - Downloads: 276.7K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags lightweight yaml parser, safe yaml parsing, yaml to dict, minimal yaml reader, cookiecutter config parser, yaml without deserialization, simple yaml loader, yaml-parser, config-parsing, cookiecutter [View on SkillFed](https://skillfed.io/packages/poyo) · [View on PyPI](https://pypi.org/project/poyo/)