2

Pitch: Já se sentiu perdido trabalhando em várias pastas ao mesmo tempo no VS Code?

Fala, rede.

Esse post é para quem desenvolve usando Visual Studio Code, principalmente os Devs Full Stack.

Você já se sentiu meio perdido trabalhando com várias pastas no mesmo projeto? Tipo quando precisa lidar com front-end e back-end ao mesmo tempo.

A situação fica ainda pior quando você tem apenas um monitor, ou mesmo dois, mas precisa acompanhar código em pastas diferentes, terminais, console e navegador ao mesmo tempo.

O recurso nativo de Multi-Root Workspaces ajuda, mas na prática a experiência acaba ficando meio confusa.

Foi aí que surgiu uma pergunta simples na minha cabeça:

Por que o VS Code não funciona como um navegador, com abas isoladas para cada projeto?

Durante minha busca, encontrei um projeto chamado VSC Tab, desenvolvido por um programador turco. A ideia dele era exatamente trazer essa experiência de abas para projetos dentro do VS Code, e funcionava muito bem.

Só tinha um problema:
Sempre que eu trocava de aba, perdia os arquivos e terminais que estavam abertos.

Como o projeto é open source, resolvi criar um fork e implementar algumas melhorias focadas em Developer Experience.

Depois de alguns ajustes, cheguei a um resultado que ficou bem próximo do que eu imaginava.

Apresento para vocês o Advanced Multi-Root, minha primeira extensão para o Visual Studio Code.

A proposta é simples: trazer uma experiência mais parecida com a de um navegador, permitindo organizar projetos em abas e alternar entre eles sem abrir novas janelas e sem perder arquivos ou terminais ativos.

Isso ajuda bastante a manter a organização e a sanidade durante o desenvolvimento, especialmente quando lidamos com múltiplas partes do mesmo projeto.

Se quiser testar, fico feliz em receber feedbacks e sugestões para evoluir a extensão.

Link da extensão no Visual Studio Marketplace: https://marketplace.visualstudio.com/items?itemName=JotaOdiceu.advanced-multi-root
Link do GitHub da extensão (contribuições sempre são bem vindas): https://github.com/JotaOdiceu/advanced-multi-root
Link desse post no LinkedIn (me da uma força ae pra hypar 😅): https://www.linkedin.com/posts/activity-7436972873510084609-DYti

Carregando publicação patrocinada...
1
1

Fala mano! Muito obrigado pelo feedback, fico feliz que tenha gostado da extensão!

Sobre o tempo de recarregamento ao alternar de aba, isso acontece devido a uma limitação rígida da própria arquitetura do VS Code. Sempre que uma extensão altera a pasta raiz principal de foco do workspace, o VS Code reinicia automaticamente o Extension Host (processo que roda as extensões) por segurança, causando esse atraso.

Algo que me ajuda a evitar essa percepção é navegar pelas abas através do rodapé, o que torna esse recarregamento mais sutil.

Até pensei em sempre manter uma pasta vazia na raiz do workspace, o que seria um workarround pra esse comportamento, mas ainda estou pensando em como deixar bonito visualmente e que não atrapalhe o uso esperado (se ela ficasse invisível seria ótimo, mas o VS Code também não permite isso).

De qualquer forma, continuarei monitorando as atualizações do VS Code caso eles liberem alguma API no futuro que nos permita contornar isso de forma nativa!

1

Vou dar uma sugestão antes mesmo de instalar: Coloque um print na descrição no marketplace. Uma extensão que foca em um visual e não tem nenhum print? Eu nem perco meu tempo.

0