Вообще то что вы насоздавали такие компоненты, маленькому проекту никак не навредит. По своему опыту могу сказать, что в папке UI должны лежать компоненты, которые не имеют конкретики и приближены к абстракции. Потому что в другом случае, если исходя из роста проекта будете создавать конкретику в этой папке, то она у вас «захломится», станет тяжелее поддерживать и сложнее искать в компоненты. Я бы сделал следующее: создал UI/inputs/CommonInput.vue и дальше в компоненте FormSignUp переиспользовал и передал нужные пропсы. Если у вас для этих трёх компонентов накладывается дополнительная логика, то можно создать так components/forms /InputEmail,InputPassword,InputName и эти компоненты базировались бы на CommonInput.vue. Как правило в UI должны находиться простые и абстрактные компоненты. Но чем ближе к папке components или pages тем все конкретнее должны создаваться компоненты, которые соответствуют бизнес логики приложения