add router
fix wrong types
finish view