ponyorm/pony

Pony Object Relational Mapper

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 54 minutes ago
Added to GitGenius on September 18th, 2026
Created on February 8th, 2013
Open Issues & Pull Requests: 358 (+0)
GitHub issues: Enabled
Number of forks: 255
Total Stargazers: 3,818 (+0)
Total Subscribers: 82 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 62.4 days
Mean response time: 225.8 days
90th percentile: 530.2 days
Tracked items: 17

Most active contributors

Sign in to see contributor activity.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 26
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 788 days
Stale 30+ days: 25
Stale 90+ days: 23

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

No label distribution available yet.

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

Pony is an object-relational mapper for Python that enables database queries using Python generator expressions and lambda functions instead of string-based SQL.

Pony solves the friction of writing SQL by translating Python expressions directly into database queries. When you write a generator expression or lambda in Pony, the tool analyzes its abstract syntax tree and converts it into the appropriate SQL dialect for your database. This approach keeps query logic in Python while maintaining the performance of native SQL. The mapper supports SQLite, MySQL, PostgreSQL, and Oracle databases, and provides readable formatted SQL output so developers can verify what queries are being generated.

Pony suits teams that prioritize developer productivity and want to minimize the cognitive load of switching between Python and SQL. The compact entity definitions and concise query language make it accessible to developers new to ORMs. It works well for interactive development in Python interpreters and provides comprehensive error messages that pinpoint exactly where problems occur in queries. If your project requires working with multiple database backends, Pony's dialect abstraction handles that translation automatically. The project also offers an online Entity-Relationship Diagram Editor for prototyping database schemas before implementation.

The project maintains active engagement with its community through Stack Overflow, a Telegram group, and a newsletter. Development follows a structured approach with code formatting and linting tools integrated into the workflow. The maintainers actively solicit feedback and contributions through documentation repositories and pull request processes.