- PVSM.RU - https://www.pvsm.ru -
Всем привет! Я около 10 лет в разработке и последние 5 лет полностью живу в экосистеме JetBrains. За это время у меня накопилось порядка 150 репозиториев — рабочие проекты, личные эксперименты, демо, инфра. Всё это, конечно, аккуратно разложено по папочкам, помечено тегами в Finder и добавлено в быстрый доступ.
И долгое время этого хватало.
Я работаю с несколькими клиентами. Активных проектов обычно около 25 штук. С таким количеством стандартный Recent Projects в IntelliJ IDEA справляется прекрасно: быстро ввёл название сервиса в поиск — быстро открыл. Никаких проблем.
Идеальная жизнь закончилась, когда пришёл новый клиент. С ним — ещё 25 микросервисов в разных репозиториях и бэклог на 300+ задач (white-label решение). Я вздохнул и начал работать с 50 активными проектами.
И тут я обнаружил неприятную вещь: Recent Projects в IDEA хранит только 30 последних открытых проектов. Открываешь 31-й — первый исчезает. Из поиска, из ��писка, отовсюду. Каждую неделю я тратил пару часов просто на то, чтобы заново добавлять проекты: найти папку на диске, открыть, подождать индексацию — и так по кругу.
Через пару месяцев тот же клиент отправил меня на помощь одному из своих заказчиков. Там — снова 25 микросервисов, но со своим набором фич и особенностей.
К декабрю у меня скопилось 75 рабочих проектов и с десяток личных. Работать с этим комфортно? Невозможно.
Я пошёл искать решения в JetBrains Marketplace [1]. Нашёл три плагина — все заброшены, функционал плоский и по сути тот же подход, что в Recent Projects, только с другой обёрткой.
К этому моменту у меня в голове уже сформировался чёткий список того, что мне нужно:
Дерево проектов — в таком же окне, как Project Structure, с иерархией и группами
Избранное, теги, фильтрация — чтобы быстро находить нужное
Drag & Drop — перетаскивать проекты между группами мышкой
Связанные проекты — открываешь один сервис, автоматически поднимаются ещё несколько связанных (актуально для монолитно-микросервисной архитектуры)
Стартовые команды — при открытии проекта выполнить команду в терминале (в моём случае это cloud-sql-proxy или авторизация в gcloud)
NDA-фильтр — когда шаришь экран, хочется показывать только проекты одного клиента
Немного поресёрчив и почитав документацию, я обнаружил, что разработка плагина для JetBrains — вполне комфортное занятие. Документация подробная, есть куча open-source проектов для референса.
Спустя несколько месяцев разработки и использования на боевых проектах я выкатил Projects Organizer [2]— бесплатный плагин для всех продуктов JetBrains.
Помимо того, что я задумывал изначально, получился инструмент, который закрывает потребности разных ролей: фрилансеров с сотней проектов, тимлидов с зоопарками микросервисов, девопсов с тонной инфраструктурных репозиториев — и просто разработчиков, которые хотят навести порядок.

Свяжите сервисы, которые всегда нужны вместе: gateway + auth + shared-library. Откройте один — остальные поднимутся автоматически.

Добавляйте метки (backend, frontend, client-x) и мгновенно фильтруйте каталог. Autocomplete подсказывает существующие теги — не нужно запоминать.
Отметили звёздочкой — проект всегда наверху группы. Быстрый доступ к тому, с чем работаете каждый день.
Нажмите Ctrl+Shift+P (или Cmd+Shift+P на Mac) — и начните вводить имя. Проект откроется за секунду. Без мышки, без скролла.

Перетащите папку из Finder или Проводника прямо в каталог — проект добавится автоматически. Также можно перетаскивать проекты между группами внутри плагина.

Прикрепите к проекту заметку ("что это за сервис и зачем он нужен") и ссылки на документацию — Wiki, Jira, Confluence, Notion. Вся информация рядом с проектом.
Задайте команду, которая выполнится в терминале при открытии проекта. docker-compose up, cloud-sql-proxy, npm install — что угодно, автоматически.
Демонстрируете экран? Активируйте фильтр — в каталоге (и в Quick Open) будут видны только выбранные группы. Конфиденциальные репозитории скрыты.
Выгрузите всю структуру в JSON — для бэкапа или переноса на другую машину.
Укажите директорию — плагин сам найдёт все проекты внутри по маркерам (.idea, .git, pom.xml, build.gradle, package.json). Добавьте десятки проектов за секунды.
Каталог автоматически синхронизируется между машинами через встроенный IntelliJ Settings Sync. Включили — и структура, группы, теги доступны везде.
Интерфейс доступен на английском, китайском, японском и корейском языках.
|
Роль |
Как поможет |
|---|---|
|
Разработчик с 30+ проектами |
Навести порядок за минуты: auto-discover → группы → теги |
|
Фрилансер / консультант |
Проекты по клиентам, NDA-фильтр при шаринге экрана |
|
Тимлид / архитектор |
Linked Projects для наборов микросервисов, заметки и ссылки на доки |
|
DevOps / SRE |
Startup Command, быстрый поиск среди десятков инфра-репозиториев |
В голове ещё с десяток фич, которые хочется реализовать. Плагин активно развивается, и я использую его каждый день на боевых проектах.
Плагин полностью бесплатный — без ограничений, без trial-периодов. Я делал его для себя и буду рад, если он поможет и вам.
Буду рад комментариям, фидбеку и звёздочкам на Marketplace. Если нашли баг или есть идея — пишите в YouTrack или прямо в комментариях.
Автор: HolyZlo
Источник [6]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/java/446486
Ссылки в тексте:
[1] JetBrains Marketplace: https://plugins.jetbrains.com/
[2] Projects Organizer : http://projects-organizer.dev/
[3] JetBrains Marketplace: https://plugins.jetbrains.com/plugin/30429-projects-organizer
[4] YouTrack (баг-трекер и предложения): https://project-organizer.youtrack.cloud
[5] Сайт проекта: https://projects-organizer.dev
[6] Источник: https://habr.com/ru/articles/1009602/?utm_source=habrahabr&utm_medium=rss&utm_campaign=1009602
Нажмите здесь для печати.