Repolode
Tencent

Tencent/omi

Omi는 재사용 가능한 커스텀 요소를 만들기 위한 JSX, signal 기반 반응성, 라우터, Tailwind 지원을 갖춘 Web Components 프레임워크입니다.

스타
13,276
포크
1,256
열린 이슈
68
마지막 커밋
15일 전

어떤 프로젝트인가요?

Omi는 브라우저의 네이티브 커스텀 요소 표준인 Web Components를 만들기 위한 프레임워크입니다. 컴포넌트는 @tag('counter-demo') 같은 데코레이터로 정의하고 JSX로 렌더링하므로, 커스텀 요소를 지원하는 일반 HTML, Vue, React 또는 다른 환경에서 사용할 수 있습니다.

상태는 signal 기반 반응형 시스템인 reactive-signal 패키지로 관리합니다. signal의 값이 바뀌면 해당 signal에 의존하는 UI만 업데이트됩니다. 코어 패키지에는 함수형 컴포넌트, Suspense, 디렉티브, 스타일 관리를 위한 Constructable Stylesheets도 포함되어 있습니다. 선택 패키지로 라우터, 폼 솔루션(omi-form), UI 컴포넌트와 아이콘 모음을 추가할 수 있습니다.

omi-cli를 통해 CLI 프로젝트 스캐폴딩을 제공하며, TypeScript, JavaScript 템플릿과 Router, Signal, Suspense, Tailwind CSS가 포함된 SPA 설정 템플릿을 지원합니다. 저장소는 모노레포로, 스타터 키트와 스네이크 게임 같은 예제 앱도 포함합니다.

핵심 기능

  • 01@tag 데코레이터로 커스텀 요소를 정의하고 JSX로 렌더링합니다.
  • 02signal 기반 반응성으로 값이 바뀐 부분에 의존하는 UI만 업데이트합니다.
  • 03코어 프레임워크에 함수형 컴포넌트, Suspense, 디렉티브가 포함되어 있습니다.
  • 04컴포넌트 스타일을 관리하고 공유하는 Constructable Stylesheets를 지원합니다.
  • 05라우터, 폼, UI 컴포넌트를 위한 공식 패키지를 제공합니다.
  • 06omi-cli로 Vite 기반 TypeScript 또는 JavaScript 프로젝트를 스캐폴딩할 수 있습니다.

활용 사례

  • Vue, React 또는 일반 HTML에서 모두 사용할 수 있는 재사용 가능한 UI 컴포넌트 구축.
  • 제공되는 템플릿으로 라우팅, signal, Tailwind CSS를 활용한 싱글 페이지 앱 제작.
  • omi-form 패키지를 사용해 폼이 많은 인터페이스 구축.

빠른 시작

  1. 1

    npm으로 omi 패키지를 설치합니다

    npm i omi
  2. 2

    새 Omi + Vite + TS 프로젝트를 만듭니다

    npx omi-cli init my-app
  3. 3

    프로젝트 폴더로 이동합니다

    cd my-app
  4. 4

    개발 서버를 시작합니다

    npm start

사용 전 알아둘 점

  • 저장소 메타데이터에는 인식된 라이선스가 없다고(NOASSERTION) 표시되어 있지만, README에는 MIT라고 나와 있습니다. 사용하기 전에 라이선스 파일을 확인하세요.

토픽

자주 묻는 질문

omi은(는) 무엇인가요?
Omi는 재사용 가능한 커스텀 요소를 만들기 위한 JSX, signal 기반 반응성, 라우터, Tailwind 지원을 갖춘 Web Components 프레임워크입니다. Omi는 브라우저의 네이티브 커스텀 요소 표준인 Web Components를 만들기 위한 프레임워크입니다. 컴포넌트는 @tag('counter-demo') 같은 데코레이터로 정의하고 JSX로 렌더링하므로, 커스텀 요소를 지원하는 일반 HTML, Vue, React 또는 다른 환경에서 사용할 수 있습니다.
omi은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
omi은(는) Other 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
omi은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. omi의 마지막 커밋은 2026년 10월 10일입니다.
omi은(는) 어디에 사용할 수 있나요?
Vue, React 또는 일반 HTML에서 모두 사용할 수 있는 재사용 가능한 UI 컴포넌트 구축. 제공되는 템플릿으로 라우팅, signal, Tailwind CSS를 활용한 싱글 페이지 앱 제작. omi-form 패키지를 사용해 폼이 많은 인터페이스 구축.
omi는 어떻게 설치하나요?
npm으로 omi 패키지를 설치합니다: npm i omi 새 Omi + Vite + TS 프로젝트를 만듭니다: npx omi-cli init my-app 프로젝트 폴더로 이동합니다: cd my-app 개발 서버를 시작합니다: npm start
omi은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/Tencent/omi

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트