Before I go out for a meal I always check the hygiene rating of the venue on the Food Standards Agency (FSA) website. (Yes, I am one of those people.) So when I found out the FSA have a series of API's I decided to put something together that would utilise this data. I've been wanting to do something that integrated some sort of mapping functionality for a while and this seemed like an ideal opportunity.

The site lets you pick a local authority or a geographical region to search. You can then further filter the results based on business type and hygiene rating and then it plots the result on an interactive map. Eventually I'd like to put some further functionality into the site that would enable you to enter a postcode and a search radius to narrow down the results a bit more.

To keep the content up to date there's a scheduled task that runs every night. It pulls down all the updates from the FSA Open Data feed and refreshes a local SQLServer database.

Technologies used:
C#, .Net Core 3.1, EF Core, SQLServer, Async, MVC6, HTML5, CSS3, Bootstrap, Javascript, JQuery, OpenLayers, Serilog.

Launch .Net Core 3.1 Site

I'm currently experimenting with Blazor and using this site as my Guinea pig. I do have a Blazor version of the site hosted in a sub-domain. It's still very much 'under development' but is in a state where it's usable. Hopefully I'll be refreshing this new version on a regular basis as I fix problems and add new functionality. I haven't decided whether to eventually replace my .Net Core version with this Blazor version yet.

Launch Blazor Site

Stephen Lockett v2

I was getting a little bored with my own website so I decided to spruce it up a bit. It's another .Net Core site although there's not really much going on behind the scenes.

The only bits of code are to serve some of the content (Certs information and likes/dislikes etc) which is stored in a couple of JSON files, and the 'Skills' section. All of the coordinates for all the chart elements are calculated server side so the view is pretty simple with just a couple of loops to draw the elements. This way I can easily add new skills without the need to alter the view.

Technologies used:
C#, .Net Core 3.1, MVC6, HTML5, CSS3, Bootstrap, Javascript, JQuery.

Philippa Lockett's Generations v4

I'm going through some of my old websites and completely re-writing them in .Net Core. I've also given the visuals a bit of a refresh with Bootstrap 4 and I've tried to improve the functionality slightly over the previous version. v4 uses the same database as v3 but everything else is new.

Technologies used:
C#, .Net Core 3.1, MVC6, HTML5, CSS3, JQuery, Bootstrap 4, Javascript, EF Core, SQLServer, Async.

Launch Site

Movie Database v2

I've been playing around with .net core recently and I like it a great deal. So, I've decided to re-write one of my existing .net framework web sites from the ground up in .Net Core 2. I've chosen my movie database website to re-write as it's quite a decent sized site with a lot going on and should be provide me with a good project to get my teeth into.

Everything is completely new except for the database.

I did set up a free Azure account in order to host this site but it didn't really suit my needs. It seemed like a good opportunity to host my site and at the same time learn a bit about Azure. Unfortunately I wasn't too impressed with the offering as after an initial 30 day period the 'free' account converts to PAYG so I stopped using it.

Technologies used:
C#, .Net Core 2, Razor Pages, EF Core, Bootstrap 4, CSS3, HTML5, JSON, Ajax, Javascript, Async.

Launch Site


Reydeeoh is an internet radio directory. It allows you to search for internet radio stations by category (Jazz, Easy Listening, Rock etc.) or by geographical location and then allows you to stream the station through the website.

Originally I was getting all of the station data from a third party api which was convenient but the api wasn't that reliable and the quality of the data wasn't that great. The third party then decided to pull their api without notice which left the site unusable.

I have now acquired a different source for my station data which meant I had to re-write a lot of the code to cater for the new data source and format but at least the site is now back up and running.

Although the data quality is much better than before, data integrity is still proving to be a challenge. Stations are shutting down and moving their streams all the time so it's currently impossible to stop broken streams appearing in the feed.

Instead of adding additional functionality to this site to fix some of the issues it seems like an ideal candidate to be re-written in Blazor, so I've added this project into the queue of things I want to do. The SPA functionality that Blazor offers will be more suited to this website and I can address some of the issues I've uncovered since developing the original site. I'll be looking to clean up the database by removing any dead streams and introduce an automatic way of removing dead streams from the feed as and when they are detected. Hopefully I can also obtain a data source for some new streams to refresh the content.

Technologies used:
C#, MVC5, HTML5, CSS3, Bootstrap 3, JQuery, JSON, Ajax, Autofac, SQLServer, Javascript, Fully Asynchronous.

This has now been replaced by a Blazor version. More info here.

Launch Blazor Site

Music Database

I have a large(ish) collection of cd's and vinyl records so I decided to follow up my movie collection project with a site to catalogue my music collection using the Discogs api. I've only managed to catalogue a fraction of my collection so far but I'll keep adding to it as and when I get the time.

Technologies used:
C#, MVC5, HTML5, CSS3, Bootstrap 4, JQuery, JSON, SQLServer.

Launch Site