Easy-to-manage touch screens
Free, open-source touch screens. Guided USB setup, a drag-and-drop editor and local control. Made for Home Assistant.
Tokyo cafes with Wi-Fi and power outlets — nearby, checked, and dated. Charge your phone or get work done.
LifestyleTypeScript · JavaScriptGitHub @k9tsuneOnlineOwner 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 ↗English-first finder for Tokyo cafes with Wi-Fi and power outlets — a Dengen-Cafe-style search flow (search by station/area → nearby list → cafe page with map + directions) built SEO- and GEO-first so it can rank in Google and be cited by AI search.
This is the Phase A scaffold. It runs out of the box on seed Shibuya/Shinjuku data — no database or API keys required — so you can see the full flow, then wire up real data (Phase B).
npm install
cp .env.example .env.local # optional: add a Google Maps Embed key for the cafe map
npm run dev # http://localhost:3000
Then build the static site (what Google crawls):
npm run build && npm start
/ and /tokyo have a station/area search bar that navigates
to real, indexable landing pages (not a JS-only filter). Plus "Find cafes near me"
(browser geolocation → /near).components/FilterableCafeList.tsx, logic in lib/db.ts#applyUtilityFilter)./tokyo/[area]), station (/tokyo/station/[station]),
cafe detail (/cafe/[slug]) with a free Google Maps embed + directions, and
feature hubs (/tokyo/free-wifi-cafes, /cafes-with-power-outlets,
/cafes-with-wifi-and-power).sitemap.ts, robots.ts,
JSON-LD (CafeOrCoffeeShop, ItemList, BreadcrumbList).dateModified
freshness, and an llms.txt route. All aimed at getting cited by Gemini / AI Overviews.scripts/collect-overpass.mjs (OSM base layer) and
scripts/enrich.mjs (Claude research + fully-automated auto-approval gate
with exception-only escalation). See CLAUDE.md.db/schema.sql (Postgres + PostGIS) for Phase B.English only for now, but routing, metadata, the localization table, and the
SEO helpers are structured so zh-tw / ko slot in later without a rewrite
(see the plan, §5.1). Facts stay language-neutral; only copy gets translated.
data/seed/*.json now holds ~80
cafes across Shibuya, Shinjuku, Minato, Meguro and Chiyoda, compiled from
Japanese + English sources (raw records with source URLs and confidence levels
in data/collected/raw/, rebuildable via node scripts/build-seed.mjs). It is
a first research pass, not gospel — run it through the enrichment/verification
cycle (CLAUDE.md) and confirm the "low"/"medium" confidence entries before
treating any single field as final. Coordinates are station-level approximations
(the on-page map uses a precise name+address query); a geocoding pass can refine
per-cafe coordinates to enable exact "near me" distances..ad-slot placeholders (zero layout shift).
Enable them only after the site is indexed (see plan §9).NEXT_PUBLIC_SITE_URL, and add a Google Maps Embed API key.Base location data © OpenStreetMap contributors (ODbL). Maps & directions via
Google Maps (only place_id is stored long-term). Wi-Fi/outlet assessments are
original data.