To be fair, most web/mobile frameworks expect you to do that.
Ideally, codebases would grow by adding data (e.g. a json describing endpoints, UIs, etc), not repetitive code.