Personalization options comes to mind as the main reason. There can be so many different features or modes of operation that different people want l, that a single system cant really implement them all without being bloated or too complex. When someone uses a few different timers and decide they like a few features from each one, they want to incorporate those best features into a new timer.
Plus, with modern LLMs and coding assistants, it is a low barrier of entry for someone to create and deploy their own. I know some people are against "vibe coding", but for low stakes applications like a timer it can be quite useful.