laruence/yaf

Fast php framework written in c, built in php extension

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 1 hour ago
Added to GitGenius on September 15th, 2026
Created on December 13th, 2011
Open Issues & Pull Requests: 94 (+0)
GitHub issues: Enabled
Number of forks: 1,353
Total Stargazers: 4,510 (+0)
Total Subscribers: 436 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 40.7 days
Mean response time: 118.3 days
90th percentile: 518.2 days
Tracked items: 7

Most active contributors

Sign in to see contributor activity.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 2
New in 7 days: 0
Closed in 7 days: 1
Avg open age: 1,271 days
Stale 30+ days: 2
Stale 90+ days: 2

Recent activity

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

Top labels

  • Feedback (1)

Most active issues this week

Detailed Description

Yaf is a PHP framework written in C and built as a PHP extension.

Yaf addresses the performance overhead inherent in traditional PHP frameworks by implementing the entire MVC stack—routing, dispatching, and class loading—in compiled C code rather than interpreted PHP. Where conventional frameworks incur milliseconds of bootstrap overhead per request through Composer autoloading and PHP file inclusion, Yaf eliminates this cost by pre-loading framework components into the extension's shared memory. Application initialization and request dispatch cycles run in microseconds. The framework provides standard MVC components including controllers, routers, and configuration management, all exposed through a PHP API.

Yaf suits high-traffic applications where framework overhead becomes a measurable cost and long-lived services built on async runtimes like Swoole or RoadRunner, where eliminating per-request framework initialization and avoiding global state pollution across requests matters. The tool is not intended as a general-purpose replacement for mainstream PHP frameworks but rather as a specialized choice for performance-critical scenarios. The README recommends pairing Yaf with complementary C-native extensions from the same ecosystem: Yaconf for configuration parsing and Yac for runtime caching, both designed to eliminate per-request overhead in their respective domains.

Development activity shows consistent maintenance with regular updates addressing PHP compatibility and bug fixes. The project maintains multiple supported branches to serve different PHP versions, indicating attention to backward compatibility across the ecosystem. Documentation is centralized in the official PHP manual rather than duplicated in the repository, suggesting integration with PHP's official documentation processes. The tool provides extensive runtime configuration options for controlling naming conventions, autoloading behavior, and dispatch limits, reflecting a mature codebase refined through production use.