{"categories":[{"label":"Text Processing","url":"https://skillfed.io/packages/category/text-processing/3"}],"enrichment":{"capability":"Perky parses a minimal, human-friendly text file format for configuration and data, returning dicts, lists, and strings with optional provenance tracking via the big library.","skillfed_tags":["config-parsing","file-format","error-provenance"],"use_cases":["Parse application configuration files where you want human-readable syntax without JSON's verbosity or TOML's complexity","Build error messages that point into config files by leveraging big.string provenance to show users exactly where validation failed","Store nested configuration hierarchies (dicts and lists) without committing to a rigid schema or type system upfront","Extend config file semantics with custom pragma handlers for domain-specific directives","Replace hand-rolled INI or simple text parsers in existing Python projects with a standardized, well-tested format"],"what_it_does":"Perky is a configuration file format and parser designed as an alternative to INI, TOML, and JSON files. It supports only three data types\u2014strings, dicts (mappings), and lists (sequences)\u2014deliberately leaving type inference to the caller. The parser is written in pure Python and achieves >450k lines per second throughput. Every string parsed via load() carries provenance metadata (file, line, column) through the big.string subclass, allowing your own error messages to point back into the config file with the same precision as Perky's parser errors.\n\nThe format is line-oriented and minimal: no quotes required for simple values, optional leading whitespace, comments with #, and a pragma mechanism for extensibility. Perky supports Python 3.6+ and passes its test suite with 100% coverage. The implementation is roughly 1k lines of Python, reducing surface area for bugs. You handle all data transformation yourself\u2014whether by hand, a library like Marshmallow, or custom validation\u2014which aligns with the Zen of Python's principle of refusing to guess at types.","worth_installing":"Yes. Perky is actively maintained, has no known vulnerabilities, installs with minimal friction, and solves a real problem\u2014config file parsing\u2014with a genuinely different philosophy (explicit type handling, provenance tracking). It's suitable for projects that value human-readable config and precise error reporting. Start with it if you're tired of JSON's noise or TOML's complexity and want strings with location metadata. Not a fit if you need automatic type coercion or a mature ecosystem of tooling."},"id":"perky","links":{"html":"https://skillfed.io/packages/perky","md":"https://skillfed.io/packages/perky.md","pypi":"https://pypi.org/project/perky/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-07-16","license_spdx":null,"license_treatment":"permissive","name":"perky","python_support":"supports_current","summary":"A simple, Pythonic file format.  Provides load, loads, dump, and"},"popularity":{"monthly_downloads":166285,"position":10500,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.10"}
