The Journey of creating my own Umbraco packages:
The start

The Journey of creating my own Umbraco packages: The start

Today is a special day for me. This is the first day that I'll give blogging a go. I did write some reviews about board games in the past, but I've never written anything else like this on the interwebs. I always wanted to get started and blog about some C# specific stuff so that the information could help other people, but I never really felt like I had anything special to talk about.

Even today, I don't think this topic is super exciting but I think it'll help me with the development of the packages and I am sure there will be people that find this useful. And who knows, maybe I'll also find some other topics to blog about!

The package

So, let's get started! Today, I'll talk a bit about the package that I am currently developing. It's a package that I've been working on for some time this year. I mostly work on it in my free time, so progress is a bit slow sometimes. Also, I'm mostly a backend developer so anything related to HTML, CSS is just a nightmare for me. Luckily, Umbraco already has components for most of the things that I need!

The package is an SEO toolkit. Within the company that I work at, we keep on reimplementing the same logic for SEO for every client. And that is such a shame as it always takes away valuable time that you could spend somewhere else. Also, having the same solution just makes getting familiar with the system a lot easier instead of having to figure out what sort of solution has been used this time.

uSeoToolkit!

With that in mind, I started a package called uSeoToolkit where I wanted to make an open-source solution for everyone. At the time, I had one big package for every feature that I wanted. As time went on, I started to move everything to separate packages. So there would be a core that all packages implement and then each package can live on its own.

image.png

But then also the move to v9 started. Like I didn't have enough to do already... At first, I wanted to make a version for v8 and one for v9 but in the end, I started moving everything over to v9. I don't really see existing solutions to use the package a lot (it can still happen of course) as they probably have a custom solution already. So v9 it is!

Umbraco v9

With Umbraco v9 there were a few things to change and there was also a lot to learn as it was one of my first times using .Net Core. But I was able to move most of the code to the v9 version, so I am very happy about that.

Site audits

And the functionality that is currently on the v9 version is Site Audits. Site Audits can be used to check your website for SEO issues like title tag missing, description tag missing, and much more.

TwitterDemo.gif

I really like these kinds of audits as they can quickly give you an overview of simple, but meaningful changes to your website. Especially as this is something that the content editors themselves can do to validate their content. For now, I want to make it as easy as possible, create a v1 version of it and then revisit it, later on, to extend it with even more functionalities.

The future

In the future, there is a lot more functionality that I want to add to the package, but I also know that I should probably get to a v1 so that I can also start gathering some feedback. The things that I am planning for a v1 release are:

  • Configurable SEO fields
  • Sitemaps
  • Robots.txt
  • Head tags like GTM

That should hopefully make a nice start for the package and something that can be extended later on.

My plans for this blog series are quite easy. Try to blog about it once every week. This week was mostly me just going through the project and just trying to get used to blogging. In the weeks to come, I hope to also be able to share some code snippets and tell more about the choices that I make for the package. Also, obstacles within Umbraco would be great to highlight in upcoming blogs, so that someone else could see them coming when they want to start developing their own packages.

And I notice that I am just cannot stop talking about all the stuff. So I'll end it here and hopefully see you next week!