finish category feature
add todo