Fujimod
Try your camera firmware in the browser and build Fujimod SD boot files.
ติดตามราคาการ์ดสะสม Pokémon / Sports
Translation pending
LifestyleTypeScript · JavaScriptGitHub @techanukorn-uiOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Card price tracker for Pokemon/sports collectibles (Next.js + Supabase)
Translation pending
Taken from the repository README
Loading the full README.
Read the full README ↗เว็บแอปติดตามราคาการ์ดสะสม (Pokémon / Sports) — Next.js (App Router) + Tailwind CSS + Supabase
price_history จะโชว์ "ยังไม่มีราคา" แทนเลข 0แอปนี้ไม่ดึงราคาจาก SNKRDUNK เอง — เป็นแค่หน้าจอ "อ่าน" ราคาที่มีอยู่ใน Supabase มาโชว์ ราคาจะถูกเติมเข้ามาจากภายนอกผ่าน Supabase client โดยตรง หรือผ่าน POST /api/update-price
ดู supabase/schema.sql — รันไฟล์นี้ทั้งไฟล์ใน Supabase SQL editor ของโปรเจกต์ใหม่ครั้งเดียว จะได้ตาราง cards, price_history, RLS policy (เปิดอ่าน/เขียนทั้งหมด เพราะเป็นแอปส่วนตัวไม่มีระบบ login), storage bucket card-images พร้อม seed ข้อมูลการ์ด PSA10 เริ่มต้น 18 ใบ
cards| column | type | note |
|---|---|---|
| id | uuid | primary key |
| name | text | ชื่อที่เรียกเอง |
| grade | text | Raw / PSA9 / PSA10 ฯลฯ |
| cost_thb | numeric | ราคาซื้อ (บาท), null สำหรับ wishlist |
| snkrdunk_url | text | |
| image_url | text | auto จาก SNKRDUNK (เติมทีหลังโดยกระบวนการภายนอก) |
| custom_image_url | text | รูปที่อัปโหลดเอง |
| is_wishlist | boolean | |
| created_at | timestamptz |
price_history| column | type | note |
|---|---|---|
| id | uuid | primary key |
| card_id | uuid | FK → cards.id |
| market_price_jpy | numeric | |
| market_price_thb | numeric | |
| exchange_rate | numeric | |
| fetched_at | timestamptz | เก็บทุกครั้งที่มีราคาใหม่ ไม่เขียนทับของเก่า |
สองทางเลือก:
await supabase.from('price_history').insert({
card_id, market_price_jpy, market_price_thb, exchange_rate,
})
POST https://<your-deployment>/api/update-price
Content-Type: application/json
{ "card_id": "...", "market_price_jpy": 12345, "exchange_rate": 0.24 }
market_price_thb จะถูกคำนวณอัตโนมัติจาก market_price_jpy * exchange_rate ถ้าไม่ได้ส่งมาตรงๆต้องมี Node.js 18+
npm install
cp .env.example .env.local # แล้วใส่ค่า Supabase project ของคุณ
npm run dev
NEXT_PUBLIC_SUPABASE_URLNEXT_PUBLIC_SUPABASE_ANON_KEYSUPABASE_SERVICE_ROLE_KEY (สำหรับ /api/update-price, optional — ถ้าไม่ตั้งจะ fallback ไปใช้ anon key)ดู browser-extension/README.md — เป็น Chrome extension ที่ให้ปุ่ม "ดึงราคาใหม่" / "ดึงราคาทั้งหมด" บนเว็บนี้ทำงานได้จริง โหลดแบบ unpacked ผ่าน chrome://extensions (ต้องทำใหม่ทุกเครื่องที่จะใช้ปุ่มนี้ ไม่ได้ติดมากับ git clone)