$npx skillfedfor your agent

poyo

A lightweight YAML Parser for Python. 🐓

With conditionsPyPI MarkupReleased Jul 2019276.7K downloads / moMITPure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — poyo-0.5.0-py2.py3-none-any.whl
v0.5.0 · released 2019-07-26 · Python >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*

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.AI-flagged interpretation of the facts on this page — verify before relying

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 · maintenance · safety

MIT (permissive) — MIT license permits commercial and private use with minimal restrictions, requiring only attribution and inclusion of the license text.

last release 2019-07-26 (2576 days) · last repo commit 2021-09-15 · 140 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 276,664 downloads/mo, #8,160 on PyPI

Verify before relying

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}")
  • 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)
Same gist for agents: .md · .json

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 on this page. Verify before relying on it.

With conditions

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

poyo on PyPI

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

LicenseMIT permissive
Python supportSupports the current Python release >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*
Install frictionLow. Pure-Python wheel
Runtime dependenciesNone
MaintenanceAbandoned 2,576 days since the last release
Last repo commit
First released
Downloads276,664 / month, #8,160 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 3 - AlphaIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 2Programming Language :: Python :: 2.7Programming Language :: Python :: 3Programming Language :: Python :: 3.4Programming Language :: Python :: 3.5Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPy

Evidence: poyo-0.5.0-py2.py3-none-any.whl

Tags

Capabilities
lightweight yaml parsersafe yaml parsingyaml to dictminimal yaml readercookiecutter config parseryaml without deserializationsimple yaml loader
Topics
yaml-parserconfig-parsingcookiecutter
PyPI keywords
YAMLparsercookiecutter

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “lightweight yaml parser”

  • poyoParses a restricted subset of YAML into Python dicts, lists, and…
  • yaml-rsA high-performance YAML v1.2 parser for Python, implemented in Rust,…
  • envyamlParses YAML configuration files with environment variable…

Give your agent the search over MCP, or paste the wish link into any chat.

More Markup packages

PyYAML Worth it
PyPI · Python Modules · released Sep 2025

PyYAML parses and emits YAML 1.1 data format, enabling serialization and deserialization of configuration files and Python objects to and from human-readable YAML text.

MITcompiled wheel · 3.8+
1.2Bdownloads / mo
markdown-it-py Worth it
PyPI · Python Modules · released May 2026

A Python markdown parser that converts markdown to HTML following the CommonMark specification, with support for plugins and custom syntax rules.

Install it if you need reliable markdown-to-HTML conversion.

MITpure Python · 3.10+
613.8Mdownloads / mo
beautifulsoup4 Worth it
PyPI · Python Modules · released Jun 2026

Beautiful Soup parses HTML and XML documents into a navigable tree, providing Pythonic methods to search, iterate, and modify the parsed content.

Install it if you need to parse or extract data from markup documents.

MITpure Python · 3.7.0+
432.1Mdownloads / mo
et-xmlfile With conditions
PyPI · Markup · released Oct 2024

et_xmlfile writes large XML files with minimal memory overhead by serializing elements to disk as they are created, rather than holding the entire tree in memory.

Install it if incremental XML writing fits your use case; skip it if your XML documents are small or you already use lxml.

MITpure Python · 3.8+dormant
343.3Mdownloads / mo
tomlkit Worth it
PyPI · Markup · released Jul 2026

Parses and edits TOML files while preserving formatting, comments, and structure, then serializes them back with layout intact.

Install it if you're building tools that touch TOML files and user readability of the source matters.

MITpure Python · 3.9+
338.0Mdownloads / mo
docstring-parser Worth it
PyPI · Python Modules · released Apr 2026

Parses Python docstrings in ReST, Google, Numpydoc, and Epydoc formats, extracting structured information like descriptions, parameters, return types, and exceptions.

Install it if you need to programmatically read and extract structured data from Python docstrings.

MITpure Python · 3.8+
274.9Mdownloads / mo

See also dirtyjson · yamlloader · yamlable · pycomposefile · jsoncomment · yamlordereddictloader · strictyaml · pyaml · jsons