npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

chrome-tab-modifier

v0.20.0

Published

Take control of your tabs

Downloads

10

Readme

Tab Modifier

Take control of your tabs.

Build Status devDependency Status

Features

  • Rename tab
  • Change tab icon
  • Pin tab
  • Prevent tab closing
  • Unique tab
  • Mute tab

Quick rename can be done by right-clicking anywhere in the page and click on "Rename Tab".

Why?

I needed a quick UI element in Chrome to know the environment of the tab, as a Web developer I often use multiple versions of the same website: local, pre-production and production.

Not easy to find the appropriate tab when you have multiple tabs called "My awesome website".

I created Tab Modifier to add prefixes to website titles with a specific match.

  • [DEV] My awesome website: .local.domain.com
  • [PREPROD] My awesome website: .preprod.domain.com
  • [PROD] My awesome website: .domain.com

After that, I have added more features like "auto-pin", custom favicons and more.

Focused scope

Tab Modifier is based on user rules and act on the tab URL that matches the first seen rule.

Aware of that, there is no reason to include a feature that is not "rule-based". Prefer to install specific extensions.

Installation

Install from the Chrome Web Store.

Also available for Opera Browser.

Not available for Firefox, refer to #46.

Usage

  • Click on the icon to open Options.
  • Create your tab rules.
  • Try & enjoy!

Demo

Before

After

  • Youtube tab has been modified: use Google icon and pinned state.
  • My Website tabs have been modified: use a prefix in title.
  • Twitter tab has been modified: use default Chrome icon (white paper) and renamed to "I'm working hard!".

Options

Tab Rules

Tab Rules Form

Settings

Examples

You have infinite possibilities, here are some configurations:

Pin all tabs:

  • Detection: Contains
  • URL fragment: http
  • Pinned: ON

Say hello to all Google websites:

  • Detection: Contains
  • URL fragment: google.com
  • Title: Hello Google: {title}

Disguise GitHub as Google

  • Detection: Contains
  • URL fragment: github.com
  • Title: Google
  • Icon: https://www.google.com/favicon.ico

Prevent accidental tab closure:

  • Detection: Contains
  • URL fragment: important-website.com
  • Protected: ON

Mute all Youtube videos by default:

  • Detection: Contains
  • URL fragment: youtube.com
  • Mute: ON

Set blank icon on Pinterest:

  • Detection: Contains
  • URL fragment: pinterest.com
  • Icon: select "Chrome > Default"

Get only one GMail tab opened at once:

  • Detection: Starts with
  • URL fragment: https://mail.google.com
  • Unique: ON

Pin all PNG images (useless):

  • Detection: Ends with
  • URL fragment: .png
  • Pinned: ON

Customize title with HTML selector and Regexp:

  • Detection: Contains
  • URL fragment: github.com
  • Title: {title} | $2 by $1
  • URL matcher: github[.]com/([A-Za-z0-9_-]+)/([A-Za-z0-9_-]+)

Tab title will be: "sylouuu/chrome-tab-modifier: Take control of your tabs | chrome-tab-modifier by sylouuu"

Match GitHub repositories:

  • Detection: RegExp
  • URL fragment: github[.]com/([A-Za-z0-9_-]+)/([A-Za-z0-9_-]+)
  • Title: I got you GitHub!

Customize GMail title with Title matcher and URL matcher:

  • Detection: Contains
  • URL fragment: mail.google.com
  • Title: @0 | $0
  • Title matcher: [a-z]*@gmail.com
  • URL matcher: [a-z]*.google.com

Tab title will be: "[email protected] | mail.google.com"

And now, build your own... :muscle:

Ideas

  • Require password after inactivity.

Known issues

Local icon path doesn't work

Related issue: #5

Due to browser security restrictions, this path won't work: file://<path>/icon.png. Your icon will not be shown by Chrome.

Alternatively, you can upload your icon somewhere like imgur.com and paste the direct link in your rule.

Another solution consists in transform your image in the Data URI format. Go to duri.me and drag & drop your icon, then click on "Copy as DataURI" and paste it (the long text) in the icon input on your rule.

Chrome system pages chrome://

Related issues: #11, #14

Pages that start with chrome:// URL are protected. No content script can be injected then Tab Modifier will not work on these pages.

Local files file:///

Related issue: #13

By default, extensions don't have access to local files. You have to opt-in "Allow access to file URLs" from chrome://extensions/?id=hcbgadmbdkiilgpifjgcakjehmafcjai.

Changelog

See releases section.

Development

In case you want to contribute or just want to play with the code, follow the guide.

Setup

Download and install NodeJS to get npm.

Install gulp and yarn globally:

npm install -g gulp yarn

Clone the project and install dependencies with yarn.

Type gulp to watch your changes inside src/ folder or type gulp build after each change.

Load local extension in Chrome

Go to chrome://extensions/ and enable the "Developer mode".

Click on "Load unpacked extension..." and select the project dist/ folder.

Donators

A huge thanks to:

Fabian L., Brent M., Artur S., Sebastian M., Alex B., Dirk H., Christopher S., Rachel M.

If you like my work and you want to support me, visit the PayPal link. ;)

License

See license file.