add search box and do some improvement