กลับไปหน้า Tools

GetNotes Tools

elastic/eui

Tool นี้คืออะไร

Elastic UI Framework (EUI) คือชุดคอมโพเนนต์ React UI สำหรับสร้างส่วนติดต่อผู้ใช้ (UI) อย่างรวดเร็วที่ Elastic เหมาะสำหรับนักพัฒนาที่ต้องการสร้างแอปพลิเคชัน React ที่มีแบรนด์และสุนทรียภาพแบบ Elastic โดยมีประโยชน์ในการนำคอมโพเนนต์กลับมาใช้ใหม่และรักษามาตรฐานการออกแบบให้สอดคล้องกัน

ข้อมูลโปรเจกต์

ดาว

6.3K

Forks

902

License

ไม่ระบุ

อัปเดต GitHub ล่าสุด

19 ส.ค. 2569

เพิ่มใน GetNotes

17 ส.ค. 2569

Repository

elastic/eui

รูปแบบ

Library / SDK

เหมาะกับงาน

ออกแบบ UI/UX

เหมาะกับอาชีพ

Ecosystem

React · TypeScript

แปลและเรียบเรียงโดย AI

เนื้อหาฉบับภาษาไทย

ใช้อ่านเพื่อทำความเข้าใจเบื้องต้น โปรดตรวจสอบรายละเอียดสำคัญกับเอกสารต้นฉบับด้านล่าง

เฟรมเวิร์ก UI ของ Elastic

Elastic UI Framework คือชุดคอมโพเนนต์ React UI สำหรับสร้างส่วนติดต่อผู้ใช้ (user interfaces) อย่างรวดเร็วที่ Elastic

ดู เว็บไซต์เอกสารฉบับเต็ม ของเรา ซึ่งมีตัวอย่างคอมโพเนนต์มากมายในสุนทรียภาพของเฟรมเวิร์ก EUI และวิธีใช้งานในผลิตภัณฑ์ของคุณ คำถามที่พบบ่อยด้านล่างครอบคลุมคำถามการใช้งานทั่วไป — สำหรับคำถามทั่วไปอื่นๆ เกี่ยวกับ EUI โปรดดูที่ แท็บ Discussions

หมายเหตุ

เรากำลังอยู่ในระหว่างการย้าย repository นี้ไปสู่โครงสร้างแบบ monorepo คุณสามารถค้นหาไฟล์ @elastic/eui ได้ในไดเรกทอรี packages/eui

คำถามที่พบบ่อย

Elastic UI Framework คืออะไร?

Elastic UI Framework (EUI) คือไลบรารีการออกแบบที่ Elastic ใช้เพื่อสร้างแอปพลิเคชัน React ที่ต้องการแบ่งปันแบรนด์และสุนทรียภาพของเรา โดยจะแจกจ่ายคอมโพเนนต์ React UI แบบมีประเภท (typed) และสินทรัพย์คงที่ (static assets) สำหรับใช้ในการสร้างเลย์เอาต์เว็บ นอกจากคอมโพเนนต์ React แล้ว เรายังจัดส่งยูทิลิตี้ธีมและสไตล์ที่สามารถใช้งานได้อย่างอิสระ

เป้าหมายหลักของไลบรารีนี้คือการจัดหาคอมโพเนนต์ UI ที่นำกลับมาใช้ใหม่ได้ ซึ่งสามารถใช้ได้ทั่วทั้งผลิตภัณฑ์เว็บของ Elastic ในฐานะคอมโพเนนต์ React พวกมันช่วยลด CSS ออกจากกระบวนการสร้าง UI ในฐานะแหล่งความจริงเดียว เฟรมเวิร์กนี้ช่วยให้นักออกแบบของเราสามารถเปลี่ยนแปลงสุนทรียภาพของเราได้โดยตรงในโค้ด และการครอบคลุมการทดสอบหน่วย (unit test coverage) สำหรับคอมโพเนนต์ UI ช่วยให้เราสามารถส่งมอบ "API สำหรับส่วนติดต่อผู้ใช้" ที่เสถียรได้

ฉันสามารถใช้ EUI ได้หรือไม่?

โปรดดูคำถามที่พบบ่อยเกี่ยวกับการอนุญาตใช้งานของ Elastic: ฉันกำลังใช้ EUI หรือ Elastic Charts ในแอปพลิเคชันของฉันนอก Kibana สิ่งนี้ส่งผลกระทบต่อฉันอย่างไร?

ทำไม EUI ถึงเป็นโอเพนซอร์ส?

ผลิตภัณฑ์หลายอย่างของ Elastic เป็นโอเพนซอร์สและพึ่งพาไลบรารีนี้ในการทำงาน Elastic UI Framework เริ่มต้นจากการเป็นโฟลเดอร์โค้ดใน Kibana และเราตัดสินใจว่าสามารถนำไปใช้ได้นอกเหนือจากโค้ดเบสนั้น มันมีอยู่เป็นไลบรารีอิสระเพื่อให้สามารถแบ่งปันรูปแบบต่างๆ ระหว่างทีม และมาตรฐานการออกแบบสามารถขยายขนาดได้ทั่วทั้งองค์กรของเรา เนื่องจากผลิตภัณฑ์ส่วนใหญ่ของเราเป็นโอเพนซอร์ส เราจึงปฏิบัติต่อไลบรารีนี้ในลักษณะเดียวกันในแง่ของการเผยแพร่และการสนทนาสาธารณะ แม้ว่าการใช้งานมักจะมุ่งเน้นไปที่ Elastic เองมากกว่า

กลยุทธ์การกำหนดเวอร์ชัน การเผยแพร่ และการอัปเกรดคืออะไร?

เราใช้ semver สำหรับการกำหนดเวอร์ชัน และใช้เพื่อระบุการเปลี่ยนแปลงที่ส่งผลกระทบ (breaking changes) ในการอัปเกรด EUI โดยทั่วไป เราถือว่าการเปลี่ยนแปลง API ในชื่อ prop หรือฟังก์ชันการทำงานของคอมโพเนนต์ที่มีอยู่เป็นเหตุผลสำหรับการเปลี่ยนแปลงที่ส่งผลกระทบ แต่เราไม่ได้ติดตามการเปลี่ยนชื่อ CSS selectors, mixins หรือการเปลี่ยนแปลงสไตล์อื่นๆ ภายใต้ความเข้มงวดเดียวกันนี้

โดยทั่วไป การเผยแพร่จะทำทุกสัปดาห์ตามสิ่งที่อยู่ใน branch main และคุณสามารถอัปเกรดจาก NPM ได้ตามความเหมาะสม

ฉันสามารถมีส่วนร่วมกับ EUI ได้หรือไม่?

ได้! เรายินดีรับ PRs ที่มีส่วนร่วมจากชุมชน โดยเฉพาะอย่างยิ่งเกี่ยวกับคำขอคุณสมบัติที่ทีม EUI อาจไม่มีกำลังคนเพียงพอที่จะดำเนินการได้เอง คุณสามารถค้นหาเอกสารเกี่ยวกับการสร้างและส่งคอมโพเนนต์ใหม่ได้ใน wiki ของเรา

แล้วการรายงานข้อบกพร่องและคำขอคุณสมบัติล่ะ?

รายงานข้อบกพร่องและคำขอคุณสมบัติยินดีเป็นอย่างยิ่ง แต่แผนงานและการจัดลำดับความสำคัญของเราขับเคลื่อนโดยการใช้งานภายในของ Elastic เป็นหลัก

โปรดทราบว่า เพื่อให้ backlog ของเราสามารถจัดการได้และมุ่งเน้นไปที่งานที่เราตั้งใจจะทำให้เสร็จ คำขอคุณสมบัติและปัญหาหนี้ทางเทคนิค (tech debt) ที่ไม่มีการเคลื่อนไหวเป็นเวลาหนึ่งปีจะถูกปิดโดยอัตโนมัติ (ข้อบกพร่องจะยังคงเปิดอยู่หากพิจารณาแล้วว่าสามารถทำซ้ำได้และถูกต้อง)

ตัวนับกิจกรรมนี้สามารถรีเซ็ตแบบอ่อนได้โดยการแสดงความคิดเห็นในประเด็นนั้นโดยตรง แต่โปรดทำอย่างมีสติ เราขอให้คุณแจ้งทีม EUI ล่วงหน้าว่าทำไมคำขอนี้จึงสำคัญสำหรับคุณ หรือส่งผลกระทบต่อคุณหรือผู้ใช้ของคุณอย่างไร เพื่อช่วยให้เราจัดลำดับความสำคัญได้อย่างเหมาะสม

ทีม EUI เช่นเดียวกับคนอื่นๆ มีเวลาและทรัพยากรที่จำกัด และเป็นไปไม่ได้ที่เราจะนำทุกงานหรือคุณสมบัติที่ร้องขอไปใช้งาน อย่างไรก็ตาม นั่นคือความสวยงามของโอเพนซอร์ส — หากคำขอของคุณสำคัญสำหรับคุณ เราขอแนะนำอย่างยิ่งให้คุณ มีส่วนร่วมโค้ดโดยตรงกับ EUI เพื่อแก้ไขปัญหาหรือคำขอของคุณ!

ฉันมีคำถามเพิ่มเติม!

ทีม EUI มีคำถามที่พบบ่อยอย่างต่อเนื่องสำหรับคำถามที่เกิดขึ้นชั่วคราวหรือเฉพาะคอมโพเนนต์ โปรดดูส่วน FAQ ใน GitHub discussions ของเราที่นี่

Wiki

เอกสาร wiki ของเรามีคำแนะนำและแนวทางปฏิบัติในหลายด้านของการใช้งานและการพัฒนา EUI ซึ่งมีรายละเอียดมากเกินไปสำหรับ README เริ่มต้น สำหรับข้อมูลเพิ่มเติม โปรดดูที่:

ใบอนุญาต

อนุญาตภายใต้สองใบอนุญาต: Elastic v2 และ Server Side Public License, v1 ดู คำถามที่พบบ่อยเกี่ยวกับการอนุญาตใช้งาน ของ Elastic สำหรับรายละเอียด

เอกสารโปรเจกต์

อ่านเอกสารต้นฉบับ

README วิธีติดตั้ง วิธีใช้งาน และข้อกำหนดจาก repository ต้นฉบับ

ดูไฟล์บน GitHub

Elastic UI Framework

The Elastic UI Framework is a collection of React UI components for quickly building user interfaces at Elastic.

Check out our full documentation site which contains many examples of components in the EUI framework aesthetic, and how to use them in your products. Our FAQ below covers common usage questions — for other general questions regarding EUI, check out the Discussions tab.

หมายเหตุ

We're in the process of migrating this repository to a monorepo structure. You can find @elastic/eui files in the packages/eui directory.

Frequently Asked Questions

What is the Elastic UI Framework?

The Elastic UI Framework (EUI) is a design library in use at Elastic to build React applications that need to share our branding and aesthetics. It distributes typed UI React components and static assets for use in building web layouts. Alongside the React components, we ship theme & style utilities that can be used independently on their own.

The primary goal of this library is to provide reusable UI components that can be used throughout Elastic's web products. As React components, they remove CSS from the process of building UIs. As a single source of truth, the framework allows our designers to make changes to our aesthetic directly in the code. And unit test coverage for the UI components allows us to deliver a stable "API for user interfaces".

Can I use EUI?

Please see Elastic's licensing FAQ: I’m using EUI or Elastic Charts in my application outside of Kibana, how does this affect me?

Why is EUI open source?

Many of Elastic's products are open source and rely upon this library to function. The Elastic UI Framework began as a folder of code in Kibana and we decided it could be used beyond that codebase. It exists as an independent library so that patterns can be shared across teams and design standards can be scaled across our organization. Since most of our products are open source, we treat this one similarly as far as public publishing and conversation even if its usage tends to focus more inward towards Elastic itself.

What is the versioning, release, and upgrade strategy?

We use semver for versioning and use that to denote breaking changes in EUI upgrades. Traditionally we consider API changes in our prop names or existing component functionality to be a reason for a breaking change, but do not track the renaming of CSS selectors, mixins or other style changes under this same rigor.

Traditionally releases are made weekly against whatever is in the main branch and you can upgrade from NPM as you see fit.

Can I contribute to EUI?

Yes! We welcome community-contributed PRs, especially around feature requests that the EUI team may not have bandwidth to carry out alone. You can find documentation around creating and submitting new components in our wiki.

What about reporting bugs and feature requests?

Bug reports and feature requests are most welcome, but our roadmap and prioritization are driven primarily by internal Elastic usage.

Please note that in order to keep our backlog manageable and focused on tasks we intend to complete, feature requests & tech debt issues that are inactive for a year will be auto-closed (bugs will remain open if determined to be reproducible and valid).

This activity counter can be soft reset by commenting on the issue directly, but please do so mindfully. We would ask that you proactively let the EUI team know why this request matters to you or how it impacts you or your users, in order to help us prioritize accordingly.

The EUI team, like everyone else, has a finite amount of time and resources, and it is not humanly possible for us to implement every task or feature requested of us. However, that's where the beauty of open source comes in - if your request is important to you, we strongly encourage you to contribute code directly to EUI that addresses your issue or request!

I have more questions!

The EUI team has ongoing FAQs for more transient or component-specific questions. Please see the FAQ section in our GitHub discussions here.

Wiki

Our wiki docs contain instructions and guidelines on multiple areas of EUI usage and development that are too detailed for an initial README. For more information, see:

License

Dual-licensed under Elastic v2 and Server Side Public License, v1. See Elastic's licensing FAQ for details.

#css-in-js#design-system#elasticsearch#eui#kibana#react