Committed to
Open Source
At Spatie, we’re big on open source.
It’s not just a way of working for us,
but part of our culture.
A love story
A love story with
with laravel that
laravel that
started in 2015
Back in 2015 when we first began developing open source packages and tools for Laravel and PHP, we couldn't have imagined the overwhelming support and feedback we'd receive from the community.
Over the years, we've launched numerous packages and courses, and have actively engaged in delivering presentations across the globe.
We have been fortunate that working with the Laravel community brought us many opportunities to collaborate with developers from around the world, and expand our own skills and services.
Our Efforts in numbers
Packages Released
& maintained
Total downloads
on packagist
Contributors
on Github
How we manage
and build open
source at spatie
Being able to spend enough time on our open source efforts while also building applications for our clients can be challenging. Laravel is what ties everything together.
We use Laravel for almost all our web development projects, and it's the foundation for many of our paid products too.
We have a few rules in place to make sure our open source work meets the same high quality as our products and client work.
The balancing act
of open source
01
Make it easy to use
We have put a lot of effort into making our packages as user-friendly as possible. Ultimately, a package should be fun to use.
02
Write excellent documentation
We invest time in creating excellent documentation for each of our packages. This makes it easy to discover what a package does and what all the features are.
03
Provide an extensive test suite
All of our packages have an extensive test suite. This provides you (and us) with proof that the package code behaves correctly and works under all conditions.
04
Write readable code
We structure and write our code in such a way that others can easily understand what is going on. Names of variables, functions and classes are chosen with care. You should be able to understand how the package works just by reading the code.
05
Be flexible
We know we can’t imagine every scenario our code will be used in. That’s why we make our packages as customizable and extensible as possible. We don’t use the final keyword, and make everything protected by default instead of private. Our code is structured in small functions and classes that can be overwritten or extended.
06
Keep the scope small
When creating a package we intentionally keep the scope small. In most cases, packages are created to be consumed in our projects. We would rather have a small package with one very polished feature, than a large package that tries to cover all possible edge cases and variations of a problem.
07
Stay up to date
When a new PHP or Laravel version comes out, our team spends time to make sure the test suite is running correctly and that a new package version is tagged. Usually, all of our Laravel packages are compatible with the major releases of the Laravel framework within a few days.
Contribute to
our work and
keep us going
Community is what makes open source work worthwhile. Without the hundreds of people who use, test, and contribute to our packages, they wouldn't be as successful as they are today.
If you want to get involved in our open source work, here’s some tips on how you can help us out best.
Resolve open issues
Ready to help us out? Be sure to check out the package's contribution guidelines first. They’ll walk you through the process on how to properly submit an issue or pull request to our repositories.
Hire us
for your next project
The best way to support us is to hire us. Tailor-made web development in Laravel is what we do best. We love every new challenge as the next, and try to extract common patterns. This has left us with a collection of solid building blocks to play with, plus a sense of what makes a web project great.
Moreover, we can lean on the shoulders of frameworks like Laravel, React & Vue to take giant leaps.
Do you think this approach would fit you? It's time to talk.
Buy a license to our
products or courses
Support Spatie by purchasing licenses for our developer tools, gaining access to our awesome software and courses. You'll gain access to some awesome new software or the ability to learn valuable skills!