TCG Marquee

Blog

How TCG Marquee is being built: the ideas, the tradeoffs, and the mistakes, written up as they happen. RSS feed

Why I'm writing about building TCG Marquee

This blog covers how TCG Marquee is built, one change at a time, from the first idea to today. Here's why, and what to expect from it.

websiteblog

Watching the board without a cable

Firmware 0.2.8 adds a live log: the board shows what it's doing on a web page on your home network, so testing no longer needs a USB cable.

boardfirmwaretesting

Two small fixes: stubborn photos and password pop-ups

A replaced photo kept coming back, and a search box kept offering to fill in a password. Both had simple causes, and both are fixed.

websiteweb appfixes

Group by set, fold binders, and a phone layout

Group your collection by binder, set, or game, fold groups away, sort by real card number, and use a layout built for phones.

web appcollectionsets

Changing many cards at once, for shows and binders

Select cards with checkboxes, or a whole binder at once, and put them on the wall, take them off, or mark them for sale in a single step.

web appcollectionshow mode

Finding cards in a big collection

The collection page got tabs, a search box, filters, sortable columns, and paging, so a collection of a thousand cards is as easy to use as one of ten.

web appcollection

A tidier admin panel with tabs and safer saves

The admin page was one long scroll. It now has tabs, a Save button on every settings tab, and a warning before changing a paying customer's plan.

businessadmin

About, contact, and cleaner pages for search

A second site audit led to an about page, a contact form, clearer titles and descriptions, and links between pages so none of them stand alone.

websiteseo

Dimming at night, in your own time zone

Each account now has a time zone, and the board dims at night by its own clock, at your local time, even offline and across daylight saving changes.

boardfirmwaredimming

Rollback, and the bug that put it to the test

New firmware now runs on probation and the board goes back to the old version if it keeps crashing. The first test found a real bug, which is now fixed.

boardfirmwareupdates

From 90 seconds to 7: faster page downloads

Loading the first 40 pages took 90 seconds. One request per batch, and keeping Wi-Fi awake, cut it to 7.4 seconds, installed as the first wireless update.

boardfirmwareperformance

Wi-Fi setup from a phone, and big collections

Firmware 0.2: set up Wi-Fi from your phone, collections of any size stream in batches, and new firmware installs over the air after a fingerprint check.

boardfirmwarewi-fi

The board arrives: the first firmware

The MatrixPortal S3 arrived before the panel. The first firmware joins Wi-Fi, pairs with an account, and downloads the wall, all shown on a computer.

boardfirmware

Getting found: two rounds of search fixes

A first search check and a professional site audit led to clearer pages: prices anyone can read, a founder section, a changelog, and a support page.

websiteseo

A demo reel of cards that don't exist

For screenshots and demos, TCG Marquee has a demo reel: sixteen invented cards from invented sets, with made-up prices and art drawn by the server.

web appdemoapple tv

Getting the Apple TV app into TestFlight

The path from Xcode to TestFlight: App Store Connect, a required Xcode update, app icons, and an upload button that only worked outside full screen.

apple tvapp store

An Apple TV app you pair with a short code

TCG Marquee on Apple TV: open the app, scan the QR code or type the short code at tcgmarquee.com/link, and the TV becomes your price wall.

apple tvpairing

A logo that looks right on an LED wall

TCG Marquee got a logo built for its own screens: a square mark with no small print, so it reads clearly on an LED panel and in screen mode.

the ideabrand

Six things to fix before anyone pays

A review of what real customers would hit first: billing gaps, Terms at signup, CSV import and export, price alert emails, and device limits.

businessweb appbilling

Fixing a trend line that pointed the wrong way

The collection chart once said up while the value said down. It now tracks price movement only, over the same week as the number beside it.

web appchartsprices

A security review before letting anyone in

Before inviting testers, I reviewed the app's security and fixed what turned up, from how pages load images to how sign-in attempts are limited.

businesssecurity

Setting up billing with Stripe

Subscriptions now run through Stripe: monthly or yearly plans, checkout on the site, a billing portal for changes, and webhooks that keep plans in sync.

businessbillingstripe

Email that works: invites, resets, and an inbox

With Postmark, TCG Marquee sends invites, password resets, and welcome emails, and mail sent to the domain lands in an inbox on the admin page.

businessemail

Accounts, sign-in, and an invite-only beta

TCG Marquee got real accounts, an admin page, and invite-only signups, so beta testers can use the top plan for free while everything gets tested.

businessaccountsbeta

Naming it: from CardWall to TCG Marquee

The project started as CardWall. The domain cost $10,000, TCG Ticker was taken, and TCG Marquee was available. Here's how the name was chosen.

the ideaname

Shop logos, QR codes, and a smoother ticker

Card shops can now show their own logo and a QR code to their website or social media, every fifteen pages. The ticker also stopped stuttering.

web appshopsshow mode

Show mode: price boards for the vendor table

Show mode turns TCG Marquee into a sign for your table at a card show: cards you're selling, your asking price next to the market price, and totals.

web appshow modevendors

Picking the cheapest parts for a working prototype

The prototype uses an Adafruit MatrixPortal S3 instead of a Raspberry Pi: no SD card, less power, and a lower cost. Here's the parts list and why.

boardhardware

Screen mode: TCG Marquee without an LED board

Not everyone wants hardware. The Screen plan shows the wall at full resolution on any TV, monitor, or tablet with a web browser, on up to five screens.

web appscreen modepricing

A search guide, and 100 results per search

Card search got a help guide with real examples, and a fix: searches now return up to 100 cards at once, since each search costs one credit either way.

web appsearch

Scrydex approves using its prices in a product

Before selling anything built on someone else's data, I asked. Scrydex confirmed that a product like TCG Marquee is allowed on its paid plans.

businessscrydex

Tabs for your account, plans, and a how-to page

The web app grew from one page into tabs: the wall, your collection, your account and plan, and a help page that explains how everything works.

web appdesign

More than Pokémon: every game on the price list

Card shows sell more than Pokémon. TCG Marquee added Magic, Lorcana, One Piece, Gundam, and Riftbound, plus a full screen mode for demos on a monitor.

web appgames

Graded card prices, and two plans instead of one

Graded slabs are a big part of what collectors care about. Adding PSA, CGC, BGS, TAG, SGC, and ACE prices led to splitting the product into two plans.

web appgraded cardspricing

First feedback, and a question: could this sell?

A friend who sells cards at shows saw the preview and liked it. That raised a real question: could this be a product, with accounts and a central server?

the ideabusiness

Seeing the LED board before it exists

The parts were days away, so the web app got an animated dot matrix preview that shows exactly what the LED board will display, in the browser.

web apppreview

The first server and a web app for your collection

The first working version: a small server that stores your cards, a web page to add and edit them, and a connection to Scrydex for prices.

web appserver

From a flight tracker to a card price board

It started with a little LED sign that shows planes flying overhead, and a question: what if it showed what my trading cards are worth today instead?

the ideaorigin