Skip to content

Instantly share code, notes, and snippets.

View Esya's full-sized avatar

Tristan F. Esya

  • WeMaintain
  • Paris
View GitHub Profile
@Esya
Esya / Slugify a CardNexus product name.md
Created July 8, 2026 20:25
How to slugify a CardNexus product name into a nameSlug (JS/TS, zero-dep, Python)

Slugify a CardNexus product name

CardNexus product/card names are slugified into a URL-safe nameSlug — for example Bravo, Showstopperbravo-showstopper. If you have a name and want to reproduce the exact slug (e.g. to build a /products/search filter), use the function below.

Under the hood we use the slugify package (v1.6.6) with a fixed configuration plus a few extra character mappings. Matching that configuration guarantees your slug lines up with ours.

@Esya
Esya / cardnexus-shield-brief.md
Created May 16, 2026 13:03
CardNexus Shield — marketing brief for the Prismic team (landing page + terms page + help center)

CardNexus Shield — Marketing Brief

Audience: Prismic content + design team building the public landing page. Goal: Drive seller awareness and opt-in by making Shield feel like the obvious "insure your shipment" button in the seller's mind. The product is live (gated behind a feature flag); copy and visuals can ship as soon as the rollout opens.


1. Product summary in one sentence

CardNexus Shield is an opt-in, per-shipment insurance that protects sellers against loss, theft, and damage in transit for +1 percentage point on the seller commission, applied only to the orders the seller chooses to cover.

@Esya
Esya / portfolio-snapshot-bug-findings.md
Created April 8, 2026 09:56
Portfolio snapshot bug investigation - OpenSearch/ProductView price sync gap

Portfolio Snapshot Bug - Investigation Findings

Date: 2026-04-08 Affected user (example): bart6446 (bartoffermans@gmail.com, userId: 6876c28bc2fa8516b1a41cf4) Impact: Portfolio value dropped from ~46.7k to ~41k (~12% loss)


TL;DR

@Esya
Esya / portfolio-snapshot-price-fallback-bug.md
Created April 7, 2026 16:52
Bug: Portfolio snapshot lost price fallback after OpenSearch migration

Bug: Portfolio snapshot lost price fallback after OpenSearch migration

Summary

Portfolio snapshots dropped ~12% for users with many Cardmarket-listed products because the OpenSearch-based computation only uses marketValue, while the old MongoDB-based computation applied the full fallback chain (marketValue → low → mid → high).

Impact

  • Affects all users — any product where Cardmarket marketValue is null/0 but low, mid, or high has a value is now valued at €0 in the snapshot.
  • Example user bart6446 (bartoffermans@gmail.com): collection value dropped from ~€46.7k to ~€41k overnight (€5,700 / ~12%).

CardNexus Maintenance Mode API

Endpoint

GET https://app.cardnexus.com/api/maintenance/status

No authentication required.

@Esya
Esya / plan.md
Last active March 23, 2026 00:05
Better Product Discovery — Technical Implementation Plan

Implementation Plan: Better Product Discovery (Feed Tab)

Context

The product list page has two intent-based tabs (Marketplace and Discovery) that fail at natural browsing. This plan adds a Feed tab that shows individual listings in chronological order, with price sorting, a Good Deals toggle (listings at 20-60% of market value, graded or near mint only, minimum €2/$2 market value), and meaningful graded card display. See specs/better-discovery/prd.md for full requirements.

Architecture Overview

┌─ Frontend ────────────────────────────────────────────────────────────────┐
@Esya
Esya / prd.md
Created March 22, 2026 23:14
Better Product Discovery – PRD

Better Product Discovery – PRD

TL;DR

A new Feed tab on the product list page that surfaces individual listings in chronological order, enabling natural browsing instead of intent-driven search. Users can sort by price (not possible in Marketplace today), toggle a Good Deals filter to find listings priced 20–60% of market value, and filter/view graded cards meaningfully for the first time in the browse experience. This targets buyers, deal hunters, and collectors across web and mobile.


Goals

@Esya
Esya / multi-currency-changelog.md
Created March 19, 2026 18:53
Multi-Currency Marketplace — Product Changelog

Multi-Currency Marketplace — Product Changelog

Overview

CardNexus now supports buying and selling across multiple currencies. Sellers in non-EUR countries can now list, sell, and receive payouts in their local currency. Buyers can purchase from any seller regardless of currency — the platform handles conversion transparently.


What's New

@Esya
Esya / informational-email-active-sellers.md
Created March 19, 2026 15:00
Multi-currency migration email templates for CardNexus sellers

Email: Currency Migration — Active Seller Notification

To: Sellers with existing orders (skipped by automatic migration) Subject: New option: Switch your CardNexus seller account to {{localCurrency}}


Hi {{username}},

We're rolling out multi-currency support on CardNexus, and we wanted to let you know about a new option available to you.

@Esya
Esya / claude-revised-plan.md
Created March 8, 2026 17:50
Game Admin Staging System Remediation Plan — SQS + Stream Reduction

Revised Remediation Plan: Game Admin Staging System (v2)

Incorporates findings from claude.rca.md, codex.rca.md, remediation.md, codex-remediation.md, and two rounds of Codex feedback.


Feedback Responses (Round 1)

Feedback #1: Manual "Generate Diff" fallback is asserted but not evidenced

Valid. No generate-diff contract or handler exists. Fixed: generate-diff endpoint is now part of the core release (Step 2), not deferred.