Skip to content

Repository files navigation

RoutePeek

A universal Chrome extension that displays a route minimap directly next to items on any website. The map leads from a user-defined origin to the destination shown on the page and also provides an estimated driving distance and travel time.

RoutePeek displays a route map, distance, and travel time directly next to website items

RoutePeek is not tied to any website or content type. Users create templates containing a URL pattern and CSS selectors for the item, its title, and its destination. Website access is requested only when a template is saved. RoutePeek can be used with classified ads, events, venues, cinemas, shops, or any other listing that includes a place or address.

RoutePeek is an independent tool. It is not affiliated with, endorsed by, or supported by any website on which a user chooses to run it. No third-party website template is bundled or enabled by default.

Features

  • floating minimap of the complete route,
  • progressive distance and estimated driving-time calculation,
  • optional PID public-transport connection button,
  • multiple independent website templates,
  • JSON template import and export,
  • configurable country, separator, and maximum number of destinations,
  • regular-expression rules for rewriting place names,
  • local geocoding cache.

Installation from the Chrome Web Store

Once published, open the RoutePeek page in the Chrome Web Store and click Add to Chrome. The link will be added here after publication.

Developer installation

  1. Open chrome://extensions in Chrome.
  2. Enable Developer mode.
  3. Click Load unpacked and select this directory.
  4. Pin RoutePeek to the toolbar and set your origin address.
  5. Open Manage website templates, create a template, and allow access to its domain.
  6. Reload the target page once after saving its first template.

Template format

Templates contain data only and cannot execute code. A minimal exported template looks like this:

{
  "version": 1,
  "id": "example-website",
  "name": "Example website",
  "enabled": true,
  "matches": ["https://example.com/*"],
  "cardSelector": "article.item-card",
  "titleSelector": "h2 a",
  "locationSelector": ".item-location",
  "mountSelector": ".item-card-body",
  "mountPosition": "beforeend",
  "locationSeparator": ",",
  "maxLocations": 2,
  "country": "United Kingdom",
  "placeRewrites": [],
  "pidEnabled": false
}

The advanced editor can identify a destination by marker text, read text from a parent element, and remove helper elements before extraction. This makes it possible to describe less conventional page structures without custom JavaScript.

The repository includes an independent demo page and an importable demo template. Once GitHub Pages is enabled, the demo will be available at https://tomasmark79.github.io/routepeek/demo.html.

Standalone community templates may be stored in examples/. They are not part of the runtime configuration and RoutePeek never enables them automatically. Users must explicitly import a template and grant access to its domain.

Privacy

RoutePeek uses the entered origin and destinations detected by the active template only to calculate routes. It sends addresses to Photon for geocoding, coordinates to OSRM for routing, and loads map tiles from OpenStreetMap. See the privacy policy for details.

The bundled public Photon, OSRM, and OpenStreetMap endpoints are best-effort services intended for modest use. They may throttle requests, change, or become unavailable. See third-party notices for attribution and operational limits.

Help keep this going

Your support makes a real difference. If you value my work and want to help me continue creating, please consider making a donation.

💙 Donate here: https://paypal.me/TomasMark

Every contribution is truly appreciated. Donations are optional, do not unlock features, do not purchase support or a commercial license, and do not provide access to third-party map services.

Development and release

  • npm test runs the automated tests.
  • npm run package creates dist/routepeek-0.0.1.zip.
  • Chrome Web Store copy and artwork are stored in store/.

License

This project uses the custom RoutePeek Attribution–NonCommercial License 1.0. Personal, educational, and other non-commercial use is permitted provided that visible attribution to Tomáš Mark is retained. Commercial use requires prior written permission from the author. See LICENSE for the full terms.

This is a source-available license with a non-commercial restriction, not an OSI-approved open-source license. Official distribution by the copyright holder through GitHub and the Chrome Web Store is separately authorized.

About

A universal Chrome extension that displays a route minimap directly next to items on any website. The map leads from a user-defined origin to the destination shown on the page and also provides an estimated driving distance and travel time.

Topics

Resources

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages