WallpaperMachine
당신이 사랑하는 배경화면, 맥에서 새롭게 만나보세요
뉴욕시 5구역 300여 개 미술관을 인터랙티브 지도에 표시한다
An interactive map of nearly 300 art galleries across all five NYC boroughs. See which galleries opened a new show this week — and find the ones near you.
라이프스타일HTML · PythonGitHub @JF11579온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
Easy Way to see What Is New
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Live site: nycgallerytracker.com
A free, interactive map of New York City's art galleries — about 235 of them across all five boroughs — that checks every gallery's website each day and flags the ones that have posted something new. Open it to see what's on near you, plan a gallery walk, or get a weekly email of new shows.
/new-shows/ and sent by email to
subscribers every Monday./galleries/) and walking routes
(/routes/) for planning an afternoon of gallery-hopping.Everything runs on a schedule in GitHub Actions and is served as static files by Netlify. There is no server or database — the data lives in this repo.
GitHub Actions (daily, 12:00 UTC)
scraper.py → checks every gallery site, records which ones changed
validate_data.py → stops the build if any data looks wrong
build_site.py → regenerates every page and sitemap.xml
commit + push → Netlify deploys the update automatically
(Mondays) render_weekly_digest.py → emails the weekly digest
If validation fails, the site keeps the previous day's data rather than publishing bad data.
| File | Purpose |
|---|---|
index.html | The homepage: map, directory, sign-up |
data/galleries.json | The gallery dataset (GeoJSON) plus change-tracking state |
scraper.py | Daily change detection across all gallery sites |
validate_data.py | Sanity checks (e.g. coordinates that don't match the address) |
build_site.py | Runs all the page generators in the right order |
render_*.py | Page generators: gallery cards, area pages, guides, routes, digests |
site_common.py | Shared header, footer, styles and analytics for generated pages |
build_gallery_list.py, fetch_google_places.py | One-off tools used to build the gallery list |
.github/workflows/ | Scheduled scrape/build and manual digest send |
Requires Python 3.11.
pip install -r requirements.txt
python scraper.py # optional — hits every gallery website
python validate_data.py
python build_site.py
python -m http.server 8000 # then open http://localhost:8000
The one-off data tools need API keys in environment variables
(MAPBOX_TOKEN, GOOGLE_PLACES_KEY); sending the digest needs
BUTTONDOWN_API_KEY. None of these are needed to build or view the site.
Python (requests, BeautifulSoup, pandas) · Mapbox GL JS · GitHub Actions · Netlify · Buttondown
Gallery missing, closed, or in the wrong place? Please open an issue.