A GUI for ChartMuseum
ChartMuseum is an open-source Helm chart repository server which can be used as a self-hosted alternative to Artifact Hub. Although it originally consists of only a server-side application to be interacted with via a REST API, its official UI, ChartMuseumUI, can be deployed to interact with ChartMuseum graphically. Unfortunately, ChartMuseumUI seems to be broken and the GitHub repository has been inactive for years now. Thus, I decided to make my own GUI for ChartMuseum.
Kubernetes and Docker equivalence
Kubernetes is a container orchestration system. As such, it features functions that are similar to that of Docker. If a container can be run with the Docker CLI, it can also be run equivalently using Kubernetes. This articles highlights such equivalence by presenting how to deploy a PostgreSQL instance using both technologies.
Dissecting a Kubernetes manifest
Kubernetes manifests can seem quite daunting at first, but it is important to understand that their apparent complexity is simply a result of the large number of customization options. In the end, manifests are used to deploy resources that interact with each other, which, among others, lead to the correct operations of containerized applications. Consequently, resources specified in a manifest must be configured accordingly. This article aims at explaining how manifests are structured to do so.
Vue3 Options vs Composition API
This article presents code snippets illustrating how to transition from the Options API to the Composition API in Vue 3.
Rebuilding the Odroid XU4 server
In a previous article I showcased a simple home server built around an Odroid XU4, which I dismantled soon after migrating to a full-size desktop computer. However, having the Odroid laying around unused was a bit of a waste and I recently started needing a secondary file server to store data backups. So I decided to build a new server with the single board computer
Updating Ingresses to networking.k8s.io/v1
Using Ingress with the extensions/v1beta1 API has been deprecated in Kubernetes 1.14 and will be removed in 1.22. This article presents how to update an existing manifest to the new API, networking.k8s.io/v1.
A guide to setup a TypeScript project from scratch
Rebuilding the GUI of this CMS with Nuxt 3
The GUI of this CMS has gone through multiple versions and revisions. It started as a Vue.js SPA but was then turned into a Nuxt SSR application to improve SEO. Recently, Nuxt version 3 was released so it was again time for a refresh.
A simple comparison of Svelte and Vue
Mongoose query documents with matching array element
As a NoSQL database, MongoDB can store arrays as fields of a document. This article presents how to query such documents by filtering those with arrays that contain a specific value.