develop new component

I would like to develop my own vaadin component. Les’s say it will be quite sophisticated slider to set values, period etc.
How can I start? Can you recomend me some examples/tutorials? Sjoud I do it in Java or JS?

If you use an IDE (like Eclipse) you can use Right Click → New → Other… → Vaadin → Vaadin Widget to get a fully fledged widget structure including RPCs, States, Connector, … and also a Widgetset if you don’t have one already. If you want to create a JS Component instead you could still use this structure but change it (although you would have to change a lot).
A good starting point to learn about how to create any custom component is the Vaadin wiki (
Vaadin7 Wiki
), especiall the Chapters “Custom Widgets” and “Using Javascript”.
Whether you should create a GWT(Java) Component or a Integrated JS Component really depends on you. Do you already have an already made client side JS component then just integrate it. Same if you already have a GWT Component. If you want you don’t have any component already done then it just depends on whether you think you can build the client side for what you need easier in html and Javascript or using GWT components in Java.

There isn’t really a general “better” way. It just comes down to personal preference.