daangn/plantae

다양한 HTTP 클라이언트(Fetch, Ky, Axios)에 동일한 미들웨어를 적용하는 경량 제너레이터

개발 재료맘대로 써도 됨 · MIT웹·Next.js·풀스택TypeScript난이도
72+0이번 주0
1포크0이슈

중간맛 분석

스택: TypeScript, 의존성 없음 | 난이도: 낮음~중간 | 바로 쓸 수 있나: 네, 설치 후 플러그인 작성 + 클라이언트 래핑으로 즉시 사용 가능 | 공식 플러그인: @plantae/plugin-retry, @plantae/plugin-timeout 제공. Request/Response 훅(beforeRequest, afterResponse) 기반이라 인증, 로깅, 에러 핸들링 등을 플러그인으로 확장하기 쉬움.

이런 레포예요

이럴 때 쓰면 좋아요

  • SaaS 플랫폼에서 여러 HTTP 클라이언트를 지원할 때 공통 미들웨어 로직을 한 번만 작성하여 유지보수 부담 감소
  • 마이크로서비스 환경에서 인증, 재시도, 타임아웃 정책을 팀 전체 HTTP 요청에 통일하게 적용
  • 기업 API 라이브러리를 개발할 때 사용자의 HTTP 클라이언트 선택지(Fetch/Ky/Axios)를 제약하지 않으면서 일관된 미들웨어 지원

핵심 기능

다중 HTTP 클라이언트 지원 (Fetch, Ky, Axios)플러그인 기반 미들웨어 시스템 (beforeRequest/afterResponse 훅)의존성 없는 경량 라이브러리

대안 대비 차별점

특정 HTTP 클라이언트에 종속되지 않고 여러 클라이언트를 동시에 지원해야 하는 엔터프라이즈 도구 제공자를 위해 설계되었으며, 한 번 작성한 플러그인을 모든 지원 클라이언트에 재사용할 수 있습니다.

바로 시작하기

  1. 패키지 설치
npm install plantae
  1. Fetch 클라이언트 생성 (플러그인 작성)
import { createFetch } from "plantae";

const myAuthPlugin = () => ({
  name: "auth",
  context: { token: "" },
  hooks: {
    beforeRequest: (req) => {
      req.headers.set("Authorization", "Bearer token");
      return req;
    },
  },
});

export const myFetch = createFetch({
  client: fetch,
  plugins: [myAuthPlugin()],
});
  1. 사용
const response = await myFetch("https://api.example.com/data");
const data = await response.json();
  1. Axios 클라이언트 (선택)
import { createAxiosInterceptors } from "plantae/axios";
import axios from "axios";

const myAxios = axios.create();
const { request, response } = createAxiosInterceptors({
  client: myAxios,
  plugins: [myAuthPlugin()],
});

myAxios.interceptors.request.use(request.onFulfilled, request.onRejected);
myAxios.interceptors.response.use(response.onFulfilled, response.onRejected);

별 추이 · 7일

72+0 / 7일

활용성 · 따라 만들기 좋은가

샘플 점수 20/100
  • 관대한 라이선스
  • 테스트 있음
  • 예제 디렉토리
  • 최근 활동
  • AGENTS.md
  • llms.txt
  • 템플릿

⚪ 최근 활동 정보 없음 · 2023년 생성

이 레포에 깃밥 배지 달기

[![깃밥](https://www.gitbap.com/badge/daangn/plantae.svg)](https://www.gitbap.com/r/daangn/plantae)

🔌 클로드에서 바로 써보기

깃밥을 클로드에 연결하면 이런 레포를 클로드·커서·Codex에서 바로 찾고 체험할 수 있어요.

방법 ① 커넥터 URL

클로드 설정 → 커넥터에 이 주소를 붙여넣기.

https://www.gitbap.com/api/mcp
방법 ② 플러그인 (체험까지)

플러그인을 설치하면 /gitbap-trending·/gitbap-try 슬래시 커맨드로 레포를 그 자리에서 체험. Claude Code에서 아래 두 줄을 차례로 실행하세요.

/plugin marketplace add jakeparkcolde/gitbap-cowork
/plugin install gitbap-cowork@gitbap
연결 방법 자세히 →

AI가 README 기반으로 요약했습니다 · 원문 보기