Skip to content

lyleunderwood/dotjs-ubuntu

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Note: This Ubuntu version is currently a bit hacky, but it definitely works (for me).

..................... dotjs ........................

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.

Bonus: files in ~/.js have jQuery 1.6 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
$('#header .logo img')
  .css('width', '100px')
  .css('margin-top', '-15px')
  .attr('src', '//bit.ly/ghD24e')

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 Ubuntu version creates a .desktop launcher in ~/.config/autostart which means the daemon will start when the user logs in and stop when the user logs out. Implementation as an Upstart script has been done but is a bit more complicated. This version stays as true to the original as possible.

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

  • Ubuntu (tested with 11.04)
  • Ruby 1.8
  • rake (gem install rake)
  • Google Chrome
  • /usr/local/bin in your $PATH

Install it

git clone http://github.com/lyleunderwood/dotjs-ubuntu.git
cd dotjs-ubuntu
rake install

Chromium vs Google Chrome

Multiple Chromes installed? Drag builds/dotjs.crx to whichever is your favorite.

Uninstall it

rake uninstall

Credits

"I almost wish you could just stick JavaScript in ~/.js. Do you know what I'm saying?"

Other Browers

Packages

No packages published

Languages

  • Ruby 89.0%
  • JavaScript 11.0%