Projects

2023

Learning Go
  1. Distributed Services with Go Workshop
  2. Elements of Programming Interviews in Go

2022

Bilberry Hugo Theme

Made the following contributions:

  1. Added support for Hugo modules.
  2. Implemented various new features, fixed bugs, reviewed pull requests, and updated documentation.

Technologies used: Hugo
See GitHub Repository

Campsite Booking API (3rd iteration)
  1. Re-wrote unit and integration tests with JUnit 5 in BDD style.
  2. Introduced var syntax for local variables.
  3. Upgraded to Java 17 LTS.
  4. Implemented Campsite domain class/table and corresponding service and repository classes; upgraded API’s contract to v2.
  5. Added the findForDateRange method without pessimistic read locking.
  6. Re-implemented the findForDateRangeWithPessimisticWriteLocking method, added integration tests for concurrent bookings create/update.
  7. Added TOC Generator GitHub Actions workflow.

Read this article for more details.

Technologies used: Java 17, Spring Boot 2, Maven 3
See GitHub repository

Learning Go

Exercises related to the Exercism’s Go track syllabus.

Company Website

Developed company website at https://www.projetsrios.com/.

Technologies used: Hugo Terrassa Theme, Git, Hugo, GitHub, Netlify
See GitHub Repository

CI/CD with GitHub Actions

Automated the following software development workflows:

  1. Workflow for uploading data to Algolia index for the Bilberry Sandbox/Netlify.
  2. Workflow for updating GitHub Pages when using the Bilberry theme as a Hugo module for the Bilberry Sandbox/GitHub Pages.

Technologies used: GitHub Actions

Bilberry Hugo Theme Test Website

Created the Bilberry Sandbox, which helps me develop, test, and maintain the Bilberry theme.

Read this article for more details.

Technologies used: Bilberry Hugo Theme, Git, Hugo, GitHub, Netlify
See GitHub Repository

2021

Bilberry Hugo Theme

Took the role of the official maintainer; made the following contributions:

  1. Automated data upload to Algolia index using JavaScript API client.
  2. Implemented support for custom audio files; co-authored the archive functionality; updated documentation.
  3. Reviewed pull requests.

Technologies used: Hugo
See GitHub Repository

Campsite Booking API (2nd iteration)

Read this article for more details.

Technologies used: Java 11, Spring Boot 2, Maven 3
See GitHub repository

CI/CD with GitHub Actions

Automated software development workflows for the following personal repositories:

  1. Docker Liferay Portal CE
  2. Campsite Booking API
  3. Vaadin Demo Bakery App
  4. Vaadin Demo Business App

Read this article for more details.

Technologies used: GitHub Actions

2020

Bilberry Hugo Theme

Made the following contributions:

  1. Implemented the series taxonomy and table of contents features.
  2. Automated data upload to Algolia index using Python API client.
  3. Fixed bugs.
  4. Updated documentation.

Technologies used: Hugo
See GitHub Repository

Personal Website

Developed personal website at https://kiroule.com

Read this series for more details.

Technologies used: Bilberry Hugo Theme, Git, Hugo, GitHub, Netlify
See GitHub Repository

2019

Multi-Variant Docker Images for Liferay Portal CE

Updated in 2020, 2021

Read this article for more details.

500K+ pulls
Technologies used: Docker, Debian, Alpine Linux
See Docker Hub Repository
See GitHub Repository

2018

Campsite Booking API

Technologies used: Java 11, Spring Boot 2, Maven 3
See GitHub repository

Coding Challenges from CodeWars, HackerRank, Codility

Technologies used: Java, Python
See GitHub repository

2016

MyBatis JPetStore (MongoDB)

Exercise to port MyBatis JPetStore from RDBMS/MyBatis to NoSQL/MongoDB and Spring Boot

Technologies used: Java 8, Lombok, Stripes, Spring Boot, Spring Data MongoDB, Maven 3
See GitHub repository

2015

MyBatis JPetStore (Vaadin)

Exercise to port MyBatis JPetStore to Vaadin 7|8 and Spring Boot

Technologies used: Java 11, Vaadin 8, Spring Boot 2, MyBatis 3, Maven 3
See GitHub repository

This project was mentioned in 2016 January’s edition of Vaadin’s Community Spotlight:

Vaadin Community Spotlight