We were so focused on developping very cool web applications with inputEx, that we delayed this released many times. Here it is !

Beyond the usual bug fixes, we received very cool contributions:

  • MapField: Thanks to David Janes. It can handle MS Virtual Earth, Yahoo! Maps or Google Maps. It returns the latitude/longitude coordinates but also the zoom level.
  • MenuField: Thanks to Maxime Réty. Useful solution using the YUI Menu widget instead of grouping dropdown menus.
  • Italian localization by alexodus. If you speak Spanish or German, it will take only a few minutes to translate and post it on the forum.
  • Json-schema referencing by Brad Clements. (see below)
    Other things in this release :

  • VectorField. I use this one for storing positions or any kind of vectorial information.

  • FileField-beta. It only works if you’re using a POST method to submit the form, but might be useful for you.
  • The inputEx Builder can now export the generated code to a page, and load a form from a inputEx Json definition or a json schema !
  • We also moved the repository to GitHub, although the wiki has not moved yet.
    Click here to view the complete release notes.

Have fun !


We received queries on the inputEx forum to switch our repository to Git).

The YUI library recently moved to GitHub, so I decided to move both of the YUI-based libraries, inputEx and WireIt, to the same plateform.

Here are the two new repositories: inputEx and Wireit.

The GitHub interface is friendly, it displays nice stats, has a cool API, and Git ! (But I’m missing a ticket system)

The good news is that it is really easy to import a SVN repository, and keeps the commit history.

See you on GitHub !

Ah… and Happy New Year !

inputEx 0.2.0 is finally available for download !

This version of the YUI-based json form framework brings a great set of fixes and enhancements:

  • 11 new fields
  • 3 new widgets
  • 25 enhancements on previous fields
  • cross-browser enhancements (IE 6 is on the way…)
    I strongly suggest you take a look at the complete changeset, and our new list of examples.

Note: For those who were already using version 0.1.0, we wrote a description of the json API changes between 0.1.0 and 0.2.0.

Finally, I would like to thank:

  • Maxime R. - for his bug fixing !
  • Daniel Barreiro (alias Satyam) - for his help with YUI’s style
  • mingfai - for his work on interactions and validations
  • unomi - for his ideas, bug reports and forum help
  • ClicRDV - for open-sourcing this library
  • And many others - for bug reports
    Have fun !

WireIt is back !

On June 19th, WireIt was removed from distribution for copyright infringements. After discussions with the Yahoo! User Interface and Yahoo! Pipes teams, a project started to provide the wiring widgets as a YUI module. (Note: I don’t work for Yahoo! so it is NOT an official annoucment…)

I’m very happy with this decision and I can’t wait having this integrated into YUI. However, the quality concerns of YUI requires very detailed attention to cross-browser support and YUI integration. It will take some time before it appears on the YUI roadmap.

Meanwhile, I’ve been contacted by many WireIt users, who where anxious about using code with copyright infringements, and about seing no more bugfixes/new features. Therefore, I decided to release this new version that does not contain any coprighted code/assets anymore !

If you use WireIt <= 0.2.1, you MUST upgrade to 0.3.0.

WireIt get sponsored !


Among WireIt users, Tarpipe decided to sponsor the WireIt library. I am grateful to them, for helping revive the project.

What’s new in version 0.3.0 ?

  • Removed copyrighted images and code
  • New drawing methods (straight lines and arrows, thanks to Marcin Iwa?ski)
  • CanvasElement class (WireIt.Wire now inherits this class)
  • Scissors class (for the scissors widget)
  • LayerMap-beta (minimap to visualize/naviguate the layer)
  • API Documentation much nicer and usable
  • WireIt.Layer: “clear” and “setWiring” methods
  • Bug fixes (including the much awaited positionning issue)
    I also started an interactive presentation, to demonstrate WireIt features.

Have fun !

Persevere logo

If you don’t know Persevere yet, check out its impressive list of features (JSONPath/JSON-RPC/Comet support, etc…).

Here is a short tutorial to expose your MySQL tables through the persevere JSON REST interface.

  1. Download persevere and unzip it.
  2. Download the JDBC driver for MySQL and put the jar file into the “persevere/lib” folder.
  3. Create a new file in “persevere/WEB-INF/config” named “myDatabase.json”
  4. We will now configure the data source: (replace “myDatabase” and “myTable” by your database and table names.)({ "id":"myDatabase.json", "sources": [ { "name":"myTable", "sourceClass":"org.persvr.datasource.DatabaseTableDataSource", "driver":"com.mysql.jdbc.Driver", "connection": "jdbc:mysql://localhost/myDatabase?user=myDbUser&amp;pass=", "table":"myTable", "idColumn":"id", "dataColumns": [ "lastname", "firstname", ...and so on with your table columns ], "schema":{ "data":{"$ref":"../``myTable``/"} } } ] }Don’t forget to change your database user name and password !
  5. run persevere (“java -jar start.jar”) and visit the following pages:

  • Add other tables: “sources” is an array !
  • Use UTF8: Adds the following at the end of the connection string: &amp;useUnicode=true&amp;characterEncoding=utf-8&amp;mysqlEncoding=utf8
  • Add methods to the class or to its prototype (take a look at WEB-INF/config/examples.json)
  • Write a script to auto-generate the config file from a database structure (and post it on the persevere forum)
  • Read the Persevere Javascript Client Documentation and start coding applications !
    Have fun !

Due to copyright infringement with parts of its source code, the WireIt library has been removed from distribution.

However, it is good news for WireIt and YUI developpers: the component might be adapted into a YUI widget in a close future.

Subscribe to the rss feed to keep in touch with the project.

Pierre est à New York ? Vous ne savez pas qui est Pierre ?

Une chose est sûre, l’espace aérien de la ville n’est plus aussi accessible qu’il ne l’était.

En fouillant dans mes cartons, j’ai retrouvé quelques photos d’un voyage à New York en 1995. Si mes souvenirs sont exacts, nous avions pris un avion (pas un avion de ligne hein… 4 places c’est tout!) depuis Boston. L’arrivée à NYC était très impressionnante, et nous avions pu approcher Manhattan de très près.

Toujours à propos des timelines (cf post précédent sur Dipity), le projet SIMILE (“Semantic Interoperability of Metadata and Information in unLike Environments” ouf !) dispose d’un très bon composant de timeline.

Je me suis amusé à transformer quelques flux RSS au format XML attendu par cet outil pour visualiser mon utilisation de divers web services. Voici un screenshot du rendu (cliquez pour voir la démo !)



J’adore. Et vous, vous voulez la même ? ;)

It’s finally time !

I just finished the first public version of inputEx. I had this project in my bag since summer 2007.

Visit the website at http://javascript.neyric.com/inputex . Here is a short introduction from the documentation :


inputEx is a javascript library to build fields and forms.
It can also be considered as an interface framework, since it provides a good structure to create you own fields.

It is built on top of the YUI library, and we tried to be as close as possible to the YUI philosophy.

It is of course fully skinable using CSS and currently supports Firefox 1.5+, Safari 2.0+, IE 7.0 and Opera 9+.

A unique field library

With so many form libraries out there, why would we create another one ?

  • HTML fields/forms are very limited
  • no existing good input library for YUI (let me know if I’m wrong !), except YUI widgets
  • it’s not all about validation !
    Here are the features we implemented that makes inputEx unique :

  • json configuration for each field

  • complex data structures (list/objects/tree/list of urls/objects of objects etc…)
  • composition between the fields (for “meta”-fields such as InPlaceEdit,List,Tree,Pair,…)
  • javascript object mapping for greater interactivity
  • a common “updated” event to handle different browsers and different field interactions


InputEx uses no html (it is the opposite of unobtrusive librairies): all the fields and forms are configured using json, then rendered by manipulating the DOM.
It is therefore a library to create javascript web applications, not webpages.

This approach has a great advantage: adding/modifying a field is made in one place only. Combined with
the json configuration that can be stored server-side, it makes customization of your web application very easy.

Help Us

It is very easy to help us improving the library :

  • Extend the library: send your custom fields to the wiki, it might help others !
  • Give your feedback on the forum
  • Report any bug

Other resources

If you didn’t find what you were looking for, please visit these websites :

Dipity est un service très sympa permettant de créer des frises chronologiques (“timelines” en anglais).

L’un des principaux avantages de ce service, est de pouvoir créer des timelines très rapidement grâce à n’importe quel flux rss. Vous pouvez ensuite rajouter des photos/vidéos ou encore un positionnement géographique sur chacun des évènements.

Vous pouvez ensuite exporter le composant vers votre site. Voici un exemple qui utilise le flux RSS Actualités de ClicRDV:

Copyright © 2000-2015 - Eric Abouaf - Powered by Hexo