A GUI for ChartMuseum

A GUI for ChartMuseum thumbnail
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 and Docker equivalence thumbnail
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

Dissecting a Kubernetes manifest thumbnail
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

Rebuilding the Odroid XU4 server thumbnail
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
CADProjects3D printing

Updating Ingresses to

Updating Ingresses to thumbnail
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,

TypeScript setup

TypeScript setup thumbnail
A guide to setup a TypeScript project from scratch

Rebuilding the GUI of this CMS with Nuxt 3

Rebuilding the GUI of this CMS with Nuxt 3 thumbnail
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

A simple comparison of Svelte and Vue thumbnail
Since its introduction in 2019, Svelte has quickly become one of the most loved JavaScript framework overtaking Vue.js in the State of JS ranking 2021 survey. This article presents a simple comparison of Vue.js and Svelte as an attempt to explain why.

Mongoose query documents with matching array element

Mongoose query documents with matching array element thumbnail
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.