ワンクリックで
create-api-hook
useGetXxx 패턴에 따라 새 React Query API 훅을 생성합니다. 새 백엔드 API를 연동하거나, 엔드포인트에 대한 훅이 필요하거나, 데이터 페칭 로직을 추가할 때 반드시 이 스킬을 사용하세요.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
useGetXxx 패턴에 따라 새 React Query API 훅을 생성합니다. 새 백엔드 API를 연동하거나, 엔드포인트에 대한 훅이 필요하거나, 데이터 페칭 로직을 추가할 때 반드시 이 스킬을 사용하세요.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
현재 작업 중인 PR에 달린 코드 리뷰를 확인하고, 타당한 리뷰는 코드를 고쳐 반영(커밋·푸시·PR 갱신)하고, 부당한 리뷰는 이유를 설명하며 무시합니다. PR 리뷰 코멘트를 반영하거나, 리뷰 피드백에 대응하거나, "리뷰 반영", "리뷰 적용", "코드리뷰 처리"를 요청할 때 반드시 이 스킬을 사용하세요.
영어와 한국어 로케일 파일 모두에 i18n 번역 키를 추가합니다. 사용자 노출 문자열을 추가하거나, 번역 키가 누락되었거나, 새 UI 텍스트를 국제화할 때 반드시 이 스킬을 사용하세요.
프로젝트의 shadcn/ui + Tailwind 패턴에 따라 새 React 컴포넌트를 생성합니다. UI 프리미티브(버튼, 다이얼로그 등) 또는 도메인 컴포넌트(ServerMap, Inspector 등)를 새로 만들 때 반드시 이 스킬을 사용하세요.
Pinpoint 프로젝트 패턴에 따라 새 페이지를 생성합니다. 애플리케이션에 새 라우트/페이지를 추가하거나, 새 화면을 만들거나, 기존 라우팅 구조에 페이지를 추가할 때 반드시 이 스킬을 사용하세요.
web-frontend, web, web-starter Maven 모듈을 skipTests 옵션으로 순차 빌드합니다.
Pinpoint 프론트엔드 PR 전 QA 게이트. 빌드/테스트를 실행하고 변경된 코드에 대한 동작 QA를 수행합니다. 커밋하거나 PR을 올리기 전에 반드시 이 스킬을 먼저 실행하세요.
SOC 職業分類に基づく
| name | create-api-hook |
| description | useGetXxx 패턴에 따라 새 React Query API 훅을 생성합니다. 새 백엔드 API를 연동하거나, 엔드포인트에 대한 훅이 필요하거나, 데이터 페칭 로직을 추가할 때 반드시 이 스킬을 사용하세요. |
$ARGUMENTS 설명을 가진 $0 엔드포인트에 대한 새 API 훅을 생성합니다.
다음 단계를 따르세요:
packages/ui/src/hooks/api/reactQueryHelper.ts를 읽어 queryFn과 queryClient 이해packages/ui/src/constants/EndPoints.ts에서 엔드포인트 네이밍 확인packages/ui/src/hooks/api/의 유사한 기존 훅에서 패턴 파악packages/ui/src/constants/EndPoints.ts에 엔드포인트 상수 추가:
export const NEW_ENDPOINT = `/api/path/to/endpoint`;
packages/ui/src/constants/types/에 타입 생성 또는 확장:
export namespace GetNewData {
export interface Parameters {
applicationName: string;
from: number;
to: number;
// ... 기타 파라미터
}
export interface Response {
// ... 응답 형태
}
}
packages/ui/src/constants/types/index.ts에서 익스포트.
packages/ui/src/hooks/api/useGetNewData.ts 생성:
import { useQuery } from '@tanstack/react-query';
import { END_POINTS, GetNewData } from '@pinpoint-fe/ui/src/constants';
import { convertParamsToQueryString } from '@pinpoint-fe/ui/src/utils';
import { queryFn } from './reactQueryHelper';
export const useGetNewData = (params: GetNewData.Parameters) => {
const queryString = convertParamsToQueryString(params);
return useQuery<GetNewData.Response>({
queryKey: [END_POINTS.NEW_ENDPOINT, queryString],
queryFn: queryFn(`${END_POINTS.NEW_ENDPOINT}?${queryString}`),
enabled: !!params.applicationName,
gcTime: 30000,
});
};
packages/ui/src/hooks/api/index.ts (또는 해당하는 배럴 파일)에서 익스포트.
enabled 사용reactQueryHelper.ts의 queryFn 사용 — 직접 fetch를 구현하지 마세요useQuery 대신 useMutation 사용gcTime: 0 설정, 부드러운 전환을 위해 placeholderData: (prev) => prev 사용