Bygga
Type the product name from the box. Bygga shows every assembly step in 3D, with the parts, screws and tools for each one, and reads it out loud.
Family activities within 1 hour 45 minutes of Catton — kid-friendly picker with maps, parking, cost and weather for grown-ups.
LifestyleHTML · TypeScriptGitHub @accesstechnology-mikeOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
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 ↗Family activity picker for outings within ~1 hour 45 minutes of Catton (YO7 4SQ).
Kids browse big picture cards (fun bits, terrain, drive time). Grown-ups open the same outing on a phone for Google Maps, Tesla postcode/coords, parking, cost, weather, and a link back to the original source.
Prefer JSON over the HTML UI. Discovery:
| URL | Purpose |
|---|---|
/llms.txt | Agent instructions |
/api | Live catalogue + endpoint docs |
/api/openapi.json | OpenAPI 3.1 |
/api/suggest?q=... | Natural-language ask / suggest |
/api/activities | Structured list + filters |
/api/activities/[id] | Detail + maps + Tesla + weather |
Typical Hermes flow — one call:
curl -sS 'http://localhost:3000/api/suggest?q=stepping%20stones%20under%2045%20minutes&limit=5'
Response includes ranked suggestions[] with why, logistics fields, Maps links, and Tesla destination. Use /api/activities/{id} only when you need live weather or a refined what3words pin.
Structured filters on /api/activities: q, feature, features, source, sources, terrain, terrains, maxDrive, minDrive, maxDistanceMiles, free, ids, sort, limit, offset, view=card|full.
Cross-source (and within-source) duplicates are clustered by start coordinates (~450m) plus shared name tokens, then merged into one card per place. National Trust / OSM / English Heritage win the place identity and pin; the richest walk write-up keeps the route notes. Every origin stays on sources[] with its original URL. Sibling photos are reused before the image pipeline scrapes og:image / Wikidata.
Results are filtered by real OSRM drive time from the live geocode of YO7 4SQ (via postcodes.io). Activity cache: data/activities.json. Cloudflare-prone pages also keep a last-good HTML snapshot under data/source-cache/ (npm run sync:refresh-cache).
Photos are looked up from source pages / Wikipedia / Wikimedia when missing, then resized with sharp into local webp files under public/media/ (card ~720px + detail ~1200px) so the browse grid stays fast.
GET /api/sync at 06:00 UTC (vercel.json)npm run sync locally, or GET|POST /api/syncsyncedAt timestampSync re-polls every source, re-geocodes as needed (with data/geocode-cache.json), re-filters by drive time, refreshes image cache, and rewrites data/activities.json.
npm install
npm run sync # poll sources → data/activities.json + public/media
npm run dev
Open http://localhost:3000.
GET|POST /api/sync — refresh from sources (also on a daily Vercel cron)GET /api/weather?activityId= or lat/lng — weather onlynpm run merge:places — re-cluster the stored catalogue and backfill missing photosDestination pins use source coordinates. When a Reluctant Explorers walk includes a what3words parking address, we resolve it with the same public-page approach as what3words-convert for a more precise Maps pin. Tesla gets the postcode when known, otherwise lat/lng.
npm run build && npm run start
npm run verify