尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证An iOS app to make free parking in NYC easy at a glance
翻译准备中
取自仓库 README
正在加载完整 README。 以下为已保存的摘录。
An iOS app that shows alternate-side parking restrictions on a live map, so you can find free street parking in New York City at a glance.
NYC alternate-side parking rules are notoriously hard to remember — different days, different times, different sides of the street for every block. This app visualizes all of it on the map so you never have to guess.
Color-coded markers appear on every block face that has a no-parking restriction. Each color represents a day of the week. Zoom in to see the full schedule; zoom out to see the whole neighborhood as a dot-per-block overview.查看完整 README ↗An iOS app that shows alternate-side parking restrictions on a live map, so you can find free street parking in New York City at a glance.
NYC alternate-side parking rules are notoriously hard to remember — different days, different times, different sides of the street for every block. This app visualizes all of it on the map so you never have to guess.
Color-coded markers appear on every block face that has a no-parking restriction. Each color represents a day of the week. Zoom in to see the full schedule; zoom out to see the whole neighborhood as a dot-per-block overview.
Mark your car by tapping a block. The app tracks which block you parked on, shows the next date you need to move, and can set a reminder for 8 AM that morning.
Holiday awareness — the app knows NYC's alternate-side parking holiday calendar. If the next restriction day falls on a holiday, it automatically finds the next real enforcement day.
NYCParkingWidgets extension); earlier, a notificationWhatsNew.releases)SegmentIndex.covers), the map stays on NYC with a note, and drive mode says "NO DATA" rather than "no rules"Parking restriction data comes from the NYC Open Data alternate-side parking sign dataset, and meters from ParkNYC Block Faces (hours, limits, rates and zone per metered curb). The app ships with a pre-built SQLite database (segments.db), built offline by scripts/build_segments.py: each sign, and points along each metered curb, are snapped to their block on the NYC street centerline and grouped by block face, giving every face a curb polyline trimmed back from the intersections. Meter hours shared by many curbs are stored once in a meter_profiles table. The dates NYC last updated each dataset are stored too, and shown in the app as "data as of".
Meter holidays come from the same DOT holiday calendar as ASP holidays: each entry says whether meters are in effect.
No-standing and no-stopping signs limited to set hours (rush hour, school days, overnight) are parsed and snapped the same way. "Anytime" signs, bus stops and fire zones mark a stretch of curb whose reach isn't in the data, so they're left to the posted signs. A rule signed only once on a longer block is flagged as covering part of it, shown on the block's sheet but not counted on the map. School days are read as Monday to Friday, since there's no school calendar to narrow them.
| File | Role |
|---|---|
ParkingDataService | Loads every block face from SQLite in the background into a SegmentIndex |
ParkingDatabase | Read-only SQLite wrapper for the bundled segments.db |
ParkingSegment | One block face: street, cross streets, bearing, rules, curb polyline; SegmentIndex grid for spatial queries |
ParkingMapView | MKMapView wrapper: vector stripe/dot overlays, rotating pill annotations with overlap culling, tap hit-testing, draggable parked car |
ParkingLabel | SwiftUI pill design, rendered once per unique label into a cached image |
MoveCountdown | Days-until-move per block (holiday-aware) and the countdown color buckets |
CurbRules | Day windows, no-standing / no-stopping rules, and the move-or-pay windows countdowns and reminders run on |
Meters | Meter profiles, free/paid/commercial-only status at a moment, and the ParkNYC hand-off |
DayParking | A planned stay, each block's free / paid / commercial / no-parking verdict for it, and the planner |
SignParser | Parses raw NYC sign descriptions into structured ParkingRule objects |
ASPHolidayService | Fetches and caches the NYC ASP holiday calendar |
NewYorkTime | The New York calendar and formatters rules are worked out and shown in (shared with the widget extension) |
python3 scripts/build_segments.py
Downloads the sign and centerline datasets (cached in .data_cache/), snaps signs to block faces, and writes NYCParking/NYCParking/segments.db. Rebuild the app afterwards to bundle the new data.
python3 scripts/build_web_data.py
Exports the same block faces to docs/data/blocks.json for the website's live map.
docs/ is the GitHub Pages site at nycparking.jonbobrow.com: a live, simplified version of the app's cleaning-days map (MapLibre GL on OpenFreeMap's dark style), plus the privacy and support pages. Preview it locally with:
python3 -m http.server 8765 --directory docs