[HN Gopher] Show HN: Cardstock- Free TCG Proxy Manager for Magic...
       ___________________________________________________________________
        
       Show HN: Cardstock- Free TCG Proxy Manager for Magic, Yugioh, &
       Pokemon
        
       Trading cards are awesome, but paying $30 for some cardboard isn't.
       I've upscaled 60,000 cards from the entire catalog of Yugioh,
       Magic, Pokemon, & a newer game, https://elestrals.com. I've made it
       easy to build a decklist, download it, and then print at home.
       Modern inkjet printers got really good when nobody was looking.
       While it's clear they're not real cards, the upscaling makes them
       look great for casual play (these are not tournament legal). It's
       totally free, give it a try!  Supplies:
       https://cardstock.denta.co/kb/supplies Printer Settings:
       https://cardstock.denta.co/kb/settings Instructions:
       https://cardstock.denta.co/kb/instructions  Overview: I built
       Cardstock because I had some scripts to do this lying around, and
       wanted to explore the new Rails 8 magic. Kamal 2 (kamal-
       deploy.org/) is a game changer, SQLite in production is fine, and
       the database backed solid family of gems work like a charm.
       Compute: I am renting a box on https://hetzner.com located in VA
       for $15/mo. This box has 8 gigs of ram and 2 vCPU's. This is such a
       deal compared to compute prices on https://render.com.  Kamal 2:
       This thing is amazing. Kamal gives me everything I could want (easy
       console access, easy shell access, a way to manage secrets, a way
       to see my logs, and letsencrypt support for DNS), all without a
       PaaS tax. The best part is the accessories feature: https://kamal-
       deploy.org/docs/commands/accessory/. I am running my main app with
       two accessories: Meilisearch(https://meilisearch.com) and
       OpenObserve (https://openobserve.ai). Instead of paying Algolia to
       host search infrastructure and sentry to host monitoring
       infrastructure, I'm hosting my own OSS without any fanfare.
       Upscaling: To upscale the trading cards (a mandatory part of this
       build, scans are never high enough DPI). I am using this
       (https://replicate.com/nightmareai/real-esrgan) model. For
       upscaling every card, I've used under a hundred bucks of compute.
       This model was picked on a whim, but worked well enough that I
       didn't compare other models.  SQLite: I used SQLite combined with
       Litestream (litestream.io) for my database. While I considered
       Postgres, I hesitated due to uncertainties around handling backups
       on self-hosted infrastructure. This was my first time using SQLite
       in production, and it was functional but with some minor
       annoyances. Here's what I encountered: 1. No Default UUID Primary
       Key Type I had to set primary keys as strings and assign IDs
       manually from the application record. It's an annoying workaround
       but manageable. 2. No Native Array Columns Because SQLite doesn't
       support array columns, I had to use its native JSON column type,
       which just felt icky. If I were working with something like
       embeddings, this would be especially annoying, because you couldn't
       enforce all the records to have the same number of dimensions. 3.
       Cryptic Errors At one point, a migration failed silently, leaving a
       cryptic error in schema.rb. The issue was resolved by rolling back
       the migration and redoing it, but it was once again, annoying. 4.
       Litestream Defaults Litestream deletes snapshots after 24 hours by
       default, which is far too short. When I tried to recover some data,
       I found it had already been deleted. Adjusting these defaults fixed
       the problem.  Solid Queue/Cache/Cable: The solid family of gems are
       all backed by the database and were a pleasure to work with. Goal
       was to prevent needing to reach for redis, so you have one less
       thing to worry about. You end up with a little more latency, which
       is a totally reasonable tradeoff.  Conclusions: We are moving into
       a post platform as a service world. Instead of buying a bespoke
       render.com or heroku, you just buy commodity compute and use Kamal
       to manage. It's like, pretty much all there, excited to see how
       this space matures.
        
       Author : adenta
       Score  : 33 points
       Date   : 2025-01-08 15:11 UTC (7 hours ago)
        
 (HTM) web link (cardstock.denta.co)
 (TXT) w3m dump (cardstock.denta.co)
        
       | pickledish wrote:
       | This looks pretty cool, and is definitely useful! Do you have any
       | examples of what the printed out cards look like? Perhaps in
       | comparison to real cards
        
         | adenta wrote:
         | let me go print some!
        
         | adenta wrote:
         | https://drive.google.com/drive/folders/1AzIBAE7VPQMfqq-gVFTK...
         | 
         | The red bordered cards are the ones I just printed, real cards
         | are on the right. Also all are US sized, the real yugioh cards
         | are slightly smaller than that.
         | 
         | I tried to get a couple diff angles and card types. Like I
         | said, totally good enough for my use cases!
        
           | pickledish wrote:
           | Wow, they look great, the upscaling seems to have gone really
           | well!
        
       | trigonated wrote:
       | Having your home page be just a login button is a bit
       | disappointing.
       | 
       | There's no screenshots and no information about how it works (or
       | information at all for that matter), which doesn't really
       | convince me to create an account (in my mind, the process of
       | picking a deck and printing it is not one where requiring a login
       | would be obvious, so some more "convincing" might help).
       | 
       | I don't want to sound mean-spirited, but I'd guess many people
       | would similarly refrain from creating an account for the reasons
       | mentioned above.
       | 
       | Edit: Turns out there's a cool scrolling cards animation as
       | background! It's just that it doesn't seem to work on Firefox so
       | there it just has a blank background.
        
         | theogravity wrote:
         | I agree. Without this post, if I visited the page without any
         | prior knowledge, I'd have no idea what this is about, and would
         | have no incentive to sign up.
        
           | adenta wrote:
           | The only way I'm showing people this website is a personal
           | text or this hacker news post, which I would hope gives
           | enough context.
        
             | trigonated wrote:
             | Fair enough. Sorry for sounding a bit mean.
             | 
             | I also saw your other comment about the "test" account
             | (didn't feel like replying on both places). Thank you for
             | that.
        
           | trigonated wrote:
           | Maybe some sort of "guest mode" where you could use the site,
           | pick a deck and preview the printing (maybe a very small
           | image), but then required an account to not lose the deck or
           | actually getting the printable would be pretty reasonable.
           | 
           | That said, maybe there's some other advantage to having an
           | account that I just didn't think of.
        
         | adenta wrote:
         | If you want to play around with it, try account hn@example.com
         | with password hackernews!
         | 
         | I didn't add any restrictions on email registration because I
         | hear you that actually creating an account can be a chore.
         | Exposing web services to the public internet without auth seems
         | scary, which is why I rarely do it.
        
           | lxgr wrote:
           | > I didn't add any restrictions on email registration [...]
           | Exposing web services to the public internet without auth
           | seems scary
           | 
           | Aren't you still effectively doing that, though?
           | 
           | This seems like the combination of two downsides: Bots will
           | be able to perform email verification if they want to; honest
           | users will still be deterred.
        
             | adenta wrote:
             | great point-
             | 
             | bot protection is enabled in clerk, where email
             | registration is not.
        
           | nafey wrote:
           | Just adding a static website with screenshots of the product
           | will be a great upgrade for users who are interested to learn
           | more before signing in.
        
           | cmg wrote:
           | For anyone else trying this, the password is hackernews -
           | without an exclamation point. Tripped me up.
           | 
           | Thanks for setting this up adenta!
        
           | dgrove wrote:
           | Also login over a VPN unless you want your IP leaked to
           | everyone else
        
           | snapcaster wrote:
           | but also the chat function doesn't do anything unless you
           | supply an email. Seriously without your post text here it's
           | literally impossible to figure out what your site does
           | exactly pre-account creation
        
       | ianferrel wrote:
       | Wizards of the Coast is relatively litigious. I'd expect a Cease
       | and Desist if you get any traction with this.
        
         | adenta wrote:
         | Yeah I wonder why https://scryfall.com/ never gets a C&D.
         | 
         | I think the problem is money changing hands which isn't
         | happening.
        
           | adenta wrote:
           | but IANAL and would love to hear from any that might read
           | this.
        
           | supernewton wrote:
           | Wizards of the Coast's in-house card database (Gatherer) is
           | basically not maintained at all. I think they're very happy
           | there is a third party willing to do that for free, and for a
           | game with as much history as Magic, having a searchable card
           | database is basically mandatory.
        
         | mercwear wrote:
         | WOTC has a (surprisingly) good proxy policy:
         | https://magic.wizards.com/en/news/announcements/proxies-poli...
         | 
         | TL;DR: Use them all you want for play testing but don't use
         | them in events or for trading.
         | 
         | Edit: They DO want a watermark for proxy cards, not sure they
         | enforce that much since most proxy sites make it optional.
        
           | ianferrel wrote:
           | I mean... maybe?
           | 
           | It says
           | 
           | "A playtest card is most commonly a basic land with the name
           | of a different card written on it with a marker. Playtest
           | cards aren't trying to be reproductions of real Magic cards;
           | they don't have official art and they wouldn't pass even as
           | the real thing under the most cursory glance. Fans use
           | playtest cards to test out new deck ideas before building out
           | a deck for real and bringing it to a sanctioned tournament.
           | And that's perfectly fine with us. Wizards of the Coast has
           | no desire to police playtest cards made for personal, non-
           | commercial use, even if that usage takes place in a store."
           | 
           | So they say that they have no desire to police them, but
           | define them as not using original art and not passing for the
           | real card even briefly. Those descriptions do not apply to
           | high-resolution original art card images printed out.
        
       | danielvinson wrote:
       | Love the idea and technology - I'd much prefer if the output of
       | this was an MPC order since that's how almost everyone is making
       | proxies these days. Getting my entire cube printed was only about
       | $100 and they are indistinguishable from real cards.
        
         | adenta wrote:
         | The joy of proxies is you can do whatever you want! My take was
         | to not make these seem as real as possible, and one where you
         | can print on demand.
         | 
         | Imagine a proxy only tournament of any card game, where you
         | have to submit your decklist ahead of time and it is waiting
         | for you when you arrive, ready to play and keep.
        
       | mercwear wrote:
       | For MTG fans, checking out https://mtgprint.net/ may be worth a
       | shot too. No login required and same results.
        
         | adenta wrote:
         | I really like my search interface.
         | 
         | If you want to play around with it, try account hn@example.com
         | with password 'hackernews'
        
       | meta_1995 wrote:
       | oh man. if you could get the SWCCG holotable slipped in here...
       | i'd be a very happy elder millenial.
       | https://github.com/swccgpc/holotable
        
       | jsnznsb wrote:
       | A work of passion, congratulations!
        
       ___________________________________________________________________
       (page generated 2025-01-08 23:01 UTC)