rewrite core
add badge