fix some bug and add web demo