juststeveking.uk

Lead Software Engineer at Geomiq .

Working with Data in your API Integrations

Working with third party APIs can be frustrating, we get plain old array - and we send data as arrays too. What if I told you it didn’t have to be this way?

Using Route Registrars in your Laravel application

Recently I came across a unique approach to loading routes into Laravel applications, and I wanted to share this amazing idea with you.

Running PHPStan on max with Laravel

As developers, the chance of you having a personal website is pretty high. After all, it is what we do - and most likely, you have rebuilt this countless times.

Eloquent Attribute Casting

Eloquent Castable attributes are one of the more powerful features of Laravel, some people use them religiously while others tend to shy away from them.

Laravel Pint

The long awaited hype train is finally over, Laravels latest open source CLI app has been released and we got our hands on it to tell you all about it.

Running PHPStan on max with Laravel

We have all needed to add some sort of search to our applications before, this tutorial will walk you through how you can use Laravel Scout and Meilisearch.

Running PHPStan on max with Laravel

Over the last few years static analysis in PHP, and more specifically Laravel, has become more and more popular. Follow this tutorial and start using it today

API Integrations using Saloon in Laravel

We have all been there, we want to integrate with a 3rd party API in Laravel and we ask ourselves "How should I do this?", is Saloon the right choice for you?

Logging external HTTP Requests with Laravel Telescope

The biggest issue with working with third-party APIs is that we have very little visibility. We integrate them into our code base and test them.

Laravel subdomains in Docker

There are many ways you can add Docker to your Laravel application, but how do you add docker to your Laravel application when you need sub domain support?

Sauber PHP

I have used a lot of different frameworks in my career, from Zend(Laminas) to Yii, Cake to Codeignitor, SlimPHP to Laravel and more. They all have their own way of doing things, and their own selling points and benefits. Some are strict on their PSR (PHP Standards Recommendation) implementation, while others are a little looser. I have also always wanted to dabble with creating my own micro-framework, one that I can use for small APIs that just need something fast thrown together.

Building a CLI application in 2022

I have been building CLI apps for a long time, from simple bash/perl scripts back when I was a System Admin - and now using things like PHP Go or Rust. Let's walk through options for building CLI apps in 2022

Laravel Command Bus

In Laravel 5.1 the Command Bus was replaced with Dispatchable Jobs, we can still use them but let us also look at how to add a Command Bus.

Adapter Pattern

Over the years I have built a lot of SDKs to work with 3rd party APIs. Each time I require the same components, so I decided to create a way to bootstrap this process while still allowing flexibility

Testing API responses in pestPHP

I get asked about API response testing a lot, how should you do it, and where to start. I have a general rule when it comes to testing APIs, and that rule is: "test your code, and your code only". What do I mean by this? Let me explain.

Tappable Query Scopes in Laravel

I recently saw an awesome tweet while browsing twitter which introduced this idea of tappable query scopes, and wanted to share it and dig into it a little more.

Laravel DDD - Routing within our Domain

In a normal Laravel application we store all of our routes within web.php or api.php typically, however how does this work with our Domain Driven Design approach? Do we create a routes/{domain}.php file, or do we want to put this somewhere else?

Laravel DDD - Querying Records in our Domain

In the last instalment we spoke about using a simplified version of the CQRS pattern to create commands. This time we are going to talk about the other side to this and talk about queries.

Laravel DDD - Using Data Objects; Domain Commands

In our last instalment we spoke about how we can use data objects and data object factories to escape what I call “array hell”, a place where we have no idea what is in something passed to a method and there is no context or strictness about them. Now that we know how we are going to create these let’s look at a way we can use them!

Laravel DDD - Starting our Domain Code; Data Objects and Factories

This article is taking that next step, creating our domain code. We will being this part of the journey by creating data objects and data object factories. But before that, let's talk about what these are, and why we would use them.

Laravel DDD - Getting started with DDD in Laravel

In a typical Laravel application we are very used to doing things in a certain way, by the book as they say. However there comes a point in the applications lifetime that it is going to be easier to start looking to split this code into Domains so that we can logically group our code.

Quick Look into Laravel Feature Flags

Lets have a quick look into my latest package Laravel Feature Flags.

Introducing - Laravel Transporter

Introducing Laravel Transporter, an object oriented way to send API requests in Laravel.

Working with third party services in Laravel

There are many ways to work with 3rd party services in Laravel, here is how I do it. I will walk through setting up a service to connect to the PingPing service

Adventures in PHP - PHP SDK Builder

Over the years I have built a lot of SDKs to work with 3rd party APIs. Each time I require the same components, so I decided to create a way to bootstrap this process while still allowing flexibility

Adventures in PHP - PHP URI Builder

In PHP you can easily build a URL by concatenating strings, and iterate that process nicely. However, I hate this approach. It doesn't feel true to OOP, and it definitely isn't testable

PHP Online - The Story So Far

I have been working on community projects now for the past 3-4 years, and in that time I have noticed something. PHP Online is my answer to what I think the community needs.

Building a REST API in GoLang - Part 1

I have been building APIs for production environments for many years now, predominently in PHP. The last 3 years however, I have been hard at work getting to grips with GoLang - so I thought I would change the pace and share a post on GoLang

My First Go Module - go api problem

Recently I have been playing with GoLang quite a lot, so I decided to try my hand at publishing my first Go Module to handle errors nicely in an API.

Embracing The Tall Stack with Event Sourcing, an adventure into the unknown

TALL stack is growing in popularity in the Laravel community, and rightly so. The way in which you can write beautiful code split into reactive components without ever having to leave PHP is a no brainer. Recently the TALL stack preset was released, which on its own is fantastic - but I wanted to take it one step further.

Embracing PSRs to build an interoperable Http Client

Recently I have been scratching my head over PSR-18. As a new PSR there isn't a lot of information around it, but I saw that as a challenge. I decided to accept this challenge and build a compliant HTTP client to embrace the future of interoperability.

An adventure with Graph Databases

Recently I have been super interested in graph databases, most specifically neo4j. However, there was no official packages for PHP that were still active. I decided to change that.

ParameterBag - My latest open source package

Introducing my latest PHP Package: ParamterBag - A flexible parameter bag in place of standard arrays on PHP classes.

Slim4 - A lightweight breath of fresh air

As a PHP developer I use Laravel quite heavily, but I have been a long time user of SlimPHP. The latest version of Slim has inspired me to use it more often.

New Blog

New year new blog, concentrating on my personal blog.