What we learned at Laracon EU 2023
We are always looking for ways to stay ahead of the game and develop the most innovative solutions. Attending Laracon EU 2023 was the perfect opportunity to do just that. Laravel, the widely adopted PHP framework for web application development has become a staple in our development toolbox over the years so we were excited to learn more about its new features and use cases. The fact that we got to visit the beautiful city of Lisbon was a great bonus.
Why did we go to Laracon?
As an established framework with features that are proven and validated, Laravel is a reliable choice for building web applications. We already implemented Laravel in several of our projects, including AquaFlanders, Eosol, Leansteps, Maes, Wolfplanner, and Insightz. However, the Laravel community is constantly innovating and improving the framework and its surrounding packages. Attending Laracon EU 2023 gave us a glimpse of the latest features and best practices of Laravel.
The conference featured a diverse line-up of speakers, ranging from seasoned developers to new faces in the Laravel community. These talks covered cutting-edge topics, showcasing inspiring ways to use Laravel to solve real-world problems and innovative development techniques.
Our key takeaways of Laracon EU 2023
New features of Pest v2
PEST is a popular testing framework for PHP, with support for Laravel. It aims to make testing Laravel applications easier by requiring less code and providing lots of helpers and plugins. Nuno Maduro showed us some exciting new features of Pest v2 during his talk The future of PEST.
Test to-dos
"Test-to-dos" provides a way to start defining which tests you want to write, while not having to write them all right away. These to-dos appear in the test output when running a test suite, making it easier to make sure they are not forgotten.
Arch Plugin
The Arch Plugin allows you to test the architectural rules of an application by specifying expectations for different parts of your codebase. This makes it easier to ensure conformity within a project, and even across projects, which in turn makes a project easier to maintain.
Test profiling
Test profiling makes it easier to detect which parts of an application are slow, and helps define if and where performance improvements are needed.
Other features and benefits of Pest Testing Framework
Speaker Nuno Maduro also highlighted some existing features:
- Code coverage in the terminal
Makes it easier to see if all parts of the codebase are covered by tests - Watch plugin
Automatically runs all your tests if code has changed - Datasets
Allows the same test to be run for different sets of data, without having to write a separate test case for each.
The benefits of Pest are numerous, and the features mentioned are just a small fraction of its capabilities. Having clearly defined tests not only guarantees the quality of our applications by verifying requirement fulfilment during development, but also guarantees that the features will continue to function even when changes are made to the application later on while reducing the need to manually verify everything.
Inertia.js
Diana Scharf taught us how Inertia.js can make the connection between front- and back-end faster and more efficient. Inertia.js is a powerful tool that Laravel developers can use to build modern single-page applications (SPAs) with classic server-side routing and controllers. With Inertia, developers can create SPA experiences without sacrificing the benefits of server-side rendered applications.
Inertia works as a client-side routing library that allows users to navigate between pages without having to reload the entire page. This has huge added value when it comes to speed and responsiveness of your application.
Inertia is designed for developers of Laravel, Ruby on Rails and Django, allowing them to build apps without changing their coding techniques. With Inertia, developers can build lightning-fast, SEO-friendly applications that are easy to maintain and scale up.
Termwind
We were particularly enthusiastic about the benefits of the Termwind package for Laravel. When creating custom Artisan (the Laravel command line interface) commands, developers may want to make the output unique and eye-catching, and this can be done with the awesome Termwind package.
This PHP package, created and maintained by Nuno Maduro and other contributors, allows you to add styling to CLI output. Termwind is a great tool for making Artisan output look unique and eye-catching, making it ideal for CLI applications and Laravel packages. With Termwind, developers can work more easily by creating a clear and well-organised output that reduces the risk of errors.
Laravel Packages
In his presentation, Freek Van der Herten demonstrated the simplicity of developing, testing and distributing a Laravel package. Packages provide a convenient way to create and maintain frequently used functionalities that can be used effortlessly in multiple projects. This approach allows us to avoid duplicate code and prevents us from having to reinvent the wheel.
Sentry
During Laracon, we had the chance to learn more about Sentry. This is a software tool that performs application performance monitoring and error tracking for Laravel and several other backend and frontend frameworks. By using Sentry, we can identify software issues, collect relevant data and manage problems more efficiently. This leads to better bug resolution and detection of unreported issues, ultimately resulting in higher quality software. We already implemented Sentry in our AMBER web application and are excited about its capabilities!
Looking back at Laracon EU 2023
Wrapping up, attending Laracon EU 2023 was a valuable experience for us as developers where we definitely gained many new ideas. We already started implementing some of the newly introduced features. This way we further enhance the robustness of our code bases. As a result, our solutions are as flexible and future-proof as possible.
Book a meeting
Discuss your idea directly with one of our experts. Pick a slot that fits your schedule!