spin-frontend/src/main.tsx
theorose49 7cab590fe2
All checks were successful
build-and-push / build (push) Successful in 36s
feat: spin 프론트엔드 전체 구현 (React+TS+Vite+Tailwind)
- AppShell·사이드바(역할별 네비)·탑바·UI킷, react-query·axios·recharts·dnd-kit
- SP 디자인 토큰 재사용(navy/canvas/Noto Sans KR) + 회계용 고밀도 확장
- 페이지: 대시보드, 근무(타임시트·휴가/초과 신청), 프로젝트 목록/상세
  (간트·칸반·캘린더·작업자portion·업체담당자·계약/분할입금 admin),
  인센티브(유저 대시보드), 인센티브 관리 콘솔(단계 stepper·시뮬레이터·오버라이드),
  회계(현금-인센티브 갭·원장·세금), 구성원·설정·승인·프로필
- 권한 가드: 관리자 전용 라우트, ?as=user 로 구성원 시점 미리보기

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-28 08:57:50 +09:00

27 lines
649 B
TypeScript

import React from "react";
import ReactDOM from "react-dom/client";
import { BrowserRouter } from "react-router-dom";
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
import App from "./App";
import "./index.css";
const queryClient = new QueryClient({
defaultOptions: {
queries: {
retry: 1,
refetchOnWindowFocus: false,
staleTime: 30_000,
},
},
});
ReactDOM.createRoot(document.getElementById("root")!).render(
<React.StrictMode>
<QueryClientProvider client={queryClient}>
<BrowserRouter>
<App />
</BrowserRouter>
</QueryClientProvider>
</React.StrictMode>
);