About a year ago, I released BrickTracker, my selfhosted solution for tracking LEGO collections and missing pieces. Since then, it was featured as a Content Spotlight in the selfh.st newsletter (which was honestly a huge deal for me personally). Thanks to all the feedback and suggestions from this community, I’m excited to share version 1.3, which is a big overhaul!
What’s BrickTracker? For those who missed the original post: BrickTracker helps you manage your LEGO collection when you have multiple copies of sets, need to track missing/damaged pieces, and want everything stored locally.
Day 12 was the finale of Advent of Code 2025. The puzzle appeared to be about fitting oddly-shaped presents into regions under Christmas trees - a classic constraint satisfaction problem. But there was a twist.
Part 1: Can They Fit? Given various present shapes and regions under trees, determine how many regions can fit all their listed presents.
Example shapes:
1 2 3 4 Shape 0: Shape 4: Shape 5: ### ### ### ##.
Day 11 was about finding paths through a directed graph. Part 1 was straightforward DFS pathfinding. Part 2 looked like it needed the same approach, but brute force was too slow - the solution required combinatorics and memoization.
Part 1: Count All Paths Given a graph of devices with directed connections, count all possible paths from you to out.
Example:
1 2 3 4 5 6 7 you: bbb ccc bbb: ddd eee ccc: ddd eee fff ddd: ggg eee: out fff: out ggg: out Paths: you→bbb→ddd→ggg→out, you→bbb→eee→out, you→ccc→ddd→ggg→out, you→ccc→eee→out, you→ccc→fff→out
Day 10 was a mathematical disguise wrapped in a factory automation problem. What looked like pathfinding turned out to be linear algebra - specifically, systems of equations that need Gaussian elimination to solve efficiently. At least, that’s what I thought until Part 2 humbled me.
The Problem Factory machines have indicator lights and buttons. Each button toggles specific lights. Find the minimum button presses to configure all machines.
Example input: [.
Day 9 was about finding the largest rectangle between red tiles on a theater floor. Part 1 was straightforward geometry. Part 2 required checking if rectangles fit inside a polygon - which is where I reached for an external library.
Part 1: Largest Rectangle Between Any Two Points Given coordinates of red tiles, find the largest rectangle using any two red tiles as opposite corners.
This is pure geometry: for every pair of points, calculate the rectangle area and track the maximum.
Day 8 was brutal. Not because the algorithm is complex - but because I kept making implementation mistakes that cost hours of debugging.
The Problem Given 3D coordinates of junction boxes, connect them with light strings. Connect the closest pairs first, forming circuits. After making a certain number of connections, find the sizes of the three largest circuits.
This is essentially asking: perform a greedy connection strategy (always connect the two closest unconnected boxes) and track which connected components (circuits) form.