The Future of Crash Catch - Converting the API to Laravel

Chris Board

Jul 11, 20214 min read

Introduction

For those of you who may not know, over this past year I have been building Crash Catch for my fellow indie hackers, hobbyist developers and startups to help them monitor and catch bugs and errors within their apps, software and Web APIs.

Currently the API for the Crash Catch website (that's both the landing page at https://crashcatch.com and the main app at https://app.crashcatch.com) are developed using vanilla PHP - in case you don't know what that means, its PHP as it comes, no development framework which nowadays is quite an old way of doing things, so this blog post is about the future of Crash Catch and converting this API to use the Laravel development framework.

Why Develop Using Vanilla PHP

Now you might be wondering, why did I write the API using vanilla PHP, why didn't I just use Laravel from the outset? Simple answer, I didn't know Laravel at the time when I started.

When attempting something new, its a good idea to develop in what you are comfortable working in to get the idea developed and out to users as soon as possible, improvements can be made later down the road.

Although Crash Catch hasn't caught on as much as I had hoped (I am useless when it comes to marketing) I am still persevering with and I'm not going to give in - I find it invaluable for my own projects so I'm hoping eventually I'll be able to market it a bit better and others will find it just as useful.

What is Laravel?

In case you don't know, Laravel is a web application framework making it easier for common tasks such as authentication, routing, session handling and cache.

This takes some of the complexity and burden a way from the developer and makes the development process easier, and the project itself more secure with robust authentication mechanism and built in CSRF protection and makes the project easier to maintain.

What to Expect

You may have noticed if you follow me on Twitter that Crash Catch has been a little quiet. This is because I've spent the past few weeks learning Laravel and converting an existing project being my status pages for Boardies IT Solutions at https://status.boardiesitsolutions.com.

This is going to be quite a big project as the API is quite complex and a relatively large project so its going to take a while - plus the database will need a slight redesign to match Laravel database standard - you can make it match the existing database but its somewhat more complex and some of the easy maintainability is lost, so in the long term it is best to redesign the database to match what Laravel expects.

Due to the nature of the database changes, this is going to have other knock on effects at needing to modify what I refer to as the engine - the engine being what holds the Crash Catch crash submission API and processes and stores the crash data.

Not 100% sure yet, but the engine may get more than a bit of a modification to work with the new database, as Laravel looks after the database model - not yet sure how this works with other clients accessing the database.

So you can imagine this will take a fair amount of time to complete, however the benefits will be worth it. It will make the API easier to main therefore improving update development time, plus will make the authentication more robust especially when I plan to build the Android/IOS app for Crash Catch, hopefully in the not too distant future.

Therefore due to this, Crash Catch will continue to run as normal, however, there most likely won't be further improvements to the service until this project is completed. But don't worry, if you spot a bug, I'll still be fixing bugs as and when they are found.

But don't worry, I'll work on it as quickly as I can and then I can continue to improve and add extra features to Crash Catch.

I'll continue to post updates on Twitter when possible but in the meantime if you have any questions or ideas about Crash Catch then please let me know either by messaging me on twitter or dropping me an email at [email protected] or leaving a comment down below.

Test Track

Are you a developer or involved in Quality Assurance Testing or User Acceptance Testing, you might be interested in Test Track

A simple and affordable test planning and management solution.