Кирилл Петров, на checkbox лучше использовать @change, а не @click. Все-таки, семантически, @click - это не событие изменения значения checked, а именно клик по самому контролу, который и влечет за собой изменение этого самого значения.
Антон Тарара, если мы говорим чисто про бэкенд, то, наверное, можно и одним файлом - тут вопросы подхода к деплою и общей инфраструктуре. Хотя по мне, так лучше выгружать в гит, а деплой происходит автоматически при обновлении репозитория. А как там это делается, уже не важно.