Sourcehunt: Hacktoberfest 2015 Edition – Hack to Glory - SitePoint PHP



Sourcehunt: Hacktoberfest 2015 Edition – Hack to Glory

Welove open source. In fact, it’s almost exclusively what we write about. But using the outreach we have for drawing attention only to our own work wouldn’t be fair – so we decided to try something new with this post / series, and just in time for #hacktober !


Much like the great guys and gals at DigitalOcean have their Hacktober open source drive , and Facebook has theirs , oursourcehunt posts will be a new monthly type of article, listing open source projects that could use some extra contributors. In this post, we’ll mostly be focusing on less known projects, those that don’t have an army behind them already.

To suggest projects you’d like to see on this list next month, just shout out tweets with hashtags #sourcehunt and #php – here’s the link to the combination . Naturally, if you’d like to sourcehunt a project written in another language, alter accordingly.

Note that sourcehunt will be a year-round project, not just hacktober, so get those submissions in!

Projects Webiny / HTPL

Webiny’s Htpl is a new template engine built for the Webiny Framework, but perfectly usable outside it, much like something like Twig. We took a look at theirstandard library a while back and came away impressed, and Htpl seems just as interesting. Rather than rely on mustachy syntax like {{this}} in the templates, Htpl relies on all custom HTML5 elements which, in a way, encompass components you can manually define for yourself. Htpl also has a built-in minification engine, so asset management is that much simpler.

JordanRL / Newton

Newton is a handy PHP package for converting between various physics units of measurement and doing advanced math operations on them. The units are “fully aware of each other”, meaning most of the method calls are chainable and can be used to create fluent, readable operations. It comes with support for extensions, if you want to add your own units, and the repo contains detailed instructions on dos and don’ts regarding contributions.

Bocharsky-bw / Arrayzy

The wrapper for all PHP built-in array functions and easy, object-oriented array manipulation library. In short: Arrays on steroids.

Thus reads the description of this repo , and is as accurate as they come. The library makes array manipulation more consistent across function calls by providing two classes – one for creating mutable, and the other for creatingimmutable arrays. Both classes come with similar methods, with the crucial difference being that the ImmutableArray class always returns new instances of arrays, leaving the input array unchanged. For a full list of available methods, see the documentation and for instructions on contributing, see their contribution guide at the bottom of the README.

thierrymarianne / LightTable-PHP

LightTable is an advanced code editor which began its long and bumpy journey on Kickstarter , years ago. For an early demo of what it could do back then, see the Kickstarter video. It had come a long way since then before getting abandoned by its maker, but the community it had acquired still keeps it alive as an open source project. One thing it’s lacking, however, is PHP support. Thierry Marianne jumped in and filled that void somewhat by developing an initial PHP plugin , but it needs work – a lot of it.

Remote execution for Vagrant support, InstaRepl, eval on selection – these are just some of the features LightTable has support for, but which need to be hooked into the plugin and made to work with PHP. Help Thierry finish this SublimeText killer by contributing to the plugin !

markstory / Mini-asset

Mini-asset is a tool first presented in the breaking free from the evil of NodeJS article, and can be used for effective minification of assets like Sass, Less, CSS, Coffee and JavaScript when working on the front end parts of your app.

It supports extensions, so it’s easy to develop custom tasks, and offers quite a few of its own out of the box. The tool is rather usable as is, but could use some upgrades – for example, paying attention to relative paths or adding in a method for plain copying or symlinking of folders, so that img resources deep in the dir tree outside /public become available in /public – maybe even aPuli integration!

FriendsOfSymfony / FOSMessage

For such a powerful organization, it’s surprising such an interesting library doesn’t have a stronger backing. FOSMessage is a skeleton package for implementing user messaging in your app, regardless of framework or CMS you’re using.

The library is under heavy development and will surely see widespread use once it’s ready, so if you’d like to get in on the ground floor of a soon to be popular project, FOSMessage is an excellent opportunity. Check it out !

nabble / semalt-blocker

A package for protection against referral spam , semalt-blocker self-updates a blocklist downloaded onto your server and blocks requests made by these referrers. It’s probably worth noting that requests which don’t reach PHP (i.e. they get served by a cache engine and forwarded directly to the server) are immune to this, so you’d be better off implementing this at a server level, as well, but it’s still an interesting project that could use some stars and possible improvements.

More from this author Functional Prog, Distributed DBs, JSON-Patch and More! PHP Channel's 3rd 2015 Trimester Update Go Forth and PR!

Use the list above to find a project you’re intrigued by and start hacking away. Remember to check contribution guidelines! If you do get any of your PRs merged into any of the above projects, let us know in the comments or by using the #sourcehunt #php hashtags and we’ll feature you in the next edition of sourcehunt!

Oh, by the way, if you’re looking to win Digital Ocean’s Hacktoberfest t-shirt, they whipped up a handy tool which you can use to check if you’ve qualified!