Devember 2021: Day 0

My Devember 2021 oath.

TLDR; I do CI/CD this year


The Blood Oath

I, Luke Brown, will participate to the next Devember. My Devember will be to further my CI/CD knowledge by developing and deploying a bespoke To-Do app . I promise I will program for my Devember for at least an hour, every day of the next December. I will also write a daily public devlog and will make the produced code publicly available on the internet. No matter what, I will keep my promise.

The Deets

I'm going to be X-posting to here from my blog, along with providing the full source code provided here.

Repo Branch Status
devember2021-ui master pipeline status coverage report
devember2021-api master pipeline status coverage report

In the ultimate devember / homelab challenge I will undertake really learning CI/CD in earnest with GitLab. I wanted to make something useful while also not trying to overburden myself by learning too much material at once. I'm going to a frontend I'm familiar with but also something a bit new to me for the backend. My main focus will be to become more proficient at CI/CD though.

The Deliverable(s)

A self-hostable To-Do web app that does historical tracking, recurring scheduled tasks, and be mobile friendly.

The inspiration from an old project at one of my previous employers. Essentially, we cooked up this massive JQuery and bootstrap app that we used to check off dozens of daily tasks (100+), record who & when the task was checked off by, and depending on the day, month or holiday, would pull from a database of predefined sequences of tasks to be completed. This allowed us to keep in sync in a more sophisticated way than a paper checklist.

My goal is to have something that will keep track of all the stuff I need to do to be a functional adult. :sweat_smile:

The Stack

Frontend

Vue (v2) + Vuetify

Everyone probably knows me as a huge Vue shill. And, well... sticking to my guns here. Since I already know it pretty well I feel confident I will be able to smoothly build something.

Backend

Nestjs

I am new to the world of Nestjs but this batteries-included approach seems exactly what I'm looking for for fast and robust development. Here is a cool breakdown, Nestjs in 100 seconds:

https://www.youtube.com/watch?v=0M8AYU_hPas

The Docs

As I go through my project I shall be re-reading my software project management book from college.

O'Reilly --- Applied Software Project Management