WallpaperMachine
당신이 사랑하는 배경화면, 맥에서 새롭게 만나보세요
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
서울에서 이번 주 / 지금 무슨 행사가 있는지 알려주는 웹앱. 두 공공 API가 하루 1회만 갱신되므로 서버 런타임도 DB도 두지 않습니다. 배치가 데이터를 모아 data/*.json으로 커밋하고, 정적 웹앱이 그걸 읽습니다. • 설계: docs/superpowers/specs/2026-08-13-seoul-events-webapp-design.md • 구현 계획: docs/superpowers/plans/2026-08-13-batch-pipeline.md • API 실측: docs/api-findings.md — 필드명·호출 규약의 유일한 근거 .env와 .env.local을 둘 다 읽습니다(나중 것이 이김). 실제 키는 .env.local에 두세요 — 둘 다 .gitignore에 있습니다. 첫 실행은 40분 넘게 걸립니다. 비짓서울 상세 2,199건을 받아야 하고, 그쪽이 레이트 리밋을 500으로 위장해 돌려주기 때문에 400ms 간격이 필요합니다. 캐시(data/cache/visitseoul.json)가 커밋돼 있으므로 이후 실행은 5분 안에 끝납니다. 매일 KST 06:00에 GitHub Actions가 돌며 data/를 갱신 커밋합니다.README 전문 보기 ↗
서울에서 이번 주 / 지금 무슨 행사가 있는지 알려주는 웹앱.
두 공공 API가 하루 1회만 갱신되므로 서버 런타임도 DB도 두지 않습니다.
배치가 데이터를 모아 data/*.json으로 커밋하고, 정적 웹앱이 그걸 읽습니다.
docs/superpowers/specs/2026-08-13-seoul-events-webapp-design.mddocs/superpowers/plans/2026-08-13-batch-pipeline.mddocs/api-findings.md — 필드명·호출 규약의 유일한 근거npm ci
cp .env.example .env.local # API 키 채우기
npm test
npm run batch # data/*.json 생성
npm run batch -- 2026-W33 # 특정 주차 (지난 주차는 거절됨)
.env와 .env.local을 둘 다 읽습니다(나중 것이 이김). 실제 키는 .env.local에 두세요 —
둘 다 .gitignore에 있습니다.
첫 실행은 40분 넘게 걸립니다. 비짓서울 상세 2,199건을 받아야 하고, 그쪽이
레이트 리밋을 500으로 위장해 돌려주기 때문에 400ms 간격이 필요합니다.
캐시(data/cache/visitseoul.json)가 커밋돼 있으므로 이후 실행은 5분 안에 끝납니다.
| 이름 | 설명 |
|---|---|
SEOUL_API_KEY | 서울열린데이터광장 인증키 (발급) |
VISITSEOUL_API_KEY | 비짓서울 API 키 (발급) |
KOPIS_API_KEY | KOPIS 공연예술통합전산망 서비스키 (발급) |
VISITSEOUL_CATEGORIES | 수집 대상 카테고리 (쉼표 구분). 확정 목록은 docs/api-findings.md |
| 파일 | 내용 |
|---|---|
data/events/YYYY-Www.json | 그 주에 열리는 행사 |
data/places.json | "언제 가도 좋은 곳" 후보 (주에 묶이지 않음) |
data/meta.json | 갱신 시각, 소스별 건수 |
data/cache/visitseoul.json | 상세 응답 캐시. 변경분만 다시 받기 위한 것 |
data/cache/kopis.json | KOPIS 상세·시설 캐시와 lastRun. 변경분만 다시 받기 위한 것 |
매일 KST 06:00에 GitHub Actions가 돌며 data/를 갱신 커밋합니다.
레포 Settings → Secrets and variables → Actions에 등록해야 합니다:
SEOUL_API_KEY, VISITSEOUL_API_KEY, KOPIS_API_KEYVISITSEOUL_CATEGORIESTDD로 진행합니다. 계획의 각 태스크에 테스트와 구현이 함께 들어 있습니다.
npm test # 전체
npx vitest run tests/lib/week.test.ts # 파일 하나
npx vitest run tests/lib/week.test.ts -t '연말 경계'
npm run probe # API 실측 스파이크