Description
Convert readable Javascript code into bookmarklet links
BookmarkletGen alternatives and similar libraries
Based on the "Asset Management" category.
Alternatively, view BookmarkletGen alternatives based on common mentions on social networks and blogs.
CodeRabbit: AI Code Reviews for Developers

* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of BookmarkletGen or a related project?
README
Bookmarklet Gen 
Convert readable Javascript code into bookmarklet links
Features
removes comments
compresses code by removing extraneous spaces, but not within literal strings. Example:
function someName( param ) { alert( "this is a string" ) }
will return:
function%20someName(param){alert("this%20is%20a%20string")}
encodes what needs to be encoded
wraps code into a self invoking function ready for bookmarking
This is basically a slightly enhanced PHP port of the excellent Bookmarklet Crunchinator: http://ted.mielczarek.org/code/mozilla/bookmarklet.html
Installation
If you are using Composer, add this requirement to your composer.json
file and run composer install
:
{
"require": {
"ozh/bookmarkletgen": "1.2.0"
}
}
Or simply in the command line : composer install ozh/bookmarkletgen
If you're not using composer, download the class file and include it manually.
Example
<?php
$javascript = <<<CODE
var link="http://google.com/"; // destination
window.location = link;
CODE;
require 'vendor/autoload.php'; // if you install using Composer
require 'path/to/Bookmarkletgen.php'; // otherwise
$book = new \Ozh\Bookmarkletgen\Bookmarkletgen;
$link = $book->crunch( $javascript );
printf( '<a href="%s">bookmarklet</a>', $link );
will print:
<a href="javascript:(function()%7Bvar%20link%3D%22http%3A%2F%2Fgoogle.com%2F%22%3Bwindow.location%3Dlink%3B%7D)()%3B">bookmarklet</a>
Tests
This library comes with unit tests to make sure the resulting crunched Javascript is valid code.
This library requires PHP 5.3. Tests are failing on HHVM because of an external binary issue (phantomjs
) but things should work anyway on HHVM too.
License
Do whatever the hell you want to do with it
*Note that all licence references and agreements mentioned in the BookmarkletGen README section above
are relevant to that project's source code only.