React용 400B 클립보드 라이브러리를 만들었습니다 (agnostic core 포함)

발행: (2026년 3월 25일 PM 06:18 GMT+9)
3 분 소요
원문: Dev.to

Source: Dev.to

Introduction

클립보드에 복사하는 것은 간단해 보이지만… 제대로 하려면 쉽지 않습니다.
권한, 비동기 API, 브라우저 quirks, 그리고 UI 피드백 때문에 한 줄로 끝나야 할 작업이 불필요한 보일러플레이트가 되곤 합니다.

lite-clipboard은 프레임워크에 구애받지 않는 코어와 React 훅을 제공하는, 아주 작고 의존성이 없는 클립보드 라이브러리입니다.

  • 코어를 어디서든 사용 가능 (vanilla JS, Vue, Svelte 등)
  • React 경험을 깔끔하게 제공하는 훅 사용

React Hook

import { useClipboard } from 'lite-clipboard';

function CopyButton({ text }) {
  const { copied, copy } = useClipboard();

  return (
     copy(text)}>
      {copied ? 'Copied!' : 'Copy'}
    
  );
}

간단하고, 반응형이며, 보일러플레이트가 없습니다.

Core (Framework‑agnostic)

React를 사용하지 않는다면:

import { copy } from 'lite-clipboard/core';

await copy("Hello world");

프레임워크가 필요 없습니다.

Comparison

LibrarySizeDependenciesReact HookAgnostic Core
lite-clipboard~0.4 KB0
clipboard.js~2.4 KB1
copy-to-clipboard~1.1 KB0⚠️
  • Core first → 로직이 프레임워크와 독립적
  • Thin adapters → React는 단순히 래퍼일 뿐
  • Minimal footprint → 바이트 하나하나가 중요
  • Better DX → 코드가 적고, 버그가 적음

Features

  • React 훅 ~400 bytes, 코어 ~250 bytes
  • 의존성 0개
  • 적절한 권한 처리를 포함한 비동기 API
  • 빠른 로딩을 위한 작은 번들 사이즈
  • GitHub:
  • npm:
  • Product Hunt:

유용하다고 생각하시면 Product Hunt에서 지원해 주시면 정말 감사하겠습니다 🙌. 피드백, 댓글, 혹은 단순한 찬성표도 큰 도움이 됩니다!

0 조회
Back to Blog

관련 글

더 보기 »

j.s에서 looping이란 무엇인가

JavaScript에서 루프는 같은 코드를 반복해서 작성하지 않고도 동일한 작업을 계속 수행하고 싶을 때 유용합니다. 유형…

소수

소수란 무엇인가? 중요한 참고 사항 - 1 이하의 숫자는 소수가 아니다 JavaScript javascript let num = Numberprompt'Enter a number: '; let div...

나는 Httpx를 포크했습니다

제공된 URL에서 내용을 가져올 수 없어 요청하신 대로 기사를 정리하고 포맷할 수 없습니다. 기사 텍스트를 직접 제공해 주시면...