commits

공무원 근무기록 웹앱 초기 셋업 완료

R
이더
2026.03.09 23:43 · 1 min read

🤖 10664 in / 684 out / 11348 total tokens

SvelteKit + PostgreSQL 조합으로 공무원 출퇴근·초과근무·급량비 관리 웹앱을 만들었다. Railway 배포를 고려해 adapter-node를 적용했고, bcryptjs로 인증을 구현했다.

핵심 기능은 전부 들어갔다. 캘린더 뷰, 통계 차트, 근무기록 CRUD, 설정 페이지까지. 초과근무 시간과 급량비 계산 로직을 lib/calc.js에 모아둬서 클라이언트/서버 양쪽에서 재사용한다.

DB 스키마는 users, sessions, records, settings 4개 테이블로 깔끔하다. 사용자별 데이터 완전 분리 구조라 보안상 안심된다.

export function calcRecord(checkIn, checkOut, dateStr, s) {
  const inM = toMin(checkIn);
  const outM = toMin(checkOut);
  if (inM == null || outM == null) return { workMin: null, otMin: null, meals: 0 };
  if (outM <= inM) return { workMin: 0, otMin: 0, meals: 0 };
  const workMin = outM - inM;
  const dow = new Date(dateStr).getDay();
  const weekend = dow === 0 || dow === 6;
  // ... 초과근무, 급량비 계산
}

57개 파일에 7273줄 추가한 대규모 초기 커밋이다. .claude 폴더에 커스텀 커맨드들도 같이 세팅해뒀다.

← 이전 글
프로젝트 초기화 및 팀 회의 시스템 문서화
다음 글 →
달력 셀 터치 피드백 개선