체험 모드: 모든 데이터는 가상이며 저장되지 않습니다.

EOE 둘러보기

5~15명 규모 취업 스터디의 매일 10시 인증, 코딩테스트, 자소서 피드백, 모의면접을 한곳에서 운영하는 사이트입니다. 2026년 7월에 만들기 시작해 실제 스터디에서 쓰고 있어요. 이 둘러보기는 가상의 멤버 6명이 활동 중인 모습을 그대로 보여주며, 무엇을 눌러도 저장되지 않습니다.

당신은 가상 멤버 ‘나 (체험)’로 로그인한 상태예요.

기능 둘러보기

관리자는 여기에 더해 가입 승인, 벌금 부과와 납부 처리, 코테 주차와 문제 등록을 할 수 있어요.

기술적으로 공들인 점

승인제 가입 + Postgres RLS

가입하면 관리자가 승인할 때까지 대기 화면만 보입니다. 화면 단의 리다이렉트와 별개로, 승인된 멤버만 행을 읽고 쓸 수 있다는 규칙을 DB의 Row Level Security로 한 번 더 강제합니다.

GitHub 푸시 → 코테 자동 체크

GitHub 웹훅의 HMAC 서명을 검증한 뒤, 푸시한 사람의 GitHub 아이디로 멤버를, 바뀐 파일 경로에 든 키워드로 문제를 찾아 완료 처리합니다. 본인이 직접 누른 완료와는 source 컬럼으로 구분해 배지를 다르게 보여줍니다.

Next.js 16 Cache Components로 즉시 이동

'use cache'와 태그 단위 무효화로 탭 이동을 즉시 처리합니다. 도입 중 revalidatePath가 같은 경로의 다른 캐시까지 모두 버린다는 사실을 프레임워크 코드에서 찾아내, 쓰기마다 해당 날짜의 태그만 무효화하도록 바꿨습니다.

벌금 자동 계산과 정산

10시 이후 인증은 기본 10,000원에 5분마다 1,000원씩 붙습니다. 지각 벌금과 관리자가 매긴 벌금을 월별로 합쳐 미납액을 보여줍니다.

기술 스택

GitHub 저장소 · 만든 사람 @Kimd0ng