The issue looks like is you “view function” signature instead “-> Html msg” needs to be “-> Html Msg” essentially the “msg” in lower case is a place holder type and the compiler detected that your code is using the “Msg”. You can check this thread that has better explanation. Html Msg vs Html msg?