Here is all my projects regarding web development, most of which involve PHP.
MiniCMS
MiniCMS is an ongoing project for me to practice PHP development where I create a basic CMS with standard features like posts, categories, pages, comments, medias, users, etc… and with concerns for PHP best practices and security.
The point is that I do the same site several times, each times with a different set of constraints and technologies:
- Old-School Vanilla: (see on GitHub, check out the demo site) Completely vanilla, procedural PHP so without OOP or any design pattern (minus exceptions).
- Modern: (see on GitHub, check out the demo site) Also no framework, but this time with all the modern goodies OOP, MVC, DIC, TDD, template engine, etc…
PHP Standard Components
Modern PHP frameworks use many components that are now really standard, most of which have API standardized by PSRs for maximum interoperability.
So I set out to create some of these components myself (see on GitHub), not because of the lack of implementations available, but really for training.
I used some of them (the DIC and query builder, mostly) in my MiniCMS Modern project.
Tutorials
In 2015/2017, I worked as tech and billing support for 1&1, one of the major hosting providers. Out of passion for the subject, and the clear lack of information displayed by most of the customers I wrote a lengthy tutorials on the various subjects that makes a web hosting: domain names, emails, (shared) hosting, and managing its customer account.
It’s in french and published both on GitHub and on the blog.
Other Projects
Advent Of Code (go to the website, see on GitHub) is a set of Christmas-themed programming challenges available as an advent calendar every years since 2015. Most are rather easy, but some require some thinking to optimise the solution enough to get a result in a reasonable amount of time. I completed almost all of them in PHP, my solutions are of course on GitHub.
Astroneer Bingo (go to the website, see on GitHub) is a mini-game where you have to collect/print/research/find all items of a row, column or diagonal of an Astroneer’s themed Bingo card as fast as possible. The cards are customizable (size and what can appear on them) and shareable via a string/URL. But due to the game’s state (early access since December 2016), Bingo is actually not practical at all to play in the game. I had however a lot of fun creating this site in vanilla PHP (+ Bootstrap). I hope the game will evolve to a state where Bingo is fun to play so that I can work more on the site and maybe turn it later in a proper mod.
Markdown Static Site (see on GitHub) is a small vanilla PHP script that lets you easily turn a bunch of Markdown files into a static site. I used it mostly for Daneel’s documentation.
Video Games Chest (see on GitHub), an old project of a website, made with the Laravel (at the time v3.5), that had the goal of facilitating the discovery of video games
Open source contributions :
- When working with Superpowers, I updated a few times the THREE.js TypeScript definitions, over at the Definitely Typed repo.
- When working with CraftStudio, I also contributed to add some missing methods to Lua.js, the library used by CraftStudio’s webplayer to translate Lua scripts to JavaScript.