0.1.0 β€’ Published 12 months ago

@devskyui/react-video-thumbnail-extractor v0.1.0

Weekly downloads
-
License
MIT
Repository
github
Last release
12 months ago

@devskyui/react-video-thumbnail-extractor

πŸ“Œ λ³Έ README.md νŒŒμΌμ€ ν”„λ‘œμ νŠΈμ— κ΄€ν•œ μ΅œμ†Œν•œμ˜ λ‚΄μš©μ„ λ‹΄κ³  μžˆμŠ΅λ‹ˆλ‹€. 보닀 μžμ„Έν•œ λ‚΄μš©μ€ yarn docs, yarn dev μ»€λ§¨λ“œλ₯Ό μ‹€ν–‰ν•˜μ…”μ„œ 확인해 μ£Όμ‹œκΈ° λ°”λžλ‹ˆλ‹€.

μ†Œκ°œ

@devskyui/react-video-thumbnail-extractorλŠ” React 기반 ν”„λ‘œμ νŠΈμ—μ„œ λΉ„λ””μ˜€ νŒŒμΌλ‘œλΆ€ν„° 썸넀일을 μ†μ‰½κ²Œ μΆ”μΆœν•  수 μžˆλŠ” μ»΄ν¬λ„ŒνŠΈμž…λ‹ˆλ‹€. 이 λΌμ΄λΈŒλŸ¬λ¦¬λŠ” μ‚¬μš©μž κ²½ν—˜ ν–₯상을 μœ„ν•΄ μ„€κ³„λ˜μ—ˆμœΌλ©°, μ»€μŠ€ν„°λ§ˆμ΄μ§• κ°€λŠ₯ν•œ μ—λŸ¬ 핸듀링, λ‹€κ΅­μ–΄ 지원 λ©”μ‹œμ§€, λ°˜μ‘ν˜• λ””μžμΈμ„ μ œκ³΅ν•©λ‹ˆλ‹€. λ˜ν•œ κ°„λ‹¨ν•˜κ³  직관적인 APIλ₯Ό μ œκ³΅ν•©λ‹ˆλ‹€.


βš™οΈ μ£Όμš” κΈ°λŠ₯

  • λΉ„λ””μ˜€ νŒŒμΌμ—μ„œ μ—¬λŸ¬ 썸넀일 μΆ”μΆœ κ°€λŠ₯
  • 가볍고 μ‚¬μš©μ΄ κ°„νŽΈν•œ ꡬ쑰
  • Modalν˜• UI와 일반 νŽ˜μ΄μ§€ λ‚΄ μ‚½μž…ν˜• UI λͺ¨λ‘ 제곡
  • λ°˜μ‘ν˜• λ””μžμΈ, μŠ€νƒ€μΌ μˆ˜μ •μ΄ μ‰¬μš΄ Tailwind CSS ν™œμš©
  • Blob, Base64 두 κ°€μ§€ λ°©μ‹μ˜ URL 제곡
  • λ‹€μ–‘ν•œ 에디터 μ œμ•½ 없이 μ™ΈλΆ€ 연동 및 μ»€μŠ€ν„°λ§ˆμ΄μ§•μ΄ μ‰¬μš΄ 섀계
    • 에디터 μš©λ„ μ™Έλ‘œλ„ λ¬΄ν•œ ν™•μž₯ κ°€λŠ₯
    • κΈ€λ‘œλ²Œ λŒ€λΉ„ μ—λŸ¬ 핸듀링 λ©”μ‹œμ§€ 지원
  • νƒ€μž… μΉœν™”μ  ν”„λ‘œμ νŠΈ

😊 μ‹€ν–‰ μ•ˆλ‚΄

이 ν”„λ‘œμ νŠΈλŠ” Yarn Classic (1.22.0 이상)을 ꢌμž₯ν•©λ‹ˆλ‹€.

yarn, npm, pnpm λͺ¨λ‘ μ‚¬μš© κ°€λŠ₯ν•˜λ©°, Node.js 20.18.0을 κΈ°μ€€μœΌλ‘œ μ œμž‘λ˜μ—ˆμŠ΅λ‹ˆλ‹€. 각 μ»€λ§¨λ“œλ₯Ό μ‹€ν–‰ν•˜λ©΄ https ν™˜κ²½μ—μ„œ 열리도둝 mkcertλ₯Ό ν™œμš©ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

URLDescriptionCommand
https://localhost:3032예제 데λͺ¨ νŽ˜μ΄μ§€yarn dev
https://localhost:3033/react-video-thumbnail-extractor/κ°€μ΄λ“œ λ¬Έμ„œyarn docs

1. νŒ¨ν‚€μ§€ μ„€μΉ˜

node -v μ»€λ§¨λ“œλ‘œ Node.js 버전을 확인 ν›„ μ‹€ν–‰ν•΄ μ£Όμ„Έμš”.

# yarn μ„€μΉ˜
npm install -g yarn

# 싀행에 ν•„μš”ν•œ νŒ¨ν‚€μ§€ μ„€μΉ˜
yarn install

2. 데λͺ¨ App μ‹€ν–‰

yarn dev

3. κ°€μ΄λ“œ λ¬Έμ„œ μ—΄λžŒ

κΈ°λŠ₯ μ •μ˜, Props νƒ€μž…μ— κ΄€ν•œ λ‚΄μš©μ€ μ•„λž˜ λ¬Έμ„œμ—μ„œ 확인해 μ£Όμ„Έμš”.

yarn docs

4. λͺ¨λ“ˆ λΉŒλ“œ

λ°°ν¬ν•˜κΈ° μœ„ν•œ νŒŒμΌμ„ λΉŒλ“œν•©λ‹ˆλ‹€. /src 폴더 λ‚΄ νŒŒμΌμ„ 기반으둜 /dist νŒŒμΌμ— λΉŒλ“œ μ‚°μΆœλ¬Όμ„ μ €μž₯ν•©λ‹ˆλ‹€. ESM, CommonJSλ₯Ό λͺ¨λ‘ μ§€μ›ν•©λ‹ˆλ‹€.

yarn build
dist/
β”œβ”€β”€ index.d.ts
β”œβ”€β”€ style.css
β”œβ”€β”€ react-video-thumbnail-extractor.es.js
β”œβ”€β”€ react-video-thumbnail-extractor.umd.js

πŸ“‚ 폴더 ꡬ쑰 μ•ˆλ‚΄

/docs

Reactμ—μ„œ λ™μ˜μƒ 썸넀일 μΆ”μΆœ λͺ¨λ“ˆμ„ μ‚¬μš©ν•˜λŠ” 방법을 담은 κ°€μ΄λ“œ λ¬Έμ„œ μ†ŒμŠ€μž…λ‹ˆλ‹€. VitePressλ₯Ό ν™œμš©ν–ˆμŠ΅λ‹ˆλ‹€.

/examples

React ν”„λ‘œμ νŠΈ 개발 μ‹œ @devskyui/react-video-thumbnail-extractor λͺ¨λ“ˆμ„ μ„€μΉ˜ν–ˆλ‹€λŠ” κ°€μ • ν•˜μ— μ°Έκ³ ν•  수 μžˆλŠ” 예제 μ½”λ“œμž…λ‹ˆλ‹€. 예제용 에디터와 μ—λŸ¬ λ©”μ‹œμ§€ λ…ΈμΆœ 라이브러리둜 React Quill, React Hot Toastλ₯Ό ν™œμš©ν–ˆμŠ΅λ‹ˆλ‹€.

/src

λ™μ˜μƒ 썸넀일 μΆ”μΆœ λͺ¨λ“ˆ @devskyui/react-video-thumbnail-extractor 의 μ½”μ–΄ μ†ŒμŠ€μž…λ‹ˆλ‹€. λΉ„λ””μ˜€ ν”Œλ ˆμ΄μ–΄, μŠ€νƒ€μΌλ§μ— React Player, Tailwind CSS, React Iconsλ₯Ό ν™œμš©ν–ˆμŠ΅λ‹ˆλ‹€.

  • yarn dev μ»€λ§¨λ“œλ‘œ 개발 ν™˜κ²½μ—μ„œ 예제λ₯Ό μ‹€ν–‰ν•œ ν›„, src 폴더 λ‚΄ λͺ¨λ“ˆ μ½”μ–΄ μ†ŒμŠ€λ₯Ό μˆ˜μ •ν•˜λ©΄ examples ν΄λ”μ˜ μ˜ˆμ œμ— μ¦‰μ‹œ λ°˜μ˜λ©λ‹ˆλ‹€.

  • λΉŒλ“œν•˜μ—¬ NPM λ˜λŠ” 사내 Artifactory에 λ°°ν¬ν•œ ν›„, λ‹€μŒμ²˜λŸΌ κ°œλ°œν•  λ•Œ importν•˜μ—¬ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

// examples/src/demos/DemoAdvanced.tsx 파일 일뢀
import type { Thumbnail, ThumbnailValidationResult } from '@devskyui/react-video-thumbnail-extractor';
import { VideoThumbnailExtractorMessages, VideoThumbnailExtractorModal } from '@devskyui/react-video-thumbnail-extractor';

export const DemoAdvanced = () => {
  // ... μƒλž΅
  return (
    <VideoThumbnailExtractorModal
      isOpen={true}
      stepTitle={['λ™μ˜μƒ μ„ νƒν•˜κΈ°', '썸넀일 μΆ”μΆœν•˜κΈ°']}
      maxFileSize={10}
      maxThumbnailLength={4}
      allowedExtensions={['.mp4', '.webm']}
      confirmButtonLabel="μ €μž₯ν•˜κΈ°"
      cancelButtonLabel="μ·¨μ†Œν•˜κΈ°"
      onVideoLoaded={handleLoaded}
      onThumbnailAdded={handleAddedThumbnail}
      onThumbnailRemoved={handleRemovedThumbnail}
      onError={handleError}
      onSuccess={handleSuccess}
      onCancel={() => closeModal()}
    />
  )
}

μ΅œμ’… μˆ˜μ •μΌ: 2024. 12. 11(수)

Copyright Β© 2024-present Haneul Cho