Personal2026

Snooker Score

เว็บแอปพลิเคชันบันทึกคะแนนและวิเคราะห์สถิติการเล่นสนุกเกอร์

Snooker Score
บทบาท
Full Stack Developer
ปี
2026
ทีม
Solo Project
Tech Stack
Node.js, Next.js, MySQL

เว็บแอปพลิเคชันสำหรับบันทึกคะแนนสนุกเกอร์ที่ออกแบบมาเพื่อใช้งานจริงเวลาไปตีสนุกเกอร์กับเพื่อนหรือครอบครัว มีระบบสมาชิก (Register/Login) เพื่อจัดการบัญชีส่วนตัว ภายในระบบสามารถจัดการรายชื่อผู้เล่นและมีระบบวิเคราะห์ข้อมูลสถิติเชิงลึกของผู้เล่นแต่ละคน โครงสร้างการแข่งขันถูกแบ่งออกเป็น Session (รอบการเล่น) และย่อยเป็น Frame (เกม) รองรับผู้เล่นตั้งแต่สองคนขึ้นไป สามารถบันทึกได้ทั้งคะแนนปกติและคะแนนเสีย (Foul) พร้อมระบบจัดเก็บ Timeline อย่างละเอียดทั้งในระดับเฟรมและเซสชัน นอกจากนี้ยังมีระบบ Archived Sessions สำหรับเก็บประวัติการเล่นเก่า จุดเด่นสำคัญคือหน้าบันทึกคะแนนที่ออกแบบ UX/UI ให้สวยงาม ชัดเจน ใช้งานง่าย และรองรับการทำงานแบบ Optimistic UI ที่พักข้อมูลคิวไว้บน Local ทำให้สามารถบันทึกคะแนนได้อย่างต่อเนื่องและลื่นไหล แม้ในบางช่วงที่สัญญาณอินเทอร์เน็ตไม่เสถียร

01

ปัญหา

  • การจดบันทึกคะแนนสนุกเกอร์รวมถึงคะแนนเสีย (Foul) ด้วยวิธีปกติหรือในกระดาษทำได้ยาก เสียเวลา และมักจะลืมเมื่อเล่นหลายเฟรม
  • ขาดเครื่องมือในการเก็บสถิติระยะยาวเพื่อดูพัฒนาการ หรือเปรียบเทียบข้อมูลการเล่น (เช่น ใครชนะบ่อยกว่า สถิติการทำคะแนน) ระหว่างกลุ่มเพื่อนหรือคนในครอบครัว
  • สัญญาณอินเทอร์เน็ตที่ไม่แน่นอน ทำให้แอปพลิเคชันทั่วไปที่ต้องรอการตอบกลับจากเซิร์ฟเวอร์ทุกครั้งที่กดคะแนน มีอาการค้างหรือใช้งานได้สะดุด
02

แนวทางแก้ไข

  • พัฒนาระบบจัดการผู้เล่นและการแข่งขัน โดยจัดโครงสร้างข้อมูลแบบ Session และ Frame ให้เป็นระเบียบ พร้อมระบบ Archived สำหรับซ่อนเซสชันที่จบไปแล้วแต่ยังคงสถิติไว้
  • สร้างระบบบันทึกคะแนนที่รองรับผู้เล่นหลายคน พร้อมเก็บข้อมูลแบบ Timeline เพื่อให้สามารถย้อนดูเหตุการณ์ในแต่ละเฟรมได้อย่างแม่นยำ และนำข้อมูลไปประมวลผลเป็นกราฟวิเคราะห์สถิติ
  • ประยุกต์ใช้เทคนิค Optimistic UI ในหน้าบันทึกคะแนน โดยอัปเดตหน้าจอให้ผู้ใช้เห็นทันทีที่กด และพักคิวข้อมูล (Local Queue) ไว้ก่อน เพื่อรอจังหวะส่งเข้าฐานข้อมูล วิธีนี้ช่วยแก้ปัญหาเน็ตหลุดชั่วคราว ทำให้รักษาความสอดคล้องของข้อมูล (Data Consistency) ได้โดยที่การจดคะแนนไม่หยุดชะงัก
03

ผลลัพธ์

  • ได้แอปพลิเคชันบันทึกคะแนนสนุกเกอร์ที่ใช้งานได้จริง UX/UI ออกแบบมาให้กดง่าย สบายตา เหมาะกับการใช้งานผ่านมือถือระหว่างเล่น
  • ผู้ใช้สามารถย้อนดูประวัติการเล่น สถิติการแพ้ชนะ และ Timeline การทำคะแนนของตัวเองและเพื่อน ๆ ได้อย่างครบถ้วนและเป็นระบบ
  • ประสบการณ์การใช้งาน (UX) ไร้รอยต่อ หมดปัญหาเรื่องแอปค้างตอนกดบันทึกคะแนนเมื่อเน็ตหลุด ทำให้ผู้เล่นโฟกัสกับเกมบนโต๊ะสนุกเกอร์ได้เต็มที่

Project Gallery

PC - User interface

Gallery image 1
Gallery image 2
Gallery image 3
Gallery image 4
Gallery image 5
Gallery image 6
Gallery image 7
Gallery image 8
Gallery image 9
Gallery image 10
Gallery image 11
Gallery image 12
Gallery image 13
Gallery image 14
Gallery image 15
Gallery image 16
Gallery image 17
Gallery image 18
Gallery image 19
Gallery image 20
Gallery image 21
Gallery image 22

Mobile - User interface

Gallery image 1
Gallery image 2
Gallery image 3
Gallery image 4
Gallery image 5
Gallery image 6
Gallery image 7
Gallery image 8
Gallery image 9
Gallery image 10
Gallery image 11
Gallery image 12
Gallery image 13
Gallery image 14
Gallery image 15
Gallery image 16
Gallery image 17
Gallery image 18
Gallery image 19
Gallery image 20
Gallery image 21
Gallery image 22
Gallery image 23
Gallery image 24
Gallery image 25
Gallery image 26
Gallery image 27
Gallery image 28
Gallery image 29