Где ищешь библиотеки для Flutter?

Ответ

Я ищу пакеты в первую очередь на pub.dev — это официальный репозиторий для Dart и Flutter. Там есть вся необходимая информация: версии, зависимости, рейтинг (pub points), и часто — ссылка на исходный код.

Перед добавлением пакета я всегда проверяю несколько ключевых моментов:

  • Активность поддержки: Смотрю дату последнего обновления и частоту коммитов на GitHub.
  • Качество: Обращаю внимание на количество открытых issues, наличие тестов и документации.
  • Соответствие задаче: Убеждаюсь, что пакет решает именно мою проблему, а не добавляет избыточный функционал.
  • Зависимости: Проверяю, не тянет ли пакет за собой множество других больших библиотек.

Для нишевых задач или вдохновения также смотрю курируемые списки, например, awesome-flutter, и читаю статьи в блогах известных разработчиков из сообщества.

Ответ 18+ 🔞

Э, слушай, а вот это ты правильно подметил, про поиск пакетов. Прям в точку, ёпта. Потому что иначе можно так впиздюриться в зависимости, что потом сам от себя охуеешь, пытаясь это всё собрать.

Ну, первое дело — конечно, pub.dev. Это как священная корова, на неё молятся. Там всё есть: версии, эти твои pub points (которые, честно говоря, иногда вызывают подозрение ебать), и главное — ссылка на гитхаб. Без неё вообще ни в коем случае. Если пакет без исходников — это сразу красный флаг, размером с хуй с горы. Шёл бы такой пакет на хуй, сразу.

А дальше, чувак, начинается настоящая детективная работа. Вот мои правила, выстраданные кровью и дебагом в три часа ночи:

  1. Активность. Захожу на гитхаб и первым делом — в Insights. Если последний коммит был два года назад, а открытых issues — овердохуища, это плохой знак. Значит, пакет накрылся медным тазом. Автору, видимо, стало да похуй. Ну или он помер. Бывает.
  2. Качество. Смотрю, есть ли тесты. Нет тестов? Ну, доверия ебать ноль. Документация — одна строчка «читайте код»? Пизда рулю. Это же мартышлюшка какая-то, а не библиотека. Ещё смотрю, как автор реагирует на issues. Если он там всем советует «пофикси сам и сделай PR» — это, конечно, круто с точки зрения open source, но для меня, как для пользователя, сигнал, что поддержка — хитрая жопа.
  3. Соответствие. Вот это ключевое! Бывает, нужен простой слайдер, а находишь мега-виджет, который и кофе варит, и на Марс летает. Ебать мои старые костыли, зачем мне этот монстр? Беру только то, что решает конкретную задачу. Иначе потом терпения ноль ебать рефакторить эту лапшу.
  4. Зависимости. Открываю pubspec.yaml и ахуеваю. Пакет для работы с JSON тянет за собой всю вселенную, включая какой-нибудь universal_io_web_socket_bloc_provider. Ни хуя себе! Сразу закрываю. Ищу что-то более легковесное. Помни: каждый лишний пакет — это потенциальный конфликт версий, который вылезет в самый неподходящий момент. Волнение ебать обеспечено.

Ну а если на pub.dev пусто, или всё какое-то блядовитое, лезу в кураторские списки, типа awesome-flutter. Там народ обычно отфильтровал уже самое годное. И да, статьи всяких гулей из сообщества — это сила. Они часто пишут про подводные камни, про которые в официальной доке ни слова. Э, бошка, думай! Не изобретай велосипед, если его уже собрали, отладили и даже покрасили.

Короче, вся философия в том, чтобы не быть распиздяем. Добавил левую зависимость — получи сосалку на всю жизнь, которая будет сосать твоё время на обновлениях и фиксах. Выбирай с умом, будь параноиком. Это как жениться: посмотри не только на невесту (документацию), но и на всю её семью (зависимости) и прошлое (issues на гитхабе). А то будет вам хиросима и нигерсраки в продакшене.