Case study
DigiLab
Production tournament tracking and meta analysis platform for the global Digimon TCG community.
5,000+
tournaments logged in 6 months
9,000+
players tracked
1,000
daily active users
Problem
The Digimon TCG is a competitive trading-card game with a real in-person tournament scene all over the world (players call themselves tamers). The community is global and growing, but its competitive data was going uncollected. Tournament results lived in Discord screenshots and one-off Twitter posts. Player ratings were calculated by hand by a few dedicated organizers. Understanding the meta (which decks and strategies are actually winning) meant scraping ten different community sources yourself. Store information was tribal knowledge.
This is a data problem before it's a website problem. A whole competitive scene was generating results every weekend, and none of it accumulated into anything you could trust. There was no source of truth for tournament outcomes, no reliable player ratings, no way to see how the meta was shifting region to region. The raw data existed. It was just fragmented, unverified, and thrown away as fast as it was made.
I started DigiLab to fix this for North Texas tournaments specifically, then watched the same gap show up everywhere. What began as "let me build a dashboard for our local scene" became an effort to turn a scattered community into a working data operation. And the constraints are real: players depend on the ratings, stores depend on the reach, organizers depend on the numbers being right. Data accuracy isn't abstract here. Someone notices the moment it's wrong.
Approach
I started small to make sure the data was worth collecting. A Shiny prototype tracked North Texas events, validated that people wanted this, and seeded the data model before I committed to anything bigger. Two things carried the project from there: the community that feeds it, and the analysis that comes back out.
The community is the data engine. DigiLab runs on a 450+ member Discord and a network of volunteer tournament organizers who enter their results. That only works if contributing is nearly frictionless, so a lot of the real design work went into the unglamorous path: how an organizer submits a bracket, how a bad entry gets flagged, how a correction gets made without a support ticket. Community-sourced data quality is a direct function of how easy you make contributing. Every extra form field or login gate is a tax that shows up later as missing data.
The insights are the point. Raw results only matter once they answer the questions players actually ask, so the platform turns the logged tournaments into:
- Regional meta analysis with archetype breakdowns, color distribution, and format trends, so a player prepping for an event can see what they'll actually face instead of guessing from vibes.
- Scene-aware leaderboards scoped to a geography (Dallas, Texas, US, global), so a player sees the ratings relevant to their travel radius, not a single global list that ignores where they play.
- An MDX blog with meta deep-dives, announcements, and community spotlights, where the underlying data becomes a written argument about where the format is heading.
That analysis is what changed how the scene talks about tournament data. People prep off the meta breakdowns and cite the leaderboards. The numbers became part of the conversation.
How it's built (the part that keeps the above trustworthy and fast): the current platform runs at digilab.cards on Astro (SSR with Preact islands) and Neon Postgres, hosted on Vercel. Every tamer, store, deck, and tournament is a server-rendered page with its own URL and structured data, so the whole catalog is indexable and shareable. Highcharts and Mapbox handle the visualizations. A public token-authenticated API exposes the data so external community tools can build on it, and several already do. An admin subdomain gives organizers CRUD access to enter results, with form-based error reporting that fires Discord webhooks straight to me. better-auth handles roles across players, store operators, organizers, and admins.
I built most of it in evenings and weekends using AI tooling, Claude Code in particular. A multi-entity data platform at this scale would have been a much longer effort pre-AI. That's a repeatable lesson I now apply to my CPAL work.
A community will hand you good data if you make contributing easy and hand back something worth having. The analysis is the deal.
Outcome
In its first six months live, DigiLab has logged 5,000+ tournaments across 280 cities worldwide and now tracks 9,000+ players across the major Digimon TCG formats, sourced from 450+ Discord members who enter results, flag bad data, and shape the roadmap. The public API now powers external community tools built by people I've never met. The data outgrew the site.
The part I care about most is that the analysis gets used. Around 1,000 people use DigiLab every day, prepping for events off the regional meta breakdowns and citing the scene-aware leaderboards. The numbers changed how the community reasons about tournament data, from a pile of screenshots to a shared factbase people actually make decisions against.
For where I'm headed, DigiLab is the cleanest evidence I have that I can run a data operation end to end: stand up the collection pipeline, keep a volunteer community contributing clean data, and turn that data into analysis people act on. That's the same loop I run at CPAL, on a domain I happen to love.
Reflection
A few things I'd carry into any similar project:
- Community-driven data has unique constraints. Your contributors are volunteers, and they will not tolerate friction. Every form field, every report flow, every login gate is a tax that shows up as missing or wrong data later. You don't fix community data quality with validation rules alone. You fix it with contribution design.
- Turning data into insight is the whole point. Collecting 5,000 tournaments is worth nothing until it answers "what will I face at my next event." The leaderboards and meta analysis are why anyone contributes in the first place. Collection and insight are one loop, not two projects.
- Give the data back and it grows on its own. The public API and indexable entity pages are why DigiLab is used by tools and people well outside my reach. Open the data and the community extends it for you.
- Side projects with real users are the best portfolio. Coursework and demos let you skip the unglamorous parts. Real users force data integrity, uptime, and honest support, and they tell you the moment a number is wrong. That's also where AI tooling changed the math: a real data platform in evenings and weekends is possible now if you're thoughtful about scope.