Put the inventory on the internet so everyone shares one database

Two pieces: a website URL the family opens, and a Firebase cloud project that stores cards and photos. Both are free at family scale.

1. Create the cloud database (Firebase)

  1. Go to console.firebase.google.com and sign in with Luke’s Google account.
  2. Add project → name it sleevehouse (or keep an existing cornick-cards project) → disable Gemini/Google Analytics if asked → Create.
  3. Build → Authentication → Get started → Sign-in method → Anonymous → Enable.
  4. Build → Firestore Database → Create database → Start in test mode → pick nam5 (US) → Enable.
    Then open the Rules tab and replace them with the rules in firestore.rules in this folder. Publish.
  5. Build → Storage → Get started → use the rules in storage.rules. Publish.
  6. Project settings (gear) → Your apps → Web app (</>) → nickname inventory → also check Firebase Hosting if you want Google to host the site → Register.
    Copy the firebaseConfig object.
  7. Paste that object into config.js as window.FIREBASE_CONFIG = { ... }, or paste the same JSON into Settings → Firebase web config on each phone and tap Connect cloud database.

2. Put the site on a live URL

Easiest: Netlify drop. No command line.

  1. Go to app.netlify.com/drop and sign in.
  2. Drag the whole card-inventory-app folder onto the page.
  3. Netlify gives you a URL like https://random-name.netlify.app. Rename it under Site settings → Domain.
  4. Open that URL on a computer to test first. Phones can Add to Home Screen later.

Other options that work the same (all just host the folder):

Do not email the folder around and open index.html as a file. Camera and Firebase need https://.

3. Connect a computer (or phone) to the same database

  1. Open the live https:// URL in Chrome on a laptop.
  2. Settings → paste Firebase config if it is not already in config.js → optional family pin → Connect cloud database.
  3. Banner at the top should turn to “Cloud connected — live shared database”.
  4. Collection at the top should say Cornick — John Cornick.
  5. If this device already cataloged cards locally, tap Upload this phone’s local cards into the cloud once.

Photos: click FRONT or BACK and pick a file from the computer, a scanner folder, or a phone camera. Do not open index.html as a local file.

4. How the data is stored

5. Cost and safety

Firebase Spark (free) is enough for tens of thousands of cards and compressed photos. Hosting the site on Netlify is free.

The rules file allows any signed-in anonymous user to read/write this project. Anyone who has both the site URL and the Firebase config can write. Keep the config in the hosted files only, use a family pin in Settings, and do not post the URL in a public group.

Back to the app