Custom Addons (Vaadin 24)

Hi, I need your assistance. I am looking to create a custom addons and host them on private repository (not being cheap, they are really not worth deploying for vaadin directory)… I was looking all around, but mainly found outdated templates, what i am looking for is the correct way to create them (Java + lit). any direction will be helpfull

https://github.com/vaadin/addon-template

And see Table 3 on https://vaadin.com/docs/latest/advanced/loading-resources for where to put your Lit JS/TS files

I highly suggest that, while developing the addon, you place your JS in frontend, so you can live reload. Before distributing, move to suggested

Check this blog post for help Create a custom component with Lit | Vaadin

You can use the linked TabSheet project as basis for your developments.

I’m not 100% sure if the answers by @astonishing-kookaburra and @yummy-rhino where what you need, but those are good pointers to get started on creating add-ons. If you create those using those examples, they produce standar Jar files. If you don’t want to push those to the Directory or to Maven Central, you can push them to your own local Maven repository and share theme with your colleagues via that. If you don’t yet have one, check out for example Artifactory - Universal Artifact Repository Manager - JFrog and Sonatype Nexus Repository - Binary & Artifact Management | Sonatype.

Hi , @astonishing-kookaburra @yummy-rhino and @quintessential-ibex , thank you very much… it’s all working. We have a couple of repeated components (phone,country,currency, adress etc ) and now they are a maven package :slightly_smiling_face: and easily styled in diffrent projects . I think the the word “addon” just made us panic … but thanks to you it in the past.

Yeah no worries, Vaadin doesn’t care where these add-ons come from :slightly_smiling_face: In the end they are just jar packages with some metadata for Directory (originally we actually used that metadata also in GWT compilation with versions 6,7 &8).

The amazing thing about Vaadin and offcourse all credit goes to you guys, is that today every frontend framework (react,vue etc) is trying to achieve what you built 10 years ago. Modular and reusable ui blocks … and Vaadin has it built in …

You forgot SSR server side “rendering” :see_no_evil:

Totally Right… It’s so funny … ~10 years everyone is React this and React That… man, you see a frontend developer using 10MB dependencies to create a simple Button… and now as you said SSR.