Well you don't necessarily have to be a great engineer to start a great startup. In fact, if you're running a startup, and you're the best engineer there, you've done something wrong. So if you're thinking of going down that route you don't have to be worried about the fact you can't write the best code in the world.
However, I'm not sure what you mean by "semi" technical. To me that would be someone who is a decently skilled programmer and could hack together an app without it being really well written code. You say you couldn't write more than a single-page application, and if that is really the cap of your abilities (and it's almost certainly not, you just need to spend time learning) then I wouldn't quite qualify that as semi-technical.