CleanFrame
삼성 The Frame용 개인 홈 화면, 포크와 맞춤을 위한 시작점
워싱턴 하이츠에서 먹고, 걷고, 사는 곳: 도미니카니 빵집, 심야 음식, 하이 브리지, 촬영지, 언덕을 이기는 엘리베이터
Where to eat, walk and live in Washington Heights: Dominican bakeries, late-night food, the High Bridge, film locations and the elevators that beat the hills. By a neighbor, in English y en español.
라이프스타일GitHub @kelanb18온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
저장소 정보는 아직 수집하지 않았습니다.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
A curated directory of the best spots in Washington Heights, NYC (Astro static site)
README 전체를 불러오는 중입니다.
README 전문 보기 ↗A fast, static guide to Washington Heights, NYC — roughly West 155th Street to the Dyckman edge of Inwood. Restaurants, cafes, bakeries, bars, shops, services, and landmarks, plus notes on smaller areas and on people and events tied to the neighborhood. Listings, areas, and people are Markdown files. Adding one is a new file and a commit.
The site is Astro with fully static output, TypeScript, and no UI framework. A bad listing fails npm run build.
Requires Node.js 22.23.4 or newer (see .nvmrc).
npm install
npm run dev
Open the URL Astro prints (usually http://localhost:4321).
Dev shows entries marked example: true or draft: true, with a banner. The EXAMPLE places, the EXAMPLE area, and the EXAMPLE person are fiction: example.com URLs and 555 phone numbers where a listing has them. They are not real places, sections, or people.
npm run build
That runs astro check and then astro build. Output is the dist/ folder.
example: true and draft: true entries are left out of this build. Category, area, and people pages still exist so the first real file has somewhere to land.
npm run preview
Serves dist/ locally.
To preview a production build that still includes the placeholder entries (do not deploy this):
npm run build:examples
The project is deployed as a static site on Vercel.
npm run build.dist.SITE environment variable to the public origin, with no trailing slash, for Production (and Preview, if you want those URLs to match). Example: https://washingtonheightsguide.com.INCLUDE_EXAMPLES unset.No vercel.json and no adapter. Astro’s static output is the whole site. Canonical URLs, Open Graph tags, robots.txt, and the sitemap are baked in at build time, so change SITE and rebuild when the domain changes.
The default origin, when SITE is unset, is https://washingtonheightsguide.com.
The footer newsletter signup uses Buttondown's standard HTML subscription form and points to buttondown.com/washingtonheightsguide. The public username is configured in src/components/SiteFooter.astro; never put account passwords or API keys in the site.
One place, one file:
src/content/listings/<slug>.md
The filename is the slug and the URL. src/content/listings/fort-washington-cafe.md becomes /places/fort-washington-cafe/.
Filename rules:
fort-washington-cafe.mdsrc/content/listings/, not in a subfolderCopy templates/listing.md rather than inventing the shape. After the first npm run dev or npm run build, Astro writes a JSON Schema to .astro/collections/listings.schema.json. The template points at it for editor hints.
Frontmatter is YAML between --- lines. The schema is strict: an unknown key fails the build. Use true and false, not yes and no. When you set priceLevel, quote it because of the dollar signs. Omit optional keys you do not know. Do not leave them empty, and do not guess.
| Field | What to put |
|---|---|
name | Page title. Placeholder listings must contain the word EXAMPLE. A real listing must not. |
description | Search and social summary. 40–170 characters. This is not the verdict. |
category | restaurant, cafe, bakery, bar, shop, service, or landmark. Use landmark for a park, museum, or other place that is not one of the other categories. |
cuisine | Required for restaurant, cafe, bakery, and bar. What they are known for serving, such as Coffee or Dominican. Omit on shops, services, and landmarks unless it truly applies. It also becomes a tag page. |
address | Street address only. The site adds New York, NY. |
crossStreets | Nearest crossing, such as W 181st St & St. Nicholas Ave. |
lastVerified | Date you checked the address, hours, and that it was open. 2026-10-01. Not in the future. |
verdict | One-line opinion, 12–160 characters. Shown under the name. Not for sale. |
neighborhood defaults to Washington Heights when omitted. example, draft, sponsored, and pick default to false.
여기까지가 README 앞부분입니다. 나머지는 원문에서 읽을 수 있습니다. README 전문 보기 ↗