Confidently
Build Bulletproof Laravel Applications
You Can Be Proud Of

The ultimate guide to auditing, testing, fixing and improving your Laravel applications so you can build better apps faster and with more confidence.

Over 1,000+ copies sold! 🎉 Only $39!
Battle Ready book cover

It's full of great tips and recommendations that every Laravel developer really needs to know.

Stephen Rees-Carter profile picture

Stephen Rees-Carter

Following its clear, comprehensive, and well-written content will leave you feeling so much more confident about your apps.

Matt Kingshott profile picture

Matt Kingshott

As a lookup or read, it's a comprehensive guide to worry-free development.

Nicolai Baaring profile picture

Nicolai Baaring

Auditing chapter

SECTION ONE

Auditing

Testing chapter

SECTION TWO

Testing

Fixing chapter

SECTION THREE

Fixing

Improving chapter

SECTION FOUR

Improving

Exploding head emoji Suffering from Technical Debt?

It wasn’t long into my career as a web developer that I began to realise the importance of doing things the ‘right’ way…

Aside from being a natural perfectionist and always wanting to produce the best possible end product, I soon understood short-cut solutions and poor quality code almost always came at a cost to everyone involved. I’m talking about apps being shipped with frustrating bugs, or annoying issues that seriously slowed down the progress of the whole team.

I know I’m preaching to the converted here, but a clean codebase and overall well-engineered solution will always be better in the long run. It might take a bit more time upfront, but it’s well worth it.

As a developer, I always knew this to be true. But when I dug into the code of an app, I’d constantly find myself saying things like: “this works, but it could have been so much better” - or “what on earth were they thinking when they wrote this?”.

Of course, the reality is we don’t live in an ideal world. Tight deadlines and strict budgets mean we don’t always get to spend as long as we’d like perfecting every single line of code.

Ever lay awake at night worrying whether your code is secure and working properly? Maybe you’ve been anxious because you’re expecting there to be customer complaints in the morning when you log onto your work computer?

Yep, me too…

But the good news is it doesn’t have to be this way.

In fact, as I started to grow as a Laravel developer, I began to come across ways to quickly improve my apps. Little tips that made them more robust, professional and maintainable.

For example, setting up a good quality CI (Continuous Integration) workflow made a massive difference when it came to improving the quality of my code and feeling more confident in my apps.

Whenever I added new code and merged it into an existing codebase, having a CI workflow meant I could be more sure it would work properly and not break any existing code. What’s more, the whole team could move faster and pick up on potential errors before the code made it to production. Team members could now contribute to parts of the codebase that they might not have worked on before, because they could rely on the test.

That’s just one example, but such techniques really can make all the difference to your life as a developer, helping you improve your existing apps - and make better new ones.

As well as feeling like a more competent developer, I also found I was also able to add new features and respond to requests more quickly. Clients were happier and the whole team could cut down on those tedious email chains that every developer is surely familiar with.

What if you could do the same? What if you had an arsenal of techniques you could use to improve your Laravel apps? Wouldn’t it be great to learn how to improve your developer skills, and finally be able to unleash your code onto the world with more confidence?

Ashley Allen

Author

Exploding head emoji Ash Allen – Hey there, I’m the author behind ‘Battle Ready Laravel’.

My name is Ashley Allen and I’m an experienced Laravel developer from the UK with a passion for clean, maintainable and extensible code. Since 2017 I’ve served individual clients and helped more than 5,000 people improve their own Laravel apps through my popular blog, newsletter, articles and PDFs.

As a freelance developer, I quickly discovered my true love was for making apps better. I enjoyed nothing more than improving the overall quality of the codebase.

On almost every project I worked on, I always ended up being "the test guy" or the "he'll fix it for you guy.” In fact, I've written over 10,000 tests since becoming a freelancer!

Today, it's not very often that I work on greenfield projects. I usually work on existing projects, working with clients to maintain their existing system, fixing bugs, removing technical debt, building test suites, and adding new features…

And over that time I’ve learnt exactly what works when it comes to improving the performance, maintainability and security of Laravel applications.

As well as helping my clients, I also share my tried-and-tested techniques through my blog and newsletter. I’ve also written The Clean Coder’s Guide to Laravel, which has been downloaded more than 5,000 times.

Now, for the first time ever, I’ve gathered together my complete arsenal of techniques to help other developers like you to build bulletproof Laravel applications you can be proud of.

By tapping into my expertise, you can become a more confident and competent Laravel developer starting today.

Books emoji What's Covered in the Book?

Battle Ready Laravel is your ultimate guide to creating bulletproof Laravel applications. You will learn how to improve the performance, maintainability and security of your Laravel projects, providing you with hands-on experience and starting points on how to audit, test, fix and improve your Laravel web apps.

In the book, I'm going to take you through the exact same steps I use when improving Laravel projects . You'll be given actionable advice and steps you can use straight away in your own projects. It is a great resource for both experienced and inexperienced Laravel developers looking to improve their codebase and application’s quality.

Nerd emoji What Will I Learn?

We'll start by learning how to use automated tools and manual methods to audit the codebase and find weaknesses and areas to improve.

You'll then discover how to write tests that increase our confidence in our code and reliability for our end users.

You'll learn how to reduce (and hopefully remove!) technical debt and fix bugs. I'll also show you the most common mistakes and errors I see in Laravel apps and show you can avoid them yourself.

By the end of the book, you should feel like a more confident developer and have a better insight into how to manage your Laravel apps to keep them efficient, testable, and maintainable ! Rocket emoji

220+ Pages

Battle Ready Laravel comes with over 220 pages of useful tips, tricks, and guides you can use right away.

$195 of Discounts Included

Get a head start with over $195 worth of discounts for Flare, Oh Dear, StyleCI, and Laravel Security in Depth!

Complete Blueprint

Split into 4 distinct sections with everything you need to build apps you can be proud of: Auditing, Testing, Fixing, and Improving.

Actionable Advice

Packed full of actionable advice you can start using right away to improve your apps and become a more competent developer. No fluff.

Real-life Examples

Full of real-life examples taken from my own personal experiences to help you understand how to improve your code.

Light and Dark Mode

The book comes in both light mode and dark mode for a comfortable reading experience. Honestly, who doesn’t love dark mode?

SECTION ONE

Auditing

Automated Tools

Explore and look at the different automated tools you can use to audit your app, including: Larastan, PHPInsights, and Enlightn

Manual Auditing

Learn different approaches you can take to manually audit your app to find slow, insecure or unmaintainable code that can be improved

Find Weak Spots

Learn how to find weak spots in your Laravel apps that do not have enough test coverage

Auditing chapter
Testing chapter
SECTION TWO

Testing

Add Critical Tests

Learn how to prioritise your testing and write tests that cover the mission-critical parts of your code

Catch Bugs Early

Discover how you can use automated tooling in your application to catch bugs early

GitHub Actions

Explore how you can use GitHub Actions to add workflows to run your tests and reduce the chances of broken or unmaintainable code making it to production

SECTION THREE

Fixing

Fixing and Catching Bugs

Learn how to use your new test suite to update your code and remove bugs

Updating Dependencies

Explore different approaches you can take to safely update your legacy system's dependencies, Laravel version and PHP version without breaking your existing code

Fixing Security Holes

A look at the different ways you can fix the security holes spotted during your audit and testing

Fixing chapter
Improving chapter
SECTION FOUR

Improving

Clean Up Existing Code

Learn how to use best-practices to improve your code and make it more testable, maintainable and readable

Removing Technical Debt

Explore different ways you can remove technical debt from your codebase to improve the code you write in the future

Improve Your Future Code

Learn how to use clean-code principles to improve the code you write and build better apps

Extra Goodies

Money bag emoji Up to $195 of Included Discounts!

Battle Ready Laravel comes with up to $195 USD worth of discount codes* for you to use!

Thanks to the generosity of Spatie, StyleCI and Laravel Security In Depth, if you purchase Battle Ready Laravel will get limited-edition discount codes for using with Flare, OhDear, StyleCI, and Laravel Security In Depth!

Discounts for OhDear

The book includes a €5 EUR discount for the first 3 months of new OhDear subscriptions.

Discounts for Flare

The book includes a €10 EUR discount for the first 3 months of new Flare subscriptions.

Discounts for StyleCI

The book includes a 20% discount for the first payment of new "Startup" or "Premium" StyleCI subscriptions.

Discounts for Laravel Security In Depth

The book includes a 25% discount for 1 year of new Laravel Security In Depth subscriptions.

* - Based on the exchange rates at the time of writing this (27th June 2022). The actual value may be different when redeeming the discount codes.

Flare logo OhDear logo StyleCI logo
Sections & Chapters Covered

📚 Table Of Contents

Section 1: Auditing


  1. What's Covered
  2. Planning Your Auditing Strategy
    • Getting Into the Right Mindset
    • Recording Your Findings
  3. Automated Tooling
    • PHP Insights
    • Enlightn
    • Larastan
    • StyleCI
    • Code Coverage
  4. Manual Auditing
    • Investigating "raw" Database Queries
    • Finding Incorrect Authorisation
    • Checking Validation
    • Finding "Fake Facades"
    • Finding Business Logic in Helpers
    • Finding N+1 Queries
    • Finding Controllers That Use Other Controllers
    • Finding Logic and Queries in Blade Views
    • Finding Hard Coded Credentials
    • Check Open Package Routes
    • Reviewing Project Documentation

Section 2: Testing


  1. What's Covered?
  2. Planning Your Testing Strategy
  3. The Benefits of Writing Tests
  4. Structuring Your Tests
    • Directory Structure
    • Choosing What To Test
    • Test Structure
    • Data Providers
  5. Writing the Tests
    • Prioritising Mission-Critical Tests First
    • Writing the Rest of the Tests
    • Preventing Test Fatigue
  6. Testing Your UI with Laravel Dusk
    • Installation
    • Testing a Simple Form
    • Dusk Pages and Selectors
    • Running Failed Tests and Groups
  7. Creating a CI Workflow Using GitHub Actions
    • Using an .env.ci File
    • Running the Test Suite
    • Larastan
    • Laravel Dusk
    • Output

Section 3: Fixing


  1. What's Covered?
  2. Planning Your Testing Strategy
  3. Using an Error Reporting System
    • Types of Errors
    • The Benefits of an Automated Error Reporting System
    • Error Reporting Using Flare
  4. Uptime Checking, Queue Monitoring and Scheduler Monitoring
    • Uptime Monitoring with Oh Dear
    • Scheduler Monitoring with Oh Dear
    • Queue Monitoring with Oh Dear
  5. Updating PHP, Laravel and Packages
    • Upgrading in Small Increments
    • Automating the Upgrade Using Laravel Shift
    • Planning Upgrades Early
  6. Using a Suitable Local Development Environment
  7. Using Tests to Fix Bugs
    • What is Test-Driven Development
    • Advantages & Disadvantages of Test-Driven Development
    • Fixing a Real Bug Using Test-Driven Development
  8. Safely Removing Code
    • Checking the Version Control History
    • Scream Test
    • Logging or Reporting the Usage
    • Removing the Code with an Atomic Commit

Section 4: Improving


  1. What's Covered?
  2. Planning Your Testing Strategy
  3. Making the Most of PHP's Type System
    • Using Type Hints and Return Types
    • Union Types
    • Type Hints and Return Types in Closures
  4. DRYing Up Your Code
  5. Refactoring Conditions
    • Reducing Indented Code
    • Replacing "if" and "elseif" with "match"
    • Using the Null-safe operator
  6. Using Database Transactions
    • Adding the Database Transactions
    • Manually Using Database Transactions
    • Tips for Interacting with Third-Party Services
    • Using Automatic or Manual Transactions
    • Dispatching Queued Jobs Inside Database Transactions
  7. Improving the Testability of Your Code
  8. Using Objects over Arrays
So, How Much Is It?

Money with wings emoji Pricing

Battle Ready Laravel

Consuming APIs in Laravel examples
$

39

Buy Now!

Instant access to the entire book. Start learning in minutes!

The complete blueprint for learning how to audit, test and improve your Laravel applications.

What's included:

  • PDF (Light Mode)

  • PDF (Dark Mode)

  • EPUB (for E-Readers)

  • Instant Access

Best Value Bundle!

Battle Ready Laravel + Consuming APIs in Laravel

Consuming APIs in Laravel examples

$78

$

59

Buy Now!

Both books for one great value price!

Instant access to my best-selling book Battle Ready Laravel and Consuming APIs in Laravel, the guide that shows you how to confidently integrate third-party APIs in your Laravel projects using maintainable, testable and extensible code..

What's included:

  • Both books

  • PDF (Light & Dark Mode)

  • EPUB (for E-Readers)

  • Instant Access

Waving emoji About the Author

Hey there! My name's Ash Allen!

I'm a Laravel web developer from the UK.

I've worked with many companies around the world to help build and improve Laravel applications that they can be proud of!

I wrote "The Clean Coder's Guide to Laravel" which has been downloaded more than 5k times, and I have an active blog where I write about Laravel and PHP. I've also had articles published on the Laravel News and Honeybadger blogs.

I have several PHP packages (such as Short URL and Laravel Exchange Rates) which have been installed over 350k times. I also love working on other open-source projects and have contributed to the Laravel framework.

What People Say About the Book and My Previous Work

Sparkles emoji Testimonials

Kev Choppin

@kevchoppin
Ashley is one of the most knowledgeable and active Laravel devs in the community. His contributions to the Laravel framework alone have added a lot of value and I personally can't wait to read his new book.

Jae Toole

@jaetooledev
What a read... Whether you're a junior developer or a senior developer, anyone that reads Battle Ready Laravel will learn something new .

Nicolai Baaring

@nicolaibaaring
Battle Ready Laravel is a great source for strengthening your application . As a lookup or read, it's a comprehensive guide to worry-free development .

Ash

@AshboDev
I had the pleasure of reading through Ash's Battle Ready Laravel eBook. As a Laravel Developer, one who considers himself to be intermediate to advanced, I have learnt so much more in this eBook than I've learnt by any other means. The explanations are easy to understand , the code samples are fluent and more importantly, it shows techniques and methods I never knew existed . An absolute asset to my arsenal, I would highly recommend to anyone who is yet to explore testing in Laravel, as well as those who are well versed in it. Cannot wait for his next one, absolutely well worth the price!

Ty Noryan

@TyNoryan
Ash has been responsible for several fantastic Laravel packages and blog posts. He has an innate ability to present complex concepts through clear and understandable examples . Make sure to follow him on Twitter and subscribe to his newsletter.

Stephen Rees-Carter

@valorin
It's clear Ash has poured years of experience into Battle Ready Laravel. It's full of great tips and recommendations that every Laravel developer really needs to know. My personal favourite is the auditing chapter, which is a topic I wish more developers would pay attention to! So if you're looking to improve your dev skills (and even if you're not) you really need to grab a copy!

Matt Kingshott

@mattkingshott
If you’re gearing up for a launch, or you are about to dive into the challenging world of code auditing, then be sure to have Battle Ready Laravel at your side. Following its clear, comprehensive, and well-written content will leave you feeling so much more confident about your apps .

Hamza Ikram

@h_ik04
This book is a great addition to the Laravel family. I've never seen any Laravel book as in-depth as Ash goes with Battle Ready laravel. Whatever your current developer level, if you are looking to improve your Laravel app , then this book is strongly recommendable.

Africa Gatsby

@he_is_unique
This is a complete guide that can help a middle level Laravel developer transition into a senior effectively.

Christian Olear

@chrolear
I'd definitely recommend your content. I'm reading a lot of it and find it really valuable .

Ganesh Ghalame

@ghalameganesh
Your contents is really good , your last blog on interfaces was really nice. I’m using your package short-url, it's configurable and helpful, I'm looking forward to your book.

Doeke Norg

@doekenorg
It's a shame this book is focused on Laravel, as the concepts and tips would benefit any developer using any framework ! After reading this, you won't be just battle-ready; you'll win!

JD Lien

@jdlien
Ash conveys copious experience in this book to show you what you need to know to make your Laravel applications robust, professional, and maintainable. After reading this book, I better understand many concepts that will make me a much more confident and capable Laravel developer .

Marc Hampson

@marc_hampson
Ash brings together a wealth of personal knowledge and experience for auditing and maintaining Laravel apps . As a seasoned developer, I wondered how much I’d learn. A lot! This should be required reading for anyone building or maintaining modern web apps.

Nick Wilkins

@whatisnickupto
The book has a plethora of great advice and snippets that have really helped me already not only in my current projects - where I can instantly implement some tips , but also for future ones where I can start from a stronger base. Highly recommend

Alex Wulf

@alexfwulf
I am looking forward to your latest book and I’m volunteering as proof reader.

Saif ur rehman Awan

@awannsaif
I find your content (blogs) very informative .

Anthony

@4DegreesWest
A battle plan that gives you the upper hand - a great reference to revisit time and time again .

❓ Frequently Asked Questions

Point emoji What format is the book available in?

The book is available to download as a PDF or as an EPUB. You'll get both of these versions when you purchase the book through this site.

Point emoji Where can I buy a printed copy?

You can buy a printed copy of Battle Ready Laravel from Amazon. You can either buy it from amazon.com using this link, or you can search for 'Battle Ready Laravel' on your region's Amazon site.

Point emoji Do you offer PPP or a student discount?

Yes! I do offer PPP (purchasing power parity) and a student discount. Drop me an email at mail@ashallendesign.co.uk and I'll provide you with a discount code that you can use.

Point emoji Can I get an invoice?

Of course! As soon as you purchase the book, you'll be sent an email with the invoice.

Point emoji Can I get in touch with you?

Sure! If you have any questions at all, you can get in touch with me at mail@ashallendesign.co.uk

Rocket emoji Powered by Ash Allen Design

Zap emoji Analytics by Fathom Analytics

Fire emoji Hosted using Digital Ocean

Get Your Free Chapter!

Enter your name and email below and you'll get sent a free chapter about:

Checkmark emoji Planning your auditing strategy
Checkmark emoji Improving your code quality using Larastan

🎉 EPUB Version Available!

Battle Ready Laravel is now available as an EPUB!

You can Battle Ready Laravel on your favourite e-reader.

If you buy the PDF version of the book through this site, you'll also get the EPUB version for FREE!

Buy PDF & EPUB!