Timer-Converter-Extension

Time Converter Extension

A Chrome Extension that helps you work with time zones in three different ways:

The project is built with Manifest V3 and uses a popup UI, a background service worker, and a manifest-declared content script. The project also uses a cloudflare wrangler for serverless and quick retrieval from API endpoints, for more information on how the worker works, the GitHub repository is located: here https://github.com/LegitAgent/cloudflare-workerwrangler-serverless.

Features

How It Works

The popup provides:

Background Service Worker

The background script:

Content Script

The content script:

Project Structure

manifest.json
scripts/
  api.js
  background.js
  copyPasteConverter.js
  dom.js
  manageState.js
  popup.js
  storage.js
  tabs.js
  timeConversion.js
  timezoneDetectScript.js
  timezoneOffsets.js
  timezonePicker.js
  ui.js
HTML/
  popup.html
  instructions.html
CSS/
  popup.css
  instructions.css
images/

Permissions

This extension currently uses the following google extension API’s and permissions:

It also requests access to:

This endpoint is used to:

Privacy

See privacy-policy.md for the full policy.

Local Development

  1. Clone or download this repository.
  2. Go to google extensions at the top right of chrome, this is the icon with the puzzle piece
  3. Click manage extensions.
  4. At the very top-right side toggle developer mode.
  5. A new button will appear on the top-left side of the screen, click on load unpacked.
  6. Select the folder where you cloned the repository from.

After making changes:

Usage

Automatic Page Detection

  1. Open the extension popup.
  2. Click the location button to detect your local timezone.
  3. Turn the page scanner toggle on.
  4. Visit a normal webpage containing time strings.

Detected matches will be highlighted and annotated with local-time badges. For more details, there is also an entitled intruction popup for time zone offsets in the popup itself.

Paste & Convert

Supported formats include:

Manual Converter

  1. Pick a source timezone.
  2. Pick a target timezone.
  3. Enter a time.
  4. Convert from the popup.

Notes

Status

This is an actively iterated personal project. The codebase currently focuses on:

Contributing

Feedback, bug reports, feature suggestions, and pull requests are very much welcome and appreciated.

You can contribute by:

For larger changes, open an issue first so the direction is clear before implementation, thank you.