WallpaperMachine
The wallpapers you love. A new home on your Mac.
11월 11일 기준 서울 전시 73개, 무료 65개. 미술관·박물관·갤러리 전시의 기간과 관람료.
Translation pending
LifestyleJavaScript · CSSGitHub @zerosong0613-designOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗오늘전시 — 친구들과 공유하는 서울 전시 정보 사이트. (사이트 이름은 lib/site.mjs의 SITE_NAME)
한국문화정보원_한눈에보는문화정보조회서비스
현재 공유된 정보는 기본 URL 및 기능 목록이다. 요청 파라미터와 응답 필드 명세는 아직 확인하지 않았다.
서버 환경변수 이름은 CULTURE_API_KEY로 정한다. 실제 인증키는 저장소 또는 브라우저 코드에 넣지 않는다. 화면은 서버가 정리한 전시 데이터만 받는다.
공공 API가 서울의 모든 민간 전시를 포함한다고 가정하지 않는다. 원문 링크, 종료일, 서울 소재 여부를 확인하고 중복 전시를 합친다. 정보가 없는 관람료나 휴관일은 추정하지 않는다.
기획 및 API 연결 요구사항을 정리한 초기 저장소. 실행 가능한 사이트 및 배포는 아직 완료되지 않았다.
검색엔진·AI 크롤러·카카오톡 미리보기가 JS 없이도 내용을 읽도록, 페이지는 서버(api/site.js)가 완성된 HTML로 내려준다. 브라우저 JS(app.js, detail.js)는 그 위에서 필터·정렬·위치만 붙인다.
| 주소 | 내용 |
|---|---|
/ | 진행 중 전시 목록, WebSite·ItemList JSON-LD |
/exhibitions/{seq} | 전시 상세, ExhibitionEvent·BreadcrumbList JSON-LD. 끝난 전시는 404 |
/sitemap.xml | 진행 중 전시 전체, lastmod = 수집일 |
/robots.txt | 프로덕션은 전체 허용, 프리뷰는 전체 차단 |
/detail?seq= | 예전 주소. /exhibitions/{seq}로 영구 이동 |
public/common.js 한 곳에 있고 서버와 브라우저가 같이 쓴다.SITE_URL(예: https://example.kr)로 canonical·sitemap 주소를 고정한다.npm run dev (배포 사본 데이터). 실데이터로 보려면 DATA_URL=<운영 주소>/api/exhibitions npm run dev.| 주소 | 내용 |
|---|---|
/ending-soon | 일주일 안에 끝나는 전시 |
/free | 무료 전시 |
/gu/{구} | 구별 전시 (진행 중 전시가 있는 구만) |
/venues/{장소 id} | 전시장: 지금 하는 전시 + 지난 전시 |
/archive | 끝난 전시를 끝난 달별로 |
/me | 내 전시: 가볼래요·다녀왔어요 기록 (브라우저 localStorage, 색인 안 함) |
/about | 소개: 자료 출처, 갱신 시각, 싣지 않는 정보 (AboutPage JSON-LD) |
/llms.txt | AI 도구용 사이트 안내 (정적 파일) |
공유 이미지: 첫 화면·모아 보기·지난 전시·소개는 public/og.png(1200×630) 고정. 전시 상세·전시장은 포스터.
전시 상세 h1 아래 answerText() 한 문장(장소·기간·무료 여부). 소개글이 없으면 JSON-LD description에도 이 문장을 쓴다.
목록 카드 앞 4장은 지연 로딩하지 않고 첫 장은 fetchpriority="high". 카드 제목은 h3.
아카이브: api/collect.js가 매일 수집할 때 직전 수집본과 새 수집본을 Blob archive.json에 합친다(lib/archive.mjs). 끝난 전시 상세는 404 대신 '종료된 전시'로 남는다.
내 전시: public/mine.js(저장), public/mine-ui.js(카드 버튼·상세 패널), public/me.js(내 전시 페이지). 저장할 때 전시 스냅샷을 같이 남겨, 전시가 끝나도 기록이 보인다. 파일 내보내기·불러오기로 기기 이동.