daangn/plantae
다양한 HTTP 클라이언트(Fetch, Ky, Axios)에 동일한 미들웨어를 적용하는 경량 제너레이터
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 클라이언트에 종속되지 않고 여러 클라이언트를 동시에 지원해야 하는 엔터프라이즈 도구 제공자를 위해 설계되었으며, 한 번 작성한 플러그인을 모든 지원 클라이언트에 재사용할 수 있습니다.
바로 시작하기
- 패키지 설치
npm install plantae
- 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()],
});
- 사용
const response = await myFetch("https://api.example.com/data");
const data = await response.json();
- 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/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@gitbapAI가 README 기반으로 요약했습니다 · 원문 보기