fix some problem
use cache file to cache the data
finish the front-end page