4 คะแนน โดย heujung 13 시간 전 | 4 ความคิดเห็น | แชร์ทาง WhatsApp
  • Gnuboard ซึ่งถูกใช้กันอย่างแพร่หลายในเกาหลีสำหรับการพัฒนาเว็บไซต์และร้านค้าออนไลน์ของบริษัท ได้เปิดตัวเวอร์ชันทางการ 7.0 เมื่อวันที่ 1 กรกฎาคม 2026 โดยออกแบบใหม่ทั้งหมดตั้งแต่คอร์
  • หลังจากโอเพนเบต้า (7.0.0-beta.1) เมื่อวันที่ 1 เมษายน 2026 ผ่านช่วงเบต้า 3 เดือนจนมาถึงรีลีสทางการ ปัจจุบันเป็นเวอร์ชัน 7.0.3 (ณ วันที่ 9 กรกฎาคม 2026)
  • แบ็กเอนด์ PHP 8.2+ / Laravel 12, ฟรอนต์เอนด์ React 19 + Vite + Tailwind CSS 4
  • ไลเซนส์ MIT

เอนจินเลย์เอาต์ JSON

  • การตัดสินใจออกแบบหลักของโปรเจกต์นี้คือ กำหนด UI ด้วยข้อมูล (JSON) ไม่ใช่โค้ด
  • เมื่อประกาศโครงสร้างหน้าจอ การผูกข้อมูล และ event handler เป็น JSON เอนจินจะตีความและเรนเดอร์เป็น tree ของ React component
  • ผลลัพธ์คือโมดูล/ปลั๊กอินสามารถแทรกและขยาย UI เฉพาะของตนเองลงในหน้าจอเดิมได้ โดยไม่ต้องผ่านกระบวนการ build ฟรอนต์เอนด์ เมื่อติดตั้งส่วนขยายแล้ว สามารถเปลี่ยนหน้าจอได้โดยไม่ต้อง build bundle ใหม่
  • หากต้องการ UI ขั้นสูง ก็ยังมีเส้นทางให้สร้าง custom React component แล้วลงทะเบียนใน template registry ได้
  • ใน 7.0.0 มีการนำตัวแก้ไขเลย์เอาต์แบบ WYSIWYG เข้ามาใหม่ ทำให้จัดวางองค์ประกอบได้โดยดูผลลัพธ์การเรนเดอร์เหมือนหน้าจริง และรองรับการ preview ก่อนบันทึกกับการกู้คืนตามเวอร์ชัน

โครงสร้างส่วนขยาย

  • โครงสร้าง 3 ชั้น: โมดูล + ปลั๊กอิน + เทมเพลต เพิ่มฟีเจอร์ได้โดยไม่แก้คอร์
  • แทรกฟีเจอร์ด้วยระบบ hook 2 แบบคือ Action / Filter และแยกชั้น Controller → FormRequest → Service → Repository → Model
  • โมดูลที่มีมาให้พื้นฐาน: กระดานสนทนา, ร้านค้าออนไลน์ (สินค้า·คำสั่งซื้อ·การชำระเงิน·การจัดส่ง·คูปอง), หน้าเพจ
  • ปลั๊กอินที่มีมาให้พื้นฐาน: การชำระเงิน KG Inicis, ยืนยันตัวตน KG Inicis, รหัสไปรษณีย์ Daum, CKEditor 5, เครื่องมือการตลาด, ความยินยอมคุกกี้ GDPR
  • มีตัวอย่าง implementation ขั้นต่ำสำหรับเรียนรู้ระบบส่วนขยาย (hello_module / hello_plugin / เทมเพลต hello 2 แบบ) มาพร้อมกัน

ฟีเจอร์ที่คอร์มีให้

  • สิทธิ์: การควบคุมการเข้าถึง 3 ขั้น ได้แก่ บทบาท (Role) + สิทธิ์ (Permission) + ขอบเขต (Scope)
  • การยืนยันตัวตน (IDV): จัดการจุดเวลาที่ต้องยืนยันตัวตนสำหรับการสมัครสมาชิก การรีเซ็ตรหัสผ่าน และงานที่มีความอ่อนไหว ด้วยนโยบายแบบ declarative ระดับ route/hook เมื่อเซิร์ฟเวอร์ตอบกลับ HTTP 428 ตัว interceptor ฝั่งฟรอนต์เอนด์จะเปิดโมดัลยืนยันตัวตน และเมื่อสำเร็จจะเรียก request เดิมซ้ำโดยอัตโนมัติ
  • การแจ้งเตือน: โครงสร้าง 3 ชั้น Definition × Template × Recipients ส่งได้หลายช่องทางอย่างอิสระผ่านเมล / DB / real-time broadcast (Laravel Reverb)
  • SEO: ตรวจจับบอทประมาณ 1,000 ชนิดด้วย crawler-detect โดยไม่ต้องตั้งค่าเซิร์ฟเวอร์ SSR เช่น Next.js แล้วตอบ static HTML ให้บอท และตอบ SPA ให้ผู้ใช้ สร้าง Sitemap อัตโนมัติ
  • แพ็กภาษา: มีภาษาเกาหลี/อังกฤษในคอร์ ภาษาญี่ปุ่นมีให้เป็นบันเดิลคอร์ + ส่วนขยายหลัก 12 รายการ และติดตั้งภาษาใหม่ได้ด้วย ZIP หรือ GitHub URL ข้อมูลหลายภาษาที่ผู้ดูแลแก้ไขเองจะถูกเก็บรักษาไว้แม้มีการอัปเดตส่วนขยายหรือแพ็กภาษา

โครงสร้างที่เป็นมิตรกับ AI

  • วางเอกสารพัฒนาอย่างเป็นทางการ AGENTS.md (ประมาณ 58KB) ไว้ที่ root ของ repository ออกแบบให้ coding agent อ่านกฎและทำงานตามได้
  • เนื่องจาก UI เป็น JSON จึงทำให้ LLM สร้างและแก้ไขหน้าจอได้ง่าย

สถานะปัจจุบันและข้อจำกัด

  • ยังไม่มีเครื่องมือ migration ข้อมูลจาก Gnuboard 5 → 7 และอยู่ในสถานะมีกำหนดจะให้บริการ จึงยังไม่สามารถย้ายเว็บไซต์เดิมได้ทันที
  • GitHub repository มี star 36 / fork 17 ระบบนิเวศจึงยังอยู่ในช่วงเริ่มต้น

ลิงก์

4 ความคิดเห็น

 
moderator 12 시간 전

ย้ายไปที่ Show GN แล้ว
โปรดทราบว่าโพสต์ที่ moderator ปรับหมวดหมู่อาจถูกจำกัดการแสดงผลบนหน้าแรก ดังนั้นกรุณาตรวจสอบหมวดหมู่อีกครั้งก่อนลงทะเบียน

 
roxie 6 시간 전

ว้าว ยังสืบทอดต่อเนื่องกันมาอยู่จริง ๆ สินะครับ

 
dydwls140 6 시간 전

ว้าว เมื่อ 16 ปีก่อนผมเคยใช้บ่อยมากจริง ๆ เป็น Gnuboard ที่ชวนให้นึกถึงความหลังเลยครับ ขอเป็นกำลังใจให้นะครับ

 
tsboard 11 시간 전

ขอเป็นกำลังใจให้ GnuBoard ครับ น่าทึ่งจริง ๆ ที่สามารถสานต่อมาได้ยาวนานภายใต้ชื่อเดียวกันแบบนี้