Дорога к Prettier
Мы в Breadhead задумались о внедрении Prettier в проекты когда дизайнер, который учился разработке, верстал наш новый сайт. Он имел небольшой опыт работы с JS и форматирование кода руками казалось ему сложным.
К Prettier мы присматривались и раньше, но в тот момент нам не понравились:
- конфликты с линтерами
- ненадежная работа с JSX
- необходимость отказаться от своих предпочтений при форматировании кода.
С тех пор Prettier стал лучше и его использование вместе с другими средствами разработки стало стандартом.
Для того, чтобы подружить Prettier и линтеры, мы использовали tslint-config-prettier и eslint-config-prettier, которые отключают конфликтные правила.
Для форматирования кода перед коммитами мы использовали husky и lint-staged, которые позволяют выполнять скрипты в гит хуках.
Спустя время то, что казалось недостатками Prettier было принято как достоинства. «Скудных» возможностей настройки оказалось достаточно, чтобы работать с линтерами без конфликтов. Бескомпромиссность правил помогла сделать код однороднее.
Теперь мы больше не дискутируем о стиле кода и не тратим время на его форматирование. Новым разработчикам легче войти в проект и легче писать код без боли.
Меня в этом инструменте привлекает его философия. В отличие от многих других Prettier реализует принцип единственной ответственности: занимается только форматированием и оставляет качество кода линтерам.
Настройки инструментов можно найти в репозитории нашей сборки на Гитхабе.