Sanity: CMS ที่คิดแบบนักพัฒนา
แพลตฟอร์ม CMS ส่วนใหญ่มักจะบีบให้คุณต้องเลือกทางใดทางหนึ่ง
คุณไม่เลือกการควบคุมแบบ self-hosted ที่ต้องแลกมาด้วยภาระการดูแลรักษาที่หนักอึ้ง ก็ต้องเลือกแพลตฟอร์ม SaaS แบบ managed ที่คุณต้องเช่าความยืดหยุ่นจากเจ้าของแพลตฟอร์ม
ทั้งสองทางเลือกสร้างช่องว่างระหว่างคอนเทนต์และ frontend ของคุณ นักพัฒนาต้องเสียเวลามากเกินไปในการแปลงข้อมูลระหว่างโลกที่แตกต่างกัน
Sanity เปลี่ยนตรรกะนี้
มันไม่ใช่เว็บไซต์ที่มี CMS มาติดตั้งเสริมเข้าไป แต่มันคือแพลตฟอร์มคอนเทนต์ที่เป็นขุมพลังให้กับเว็บไซต์ของคุณ
นี่คือเหตุผลว่าทำไมมันถึงทำงานแตกต่างออกไป:
- The Content Lake: Sanity จัดการโครงสร้างพื้นฐานและข้อมูลของคุณ ข้อมูลของคุณจะมีการทำ versioning และให้บริการผ่าน APIs
- The Studio: อินเทอร์เฟซสำหรับบรรณาธิการคือแอปพลิเคชัน React ซึ่งจะอยู่ใน code repository ของคุณ คุณสามารถทำ versioning และ deploy มันได้เหมือนกับส่วนอื่นๆ ของแอปคุณ
- Customization: หากคุณต้องการเครื่องมือเฉพาะทาง คุณก็สร้างมันขึ้นมาเองได้ คุณสามารถสร้าง custom input components หรือตัวเลือกสีเฉพาะแบรนด์โดยใช้เครื่องมือชุดเดียวกับที่คุณใช้สำหรับ frontend
- GROQ: ภาษา query นี้ช่วยให้คุณกำหนดรูปแบบข้อมูลที่ต้องการได้อย่างแม่นยำในขณะที่เรียกใช้ ช่วยป้องกันปัญหา over-fetching และแก้ปัญหาโครงสร้างข้อมูลได้ทันที
สถาปัตยกรรมนี้สามารถขยายตัวไปพร้อมกับคุณได้
แบรนด์ขนาดเล็กสามารถใช้สำหรับเว็บไซต์การตลาดแบบง่ายๆ ในขณะที่บริษัทระดับโลกอย่าง PUMA สามารถใช้จัดการคอนเทนต์กว่า 55,000 ชิ้นในหลายตลาดจากแหล่งข้อมูลเดียว
นอกจากนี้ยังเตรียมความพร้อมให้คุณสำหรับอนาคตของ AI
แพลตฟอร์ม CMS ส่วนใหญ่จัดเก็บคอนเทนต์ในรูปแบบ HTML blobs ที่ยุ่งเหยิง ซึ่งทำให้การรวมเข้ากับ AI เป็นเรื่องยาก แต่ Sanity ใช้ JSON แบบมีโครงสร้าง ทำให้คอนเทนต์ของคุณพร้อมสำหรับ language models โดยไม่ต้องเสียเวลาทำความสะอาดข้อมูลเพิ่มเติม
ข้อควรระวัง:
Sanity มอบความยืดหยุ่นที่สูงมาก แต่นี่ก็เป็นดาบสองคมเช่นกัน
หากคุณไม่ถือว่าการทำ content modeling เป็นการตัดสินใจทางสถาปัตยกรรมที่สำคัญ คุณจะสร้างความวุ่นวายขึ้นมา คุณต้องวางแผนประเภทของ document และกฎการตั้งชื่อ (naming conventions) ก่อนที่จะเริ่ม นอกจากนี้ คุณยังต้องเผื่อเวลาในการสร้างประสบการณ์การใช้งานที่ราบรื่นให้กับบรรณาธิการของคุณด้วย
Sanity คือรากฐาน ไม่ใช่ผลิตภัณฑ์ที่สำเร็จรูป
หากคุณต้องการเครื่องมือที่เติบโตไปพร้อมกับความต้องการทางเทคนิคของคุณ แทนที่จะต้องมาคอยต่อสู้กับมัน นี่คือคำตอบ
Source: https://dev.to/fredcorr/sanity-and-the-case-for-a-cms-that-thinks-like-a-developer-547i
Optional learning community: https://t.me/GyaanSetuAi
