added demo: using json as widget configuration