Fujimod
브라우저에서 카메라 펌웨어를 시험하고 Fujimod SD 부팅 파일을 만든다
본·쾰른·뒤셀도르프 실시간 출발: 정류장 선택해 버스·전철·트램 도착 시각·위치 확인
Abfahrten live für Bonn, Köln und Düsseldorf: Haltestelle wählen, sehen wann Bus, Bahn und Straßenbahn kommen und wo sie gerade sind.
라이프스타일TypeScript · HTMLGitHub @pangwayne온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Live public transport map: departures, routes and estimated vehicle positions from open data (Transitous). Free, non-commercial project.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗A mobile-friendly map of the stops in Bonn, Köln, Düsseldorf and the towns around them, with live departures (trams, Stadtbahn, buses, regional trains). Search for a stop or an address, or tap a stop on the map, then tap a departure to see its route and where the vehicle is right now. Or plan a route between stops, addresses, places or points on the map and follow each ride on the map. German by default, with an English switch. Non-commercial hobby project.
Vehicle positions are estimated from live delay predictions, not GPS. No free feed for this area provides real vehicle coordinates.
Live at https://nahverkehr.pangwayne.com.
Requires Node.js 22 or newer.
npm install
npm run dev # page + Worker at http://localhost:5173
npm run build # generate Cloudflare types, typecheck, production build
npm run deploy # build + deploy to Cloudflare (needs `npx wrangler login` once)
The tests are kept outside this repository, so npm test does not run in a fresh clone.
src/web): the map (MapLibre), stop search, departure board and trip card. All texts are
in src/web/i18n.ts (German and English); the language choice is kept in the browser only.src/worker): forwards /api/stops, /api/departures, /api/trip, /api/plan
and /api/geocode to the Transitous API and caches the answers, so many visitors
asking about the same stop share one upstream request. Failed answers are remembered briefly too, and each
visitor may cause at most 100 upstream requests a minute (route searches: 10). It checks every value and
builds the Transitous request itself, so it is not an open proxy. It also adds the security headers to the
pages. The stop list (about 370 KB compressed) carries an ETag: a browser that still has today's copy gets an
empty 304 instead of the list again. (Trimming the list in the Worker would need more CPU time than the
free plan allows.)/api/trip request per line, at most 12, remembered while the page is open). Train stations get bigger dots./api/geocode, only when chosen. A picked address or place opens a card with
the stops nearby and "route from / to here". Holding a finger (or the right mouse button) on the map drops
a pin that works the same way.Code: MIT. Data keeps the licenses of its sources (see links above).