--- id: iterproxy version: "0.3.1" license: MIT license_treatment: permissive maintenance: dormant --- # iterproxy — Give any iterable object capability to use .one(), .one_or_none(), .many(k), .skip(k), .all() API. License: permissive · Maintenance: dormant · Downloads: 870.8K/mo ## What it is and what it does IterProxy is a lightweight wrapper that adds ORM-like query methods to any Python iterable. Instead of manually slicing, filtering, and consuming iterators with nested loops or built-in functions, you wrap an iterable in IterProxy and call chainable methods like .one(), .many(k), .skip(k), .all(), and .filter() to retrieve items in a more readable style. It supports both simple and compound filter logic using and_, or_, and not_ operators, and can group items into chunks. The package has no runtime dependencies and works across Python 3.7 through 3.11. It is useful when you want to add a familiar query-like interface to custom iterables or when refactoring code that currently uses nested filter() calls or manual iteration. The dormant maintenance status (last release November 2023) means it is stable but unlikely to receive updates for new Python versions or features. Use it for: - Simplify access to query results in custom ORM wrappers or data-fetching functions by replacing manual iteration with .one(), .many(k), or .all(). - Chain multiple filter predicates on an iterable without nesting built-in filter() calls, improving readability. - Skip and retrieve a fixed number of items from an iterator using .skip(k).many(n) in a single readable expression. - Group large iterables into fixed-size chunks for batch processing using .iter_chunks(k). - Add type hints to iterator results by subclassing IterProxy with a generic type parameter for IDE autocomplete. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Wraps any iterable object to provide ORM-style query methods like .one(), .many(k), .skip(k), .all(), and .filter() for convenient item access and filtering. Yes, if you frequently work with custom iterables and prefer a fluent query API over nested filter() calls or manual slicing. The zero-dependency footprint and permissive license make it low-risk. However, the dormant maintenance status means it will not receive updates for future Python versions; install only if your Python version is already in the supported range (3.7–3.11) and you do not expect the package to evolve. ## Install pip install iterproxy uv add iterproxy poetry add iterproxy ## Installing iterproxy Before you install: Low friction installation with no runtime dependencies. Package is dormant (last release 2023-11-02, 1016 days ago) but has seen no recent changes to warrant concern; suitable for stable, self-contained use. License in practice: MIT license is permissive; you may use, modify, and distribute this package freely with minimal restrictions. Quickstart: from iterproxy import IterProxy proxy = IterProxy(range(10)) proxy.one() # returns 0 proxy.many(3) # returns [1, 2, 3] proxy.skip(2).many(2) # returns [6, 7] proxy.all() # returns [8, 9] Verify before relying: - Whether the package is actively maintained or if dormancy signals abandonment risk for future Python versions. - Performance characteristics when wrapping very large iterables or deeply chained filter operations. ## Package facts - License: MIT (permissive) - Python support: unspecified - Install friction: low - Maintenance: dormant - Downloads: 870.8K/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags iterator wrapper query methods, iterable one many skip all, chainable iterator filtering, orm-style iterator api, lazy iterator convenience methods, iterator slicing and filtering, iterator-utilities, query-api [View on SkillFed](https://skillfed.io/packages/iterproxy) · [View on PyPI](https://pypi.org/project/iterproxy/)