Presentation Abstract
How many possible ways are there to arrange a standard deck of cards? Enough that if you could scroll through a trillion a second, after a trillion trillion years you wouldn't have even put a dent in it. In this presentation, we'll take a deep dive into the technology behind everydeckof.cards, where you can browse all 80 unvigintillion unique orderings—if you can find the time.
We'll start with the math: an algorithm that creates a one-to-one mapping between an impossibly large number and a specific arrangement of 52 cards, letting us jump directly to any deck without generating the ones before it. From there, we'll look at what it takes to turn that algorithm into a responsive, seemingly endless feed: virtualizing an unfathomably large collection so we only render what's on screen, using Solid to keep those renders efficient, and moving the heavy math into a Web Worker so the UI never has to compete with computation.
Finally, we'll zoom out to the engineering decisions that keep the project maintainable: building the core domain from pure, testable functions, structuring the repository around clear boundaries, and using AI tooling to keep documentation from drifting away from the code. We'll finish with how the entire application can be deployed as a static bundle on Cloudflare's global CDN, making the whole application simple and inexpensive to host.
As always, the meeting is free.. Looking forward to seeing you!!
Gaelen