Posts

RAG Agents with LangChain and LangGraph
Self-RAG (Self-Reflective Retrieval-Augmented Generation) is a framework that combines the benefits of retrieval-augmented generation (RAG) with self-reflection, allowing large language models (LLMs) to adaptively retrieve passages on-demand and generate more accurate responses. Langgraph recently published a blog post on Self-RAG with their own implementation. I really like the idea of validating the retrieved information. In that past I have noticed that, while vector databases will return documents that usually match the input query string, some may contain irrelevant content. Having the ability to validate and correct this is a great feature for any RAG setup. ...

Adventures in Greenhaven
I recently published my first tabletop role-playing game (TTRPG) designed specifically for young hearts, Adventures in Greenhaven. This project matters to me because I want to make tabletop gaming accessible and enjoyable for kids. I’ve always been passionate about sharing the magic of D&D with others, but as my children grew older, I realized that traditional D&D wasn’t quite suitable for them yet. So, I decided to create a game that captures the essence of D&D, but with simpler rules, more accessible storytelling, and a focus on fun and adventure. ...

Game Dev - Unity
After spending years trying to build mini D&D games using JS, Elm, Elixir, etc… I decided to give a shot to Unity. Dungeon generator I decided to jump right away into Unity and build a procedural dungeon generator from scratch. As expected the result was not great (pretty ugly let’s be honest). It’s not that C# is difficult, but you have to learn a new tool (Unity) which comes with a lot of new concepts and options that if you don’t know makes your task more complex. ...

Encounters v0.3.0 (Alpha) - Dynamic lightning is coming
It’s been few weeks since my last update. I have been quite busy working on a lot of interesting stuff. Some related to this project, some a bit less. Here is a preview of the Dynamic lightning I have been working on. It’s not live for now since it needs a lot of small adjustments before being 100% usable.

From Kubernetes to Gitlab-ci in less than 10min
I have been playing a lot with Kubernetes lately, from creating a cluster from scratch on bare metal, setting up a ELK stack, Prometheus metrics to setting up a CI/CD using Gitlab CI. I found the last one so easy that I made a video for it. I have been using a DigitalOcean Kubernetes cluster for this video, it was super easy and I got $100 to play with it for 60 days. ...

Encounters v0.2.0 (Alpha)
Ok now it’s getting a bit more serious. We can now create, save and restore maps in the editor: This tool is available here: https://encounters.4sh.dev ...

Encounters v0.1.1 (Alpha)
I’m still playing with canvas and I plugged the dungeon generator I worked on a year ago. This is the result: This tool is available here: https://encounters.4sh.dev ...
Docker: Multi-stage & Caching
Multi-stage In the beginning When we first started to build docker images, long before the multi-stage syntax, our projects would look something like this: We would have a base docker image containing the dependencies shared by the development and the production image, then one file for each final image. The script build.sh shows that we first build the base image tagging it as base_image, then depending of the argument passed to the script we would build the final image. ...

D&D Toolbox
The context With the COVID-19 and the shelter in place, there is not much opportunities to play D&D face to face with friends. Some groups decided to go to platforms like Roll20 or Fantasy Ground. While I love those apps they are lacking something in my opinion: an integration with DnD Beyond. I personally have a LOT of digital content on DnD Beyond and the idea of buying it again on another platform is not something I am considering. ...

D&D Beyond DM Screen
Few months ago, I worked on a Chrome extension to make my life easier when DMing D&D using DnD Beyond characters. DM Screen Extension Screenshot D&D Beyond Campaign DM Screen The extension has a simple goal: providing the characters’s stats in a useful way and refreshing the data when the character’s sheets are updated. Without the extension With the extension When using the embedded version of the DM screen: When using the popup version: ...