learning components on the GUI (no srv-side yet)