A BeyondCode course

PHP Package Development

Learn how to build a future-proof PHP Package

Check your mailbox to get your free sample video.

Package development - and why you should care

“I think I implemented this somewhere before, let me check some old projects...“

Have you ever heard yourself saying something like this in one of your projects? I know that it happened to me a lot of times!

When I was given a task at my job, I would usually go and search for an available open-source package on packagist.org - and if nothing that suited the needs was available, I would go and build the solution for the specific problem I was given.

A lot of times, usually a couple of weeks or months later, I had to solve a similar problem and found myself copying parts of the code that I've written earlier.

Maybe I had to tweek the code a little bit, but at the end I was duplicating my existing solution.

"Marcel uniquely has the perfect combination of skill and teaching ability. Without hesitation, I’ll be first in line to pick up his new course."
Jeffrey Way

Start to think in packages

That's when I began to think of my code as packages. That's also where most of my open source packages come from. It's stuff that I built and use in real-world applications in my day job.

And it's not about open source!
If you do not care about open source, or simply are required to close the source for whatever reason, building packages will still benefit you, your team-members and your employer.

There are so many benefits when you start encapsulating your code into smaller, more manageable chunks of packages:

  • You structure your code so that it becomes more manageable
  • Your code becomes easier to test
  • You can document packages easier than a full-blown application
  • Have re-usable software components for future use
  • Open Source your code and benefit from the PHP community

And many more.

Freek Van der Herten

The course I wish existed years ago

PHP Package Development will teach you everything that I've learned about good package design, along with tips on how to get started with open sourcing your package, how to make use of automated tests and much more.

I really think this is a course that every PHP developer should be exited about - I am!

About Me

I am Marcel, managing partner and developer at Beyond Code and guest instructor at Laracasts. I'm running Beyond Code – a company who's building tools for developers like you. We provide Tinkerwell, Invoker, HELO and others.

You're in good company

Over the last 7 years I have created more than 100 open source packages for myself, my company, or my own Chatbot framework.

The packages have been downloaded more than 368.9 million times, found it's way into the Laravel Core and are being used in countless of applications all over the world.

  • botman/botman
  • beyondcode/laravel-websockets
  • mpociot/laravel-apidoc-generator
  • beyondcode/laravel-self-diagnosis
  • beyondcode/laravel-er-diagram-generator

Publishing your package

Whether you are going to open source your package, or rather keep it to yourself, this video course will show you how to make use of automated continuous integration systems like TravisCI for automated testing or StyleCI for automated code-formatting.



As you may know, I am a big Laravel enthusiast and most of my open source efforts are centered around the Laravel framework.

That's why this course will not only cover framework-independent packages, but also add in-depth tutorials on how to create great packages, tailored specifically for Laravel. Making use of custom routes, service providers, views, commands and much more.

Get PHP Package Development


  • Access the first 21 videos with 2 hours of content
  • Ability to Stream and Download the videos


  • Access all 34 videos with more than 4 hours of content
  • Ability to Stream and Download the videos
  • Learn about Laravel specific package development (custom routes, views, configuration files, commands, and more)
  • Learn how I build the real world Laravel Tinker Server package with you
  • Access to all new package building videos added to the course

What's in the box

Package Benefits

Every package starts with...

Autoload Configuration

Your first test

PHPUnit Configuration

Test Driven Jokes

Using your package locally

Code Coverage

Git git hooray

Publishing on Packagist

Semantic Versioning

Travis CI

Style CI

Choose a License

README files


Git Attributes

Issue Templates

Package Generators

Using a Joke API

Private packages


Adding Laravel support


Create a custom command


Writing tests for our Laravel command


Adding routes


Adding Views


Testing view data


Config files


Adding Database Migrations


Testing Database Migrations


The package idea


Package Development Pt. 1


Package Development Pt. 2


Refactoring the package

What others think about the course

Join 32,681 developers already learning


I get an error when trying to pay. What is wrong?

The payment provider that I'm using seems to have some issues in case you are using an adblocker. If you experience any issues when trying to purchase the course, please try disabling your adblocker and try again.

Can I stream / download the videos?

Once you purchase the course, you will get access to a dedicated course platform, where you have a login and can keep track of your progress throughout the course. You can either stream or download the videos.

Why do I see a different price when I try to buy the course?

All our prices are exclusive of VAT and depending on the country you live in, additional VAT might be added to the price.

Can I purchase a team license for all my developers at a reduced price?

Yeah sure! Please get in touch with me via Email and we can work something out for you and your team.

I have another question, how can I reach you?

Just get in touch with me via Email if you want to know anything else.

PHP Package Development

Subscribe and receive a free course preview.