Intro
Welcome to the 5th issue of Now Self Hosted, where I take a look at a selection of apps which can be self hosted. In this issue I will be exploring: It Tools, Hugo, Gitea & Vikunja.
It Tools
First let’s take a look at It Tools, which is a fairly new app and something I have started hosting recently. It describes itself as:
Useful tools for developer and people working in IT
I found it whilst looking for a alternative for all the various converter sites I found myself visiting. Most of the features it provides are simple and you can probably download some CLI tool, however sometimes it is nice just to have them in one place on a website you can access from anything that has a web browser, it also features a search bar and favorites list.
But what tools does it offer? Well quite a few, a new one was just added at the time of writing. Here’s a short list of some of the ones I use:
- base64 encode & decode
- color converter
- unit converter (has many such as temperature)
- QR Code generator
- Subnet calculator
- Chmod calculator
- Chrontab generator
Served as a simple static website makes hosting easy, it even includes a Docker image which just provides a pre-configured nginx container with the included site data. Since everything is processed at the client side it should be safe enough to use for the cryptography functions.
I would consider this a useful tool to have, even if you are not a developer. My family even finds some use in it for the unit converters.
Hugo
This next program is a tool which allows you to generate a static site from markdown files, allowing you to build a blog or documentation side. This is actually what my site is built using. I used to use something called Jekyll however it became slow when building sites, Hugo seems to be very fast and is a lot easier to customise in my opinion and can be run from a single binary with no extra dependences.
I have even started building an Open Source theme which you can use for your site, check it out here: Mysti Guides Theme. Apart from my theme there are lots you can choose from or you can build your own.
Recently I have considered moving my personal documentation which is hosted on Wiki.JS to Hugo. That way I would be able to spin up an online VS Code editor (shown in #4) for writing and have an automation to automatically build the new site. This should greatly increase the speed, since I still have issues with Wiki.JS’s performance when saving (it’s hosted on a very fast mini-pc with NVME SSDs) talked about in issue #1.
Gitea
This next one may be something you have already heard of. It is a self-hosted and Open Source alternative to GitHub or GitLab. It basically is a nice web interface and management tool for your Git repositories. I have a private instance for a complete replication of my GitHub profile.
Using your own instance provides several benefits:
- You own the data and could move easily (just copy the repositories folder, they are just stored as bare repositories).
- You can host private data without worrying about a service provider looking at it.
- No storage restrictions (it also supports Git LFS)
An exciting new feature is it’s own native CI/CD system called “Gitea Actions”. Although I have not had time to test it out.
Hosting is easy as you can deploy it from a Docker image. They provide both a rooted version and rootless one. I personally use the rootless one, although they both work the same.
Vikunja
Lastly something I have hosted for a while. Vikunja, this service describes itself as:
The open-source, self-hostable to-do app. Organize everything, on all platforms.
First off it has many team features, however I will not be commenting on these as I do not use them. This program is very well featured, it almost has too many organizational features!
At it’s core you can create a list and in this list you can add tasks. The tasks can have many different attributes for example labels, a description, priorities, dates and many more. Once you have a list of tasks you can view and manage them in different views. It has a general list, which is what I use the most, you can also view your tasks as a Gantt chart, table or Kanban.
Vikunja has what I think is unique, it’s a way you can add tasks quickly. They call it “Quick Add Magic”. As an example if I want to create a task which is called “fix no indication on deletion” and I want several labels; to indicate what it is relating to for example [“bug”, “frontend”]. I can type this into the new task box: fix no indication on deletion *bug *frontend
. Pretty cool, not once did I have to move my hands from the keyboard; the only thing missing is vim-motions.
Let’s talk some more about labels, you can assign colors to them and you will see them from the different views; making it easier to see what is going on. You can of course filter and search from them.
As you can see from the screenshot I mainly use this app for managing current tasks for my apps I develop. I also use Vikunja for allowing me to plan when certain changes are implemented on my servers.
I still think this app is a bit overkill for my use, I may explore other options on this blog at a later date, so stay tuned!
Conclusion
Now we are at the end of the post, I have really enjoyed using this week’s selection of software and will cover Hugo further in the future. Don’t forget to post your suggestions on the community areas linked below. Thanks for reading.
This post was not endorsed or sponsored by any of the mentioned parties. My views are my own.