This is some of the code I have written. Feel free to take a look, report any bug, ask for a new feature or send a pull request.


I wrote Parsinator, a library to extract relevant data from text-based PDFs and plain text files. I used Parsinator to connect 4 legacy client softwares to a documents API by parsing PDFs and plain text files into input XML files. You could read the motivation behind Parsinator and how I designed it in my post: Parsinator, a tale of a pdf parser.

canro91/parsinator - GitHub


I wrote BaseXml to manipulate and validate XML files. I used BaseXml to add, read, update and validate nodes and attributes from standard XML documents on an electronic invoicing system. I used BaseXml to avoid serializing complex XML files.

canro91/basexml - GitHub


I wrote Kiukie to roll queues from database tables and ASP.NET Core Hosted Services. I used Kiukie to send hotel and property events to a third-party travel agency API on a reservation management system.

canro91/Kiukie - GitHub

I improved the response time of the room search functionality of a booking page by a factor of ~1.5X. I removed N+1 problems and nested loops, and added a caching layer. From this task, I learned to always measure before rushing to optimize anything.

For all the findings and lessons I learned, you could read The Slow Room Search. Also, you could read how I implemented that caching layer on my tutorial how to add a caching layer with ASP.NET Core.

Other projects

From time to time, I contribute to OSS by opening issues and sending pull requests to the libraries and projects I use. I have contributed to DateTimeExtensions adding holidays for my country, for example.

To see other coding and learning projects, you can take a look at my GitHub profile.