Skip to main content

dotjs is a Google Chrome extension that executes JavaScript files in ~/.js based on their filename.

If you navigate to http://www.google.com/, dotjs will execute ~/.js/google.com.js.

This makes it super easy to spruce up your favorite pages using JavaScript.

On subdomains such as http://gist.github.com dotjs will try to load ~/.js/gist.github.com.js as well as ~/.js/github.com.js and ~/.js/com.js.

Bonus: files in ~/.js have jQuery 1.9 loaded, regardless of whether the site you’re hacking uses jQuery.

Double bonus: ~/.js/default.js is loaded on every request, meaning you can stick plugins or helper functions in it.

GreaseMonkey user scripts are great, but you need to publish them somewhere and re-publish after making modifications. With dotjs, just add or edit files in ~/.js.

Example

$ cat ~/.js/github.com.js
// swap github logo with trollface
$('a[class^=header-logo-]').html(
$('<img>')
    .attr('src', '//bit.ly/ghD24e')
    .css({'width': 'auto', 'height': '22px'})
);

How It Works

Chrome extensions can’t access the local filesystem, so dotjs runs a tiny web server on port 3131 that serves files out of ~/.js.

The dotjs Chrome extension then makes ajax requests to http://localhost:3131/convore.com.js any time you hit a page on convore.com, for example, and executes the returned JavaScript.

Requires

  • Python >= 2.6

  • Google Chrome

Install it

git clone http://github.com/hackedd/python-dotjs
cd python-dotjs
python setup.py install

OS X:

  • Open https://localhost:3131 in Google Chrome

  • Click the “X” Padlock icon in the address bar

  • Click “Certificate Information”

  • Drag the large cert icon to your desktop

  • Open it with Keychain

  • Configure its Trust section as shown: http://cl.ly/Pdny

Windows:

  • Export the certificate as a “.cer” file:

    dotjs --print-cert > %TEMP%\dotjs.cer
  • Right-click the exported “.cer” file, click “Install Certificate”

  • Complete the Wizard to import the certificate to the Windows Certificate store. Make sure to select Trusted Root Certification Authorities as the destination store when asked.

Ubuntu:

  • Use certutil to import the certificate to your NSS database:

    dotjs --print-cert | certutil -d sql:$HOME/.pki/nssdb -A \
        -t "P,," -n localhost-dotjs

You might need to restart Chrome before it sees the certificate as trusted. You can verify if the certificate is correctly installed by opening https://localhost:3131 in Chrome.

Finally install the Google Chrome extension: http://bit.ly/dotjs

Credits

Other Browsers

Release files for dotjs 1.0.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dotjs 1.0.6
File Size Uploaded
dotjs-1.0.6.tar.gz 10.4 kB Details

Release files / dotjs-1.0.6.tar.gz

Download URL dotjs-1.0.6.tar.gz
Size 10.4 kB
Tags Source
SHA-256 checksum
How to use checksums
819af15d02b1cec55ff9ea90c708211342004e1630ff00ccc72370079d28164c
BLAKE2b-256 checksum
How to use checksums
ed4c4107645ce711e4b0c04b0800594b2a5d8cc04277480fc82b133a6bb196b0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via Python-urllib/3.8

Release history Release notifications | RSS feed

This release

1.0.6 This release

1 release file

1.0.5

1 release file

1.0.4

3 release files

1.0.3

3 release files

1.0.2

1 release file

1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page