Used technologies :

PHP, CSS, XHTML, JavaScript (AJAX), Twitter API, Perl

Project URL :


Project introduction :

Jmp2 is a URL shortener.
The Jmp2 project was originally launched at the very beginning of the URL-shorteners proliferation and was the only one aiming at providing very detailed statistics that could be used in a commercial environment.
Jmp2 engine as it is currently, is able to let you watch for you "clicks" on your shorten links in many different ways : custom start and end dates, by months, by hours, by days, by tag, cumulating custom dates and other criteria...
Jmp2 was originally launched by two people : Me and the Mx-Dev.net administrator, which was in charge of a part of the graphical appearance.
Due to personal obligations, the second founder was forced to abandon its work on the "statistics" interface part, so this part is still not available because the backend is working but there is no frontend. By the same time the project was waiting for a new person to continue on the work the other founder, Bit.ly finally launched a statistics tools for its engine, making our chances to oppose to it even smaller.
Another innovative aspect of the project was that it is currently able to generate with a "long domain name" (jmp2.fr = 7 chars, as well as j.mp = 4 chars) shorter URLS than bit.ly or even j.mp because of the use of unicode chars in our database. This makes possible for us to keep less than 2 chars for quite a high number of possibilities and an even higher number of possibilities with 3 chars.
The last hard part of the project is optimization : An url shortener has to be fast, even if it is storing datas. The particular part that was difficult to optimize is the generation of the short url. We finally ended with the use of a large cache file containing dozens of thousands of possibilities and being shrunk each time a new one is generated.

What is my role in this project ?

I made everything that is currently working on the website : XHTML, CSS, PHP, algorithm, etc.
I also participated in the graphical design of what's currently online.
I also developed the API and found the different solutions for the use of unicode chars in Twitter (Twitter allows only a specific number of unicode chars in URL, but our engine was meant to use a higher number of unicode chars).
I integrated OpenId through RPX-Now technology to allow users to register through Twitter, Facebook, Wordpress.com, etc. account.

Skills I acquired and I experienced with this project