Even a small project could generate a surprisingly large volume of code. The situation gets worse as the team increases. Since developers work on separate sections of the code, keeping track of the so many versions of the code becomes a challenge.
Tom Preston-Werner, Chris Wanstrath, and PJ Hyett identified the problem and launched GitHub in April 2008. The platform is written in Ruby on Rails and Erlang and has become the home of some of the most popular code repositories. A huge number of developers use GitHub as a version control system for their projects. Today, using Git for managing all the versions of the project code has become an accepted coding best practice. In fact, top GitHub projects often include libraries and apps that further streamline version control processes.
Since the number of repositories on GitHub now number in thousands, it is easy to miss out the most popular (or useful) repos. To remedy the issue, I will present the top 20 trending repositories on the PHP GitHub. I will use the GitHub’s own ranking criteria of stars, forks and the number of contributors to decide the top 20.
Top Trending Projects on PHP GitHub in 2017
Following are the candidates:
- Design Patterns PHP
- Php ai
- Bootstrap CMS
- Nextcloud Server
Design Patterns PHP
This repository is created by Domnikl. I like this repository because of the sample code of different design patterns and how developers could implement these patterns in PHP projects. Every pattern has a small list of examples (most from Zend Framework, Symfony 2 and Doctrine 2)
Created by Fzaninotto, Faker is a PHP library that generates fake data for your projects. Whether you need to bootstrap a database, create good-looking XML documents, fill-in the persistence for stress testing or anonymize data taken from a production service, Faker is the best tool for the job.
Created by team PHPMailer, this is a full featured email sending class for PHP projects. This class is a great replacement for the mail() function provided by PHP.
Created by Monicahq, Monica is a great app for keeping track of activities of friends and family members. Through this simple app, developers could create custom projects that implement action tracking of specific profiles.
Platform-Agnostic Security Tokens (PAST)
Created by paragonie-security, PAST is a specification and reference implementation for secure stateless tokens.
Created by Arkadiusz Kondas, this machine learning library offers a fresh approach to PHP based machine learning projects. The library offers a whole host of options including association rule learning, regression, cross-validation and pre-processing.
Created by ThePHPLeague, Flysystem is a filesystem abstraction. Use this library to replace the local file system with a remote file system.
This library offers a PHP based CMS that uses Laravel 5.1 and Sentry. It is maintained by Graham Campbell.
Created by Voten, thi library offers a code for creating a realtime social bookmarking platform that is simple to use and offer great flexibility to the developers.
Created by Bobthecow, PsySH offers a dev console and interactive debugger for PHP projects. In effect, this repo creates a REPL platform for PHP developers.
Created by Postlight, this headless WordPress + React Starter Kit offers developers two important functionalities: A WP backend that uses the WP REST API and a React frontend powered by Next.JS
Laravel Page Speed
Created by Renatomarinho, this package claims to improve website optimization on any hosting for PHP by at least 35%. The package works by minifying HTML output on demand.
Craft is a self-hosted PHP application built on Yii that emphasizes custom development pulgins. When using CraftCMS, developers have the basic structure in place that could be customized to fit a broad range of project specifications.
Created by Antonioribeiro, this is a great package to get/add country related data to PHP projects.
Created by Kietail, Zttp is just a Guzzle wrapper that provides support for common use cases.
Created by Tightenco, Ziggy offers a Blade directive for including into the project views.
Created by Codestudiohq, Laravel-totem is a pretty useful dashboard that developers could use for managing, scheduling and enabling/disabling tasks.
This repository is trending in github last year.Created by Bmitch.Churn-php is a package that helps you identify php files in your project that could be good candidates for refactoring. It examines each PHP file in the path it is provided and:
- Checks how many commits it has.
- Calculates the cyclomatic complexity.
- Creates a score based on these two values.
Slug Generator Library
Created by Ausi. this package provides methods to generate slugs for URLs or filenames. The package relies on Transliterator class.
PHPUnit Pretty Result Printer
Created by Mikeerickson, this simple package adds a “printer” to the default PHPUnit Result
Developed by Seldaek, Monolog is one of the most downloaded PHP projects from Github in 2018. The main function of Monolog is to provide easy management of project logs, thus helping you send your logs to files, databases, inboxes and other web services.
Guzzle is a simple HTTP client for PHP projects, meant to facilitate sending HTTP requests in quick time. It has a simple interface from where you can build query strings, send POST requests, upload JSON data and other similar services. Moreover, you can also send both synchronous and asynchronous requests via Guzzle.
Panther is an easy-to-use standalone library for scraping websites and running end-to-end tests through browsers. It is quite powerful, powered with Symfony BrowserKit and DomCrawler API that helps you easily test websites for any possible loophole.
Perhaps the most trending one, Phalcon framework is one of the most searched term on Github in 2018. It is an open source PHP framework written with C extension, providing quality web performance with lower memory consumption.
Nextcloud promises a reliable and safe place for all your web data. Using Nextcloud, you can easily sync your files, databases, contacts and other services on the go. The platform also offers optimum security with its two factor authentication feature, thereby helping you to safeguard your data completely.
Summarized Table View
|1||Design Patterns PHP||domnikl||sample code for several design patterns in PHP||14,191||3,018|
|2||Fzaninotto||Facker||Faker is a PHP library that generates fake data for you||13,162||1,932|
|3||PHPMailer||PHPMailer||A full-featured email creation and transfer class for PHP||10,376||5,725|
|4||Php ai||Php ml||Machine Learning library for PHP||5222||680|
|5||Thephpleague||Flysystem||Flysystem is a filesystem abstraction which allows you to easily swap out a local filesystem for a remote one.||4,349||428|
|6||Monica||Monicahq||Intuitive web application to remember everything about your friends and family. https://monicahq.com||3,917||430|
|7||Bootstrap CMS||CMS||A PHP CMS powered by Laravel 5 and Sentry||2,303||754|
|8||Voten||Voten-co||Voten.co is a real-time social bookmarking for the 21st century. It’s real-time, beautiful, customizable yet simple.||753||124|
|8||Bobthecow||Psysh||PsySH is a runtime developer console, interactive debugger and REPL for PHP. Learn more at psysh.org and in the manual||2,918||178|
|9||headless-wp-starter||postlight||Postlight’s Headless WordPress + React Starter Kit is an automated toolset that will spin up two things: 1) WordPress backend that serves its data via the WP REST API. 2) A server-side rendered React frontend using Next.js||1,073||67|
|10||Past||Paragonie||Platform-Agnostic Security Tokens||1,350||22|
|11||Laravel-page-speed||Renatomarinho||Package to optimize your site automatically which results in a 35%+ optimization||1,014||96|
|12||CMS||Craft cms||A content-first CMS that aims to make life enjoyable for developers and content managers alike.||988||117|
|13||Countries||antonioribeiro||Laravel countries and currencies||773||61|
|14||Zttp||Kitetail||A developer-experience focused HTTP client, optimized for most common use cases.||810||51|
|16||Laravel-totem||codestudiohq||Manage Your Laravel Schedule From A Web Dashboard||661||50|
|17||churn-php||bmitch||Discover files in need of refactoring||802||32|
|18||Slug-generator||ausi||Slug Generator Library for PHP, based on Unicode CLDR data||589||25|
|20||Phpunit-pretty-result-printer||Mikeerickson||Extend the default PHPUnit Result Printer with a modern, pretty printer||731||20|
|15||Monolog||Seldaek||Provide easy management of project logs, thus helping you send your logs to files, databases, inboxes and other web services||13,125||1475|
|16||Guzzle||Guzzle||Simple HTTP client for PHP projects, meant to facilitate sending HTTP requests in quick time||15,099||857|
|17||Panther||Symfony||Easy-to-use standalone library for scraping websites and running end-to-end tests through browsers.||1326||69|
|18||Phalcon||Phalcon||Open source PHP framework written with C extension||9395||1733|
|20||Nextcloud Server||Nextcloud||Easily sync your files, databases, contacts and other services on the go||6202||1089|
Create PHP websites without the worry of server management.
Deploy your PHP app on optimized PHP hosting servers.