Conheça o Hub: recursos, instalação e download →
Quando você alterna entre sistemas comerciais, integrações, exemplos e estudos, encontrar o projeto certo pode virar uma tarefa repetitiva. A pasta está em um lugar, o grupo de projetos em outro e a lista de recentes muda conforme o trabalho do dia.
O CS.Coder — Hub de Projetos nasceu para colocar essa organização na tela em que a rotina começa: a Welcome Page do Delphi. É um plugin gratuito e de código aberto para Delphi 11, 12 e 13 que reúne atalhos de projetos em categorias e grupos, com busca e abertura diretamente pela IDE.
Recentes mostram atividade; grupos mostram intenção
Uma lista de recentes responde à pergunta “o que abri por último?”. Uma organização própria responde a outra: “onde está o que preciso agora?”.
No Hub, uma categoria pode representar uma área de trabalho, como Trabalho ou Estudos. Dentro dela, grupos reúnem projetos relacionados: Aplicações comerciais, Integrações ou Exemplos de linguagem. Esses nomes são sugestões; a estrutura é definida por você. Também é possível manter grupos soltos, sem categoria.
O objetivo é simples: deixar o caminho para o código previsível, mesmo quando a sequência de arquivos abertos muda.
Uma rotina possível, em poucos passos
Depois de instalar o Hub, crie um grupo e adicione os arquivos de projetos que já existem no computador. O painel trabalha com .dproj, .dpr e .groupproj.
- Separe os projetos em grupos que façam sentido para seu trabalho.
- Use categorias quando precisar de mais um nível de organização.
- Recolha os blocos que não está usando.
- Pesquise pelo nome ou caminho para localizar um projeto.
- Abra com duplo clique e continue o desenvolvimento na IDE.
O menu do projeto também permite abrir sua localização no Explorer. O Hub guarda atalhos: remover uma referência do painel não apaga o projeto do disco.
Ordem é uma escolha, não um efeito colateral
Há situações em que a ordem alfabética ajuda. Em outras, você quer manter o projeto principal antes dos exemplos ou colocar uma integração ao lado de outra.
O Hub permite reordenar projetos, grupos e categorias por arrastar e soltar, além dos comandos de subir e descer. Dentro de um grupo, a ordenação manual pode ser substituída novamente pela classificação por nome.
Essa escolha é guardada por grupo. Você pode deixar os exemplos em ordem alfabética e organizar manualmente os sistemas que acessa todos os dias.
Dados, ações e apresentação têm responsabilidades próprias
Por trás do painel, a estrutura do código separa três responsabilidades principais. O repositório conhece categorias, grupos, projetos e o arquivo de configuração. O modelo coordena ações, diálogos e chamadas da IDE. A lista visual desenha os itens e interpreta os gestos do usuário.
Essa divisão importa porque mudar a posição de um projeto é uma operação sobre a organização; desenhar a barra que indica o destino do arraste é uma operação de apresentação. As duas precisam conversar, mas não precisam se tornar a mesma coisa.
Os frames conectam a lista e o cabeçalho ao modelo. A integração com a Welcome Page fica em units próprias. Tradução, imagens e a janela Sobre também têm responsabilidades separadas.
É a mesma ideia que discutimos no artigo sobre units e responsabilidades: a organização de código deve acompanhar os motivos pelos quais cada parte muda.
O arquivo de configuração também é uma interface
A lista fica em JSON no computador do usuário, separada por versão do Delphi. Assim, o Delphi 11 pode ter sua organização e o Delphi 13, outra.
A persistência guarda categorias, grupos, caminhos e preferências de ordem e recolhimento. Ao gravar uma configuração existente, o Hub escreve primeiro um arquivo temporário e preserva a versão anterior em um backup .bak.
O formato foi ampliado ao longo do desenvolvimento para incluir categorias e ordem manual, mantendo a leitura dos formatos anteriores. O cuidado aqui é tratar os dados do usuário como um contrato: a evolução da interface não deve obrigar alguém a reconstruir sua lista de atalhos.
Exportar a organização é diferente de copiar os projetos
A exportação gera um JSON com a organização. A importação permite mesclar novos atalhos ou substituir a lista atual.
Esse arquivo não contém os fontes dos projetos: contém referências aos caminhos. Ao migrar para outro computador, os projetos precisam existir nas mesmas localizações, ou você deve adicioná-los novamente a partir dos novos caminhos.
O Hub não exige conta nem envia a lista para um serviço. A organização permanece local, sob seu controle.
Uma interface que acompanha o ambiente
O painel utiliza as cores fornecidas pela IDE para acompanhar os temas claro e escuro. A interface oferece português, inglês, espanhol, alemão e francês, com seleção automática ou manual do idioma. Desde a versão 0.26.10.12b essa escolha fica em um arquivo, settings.json, ao lado das listas: o Hub não guarda nenhuma configuração no registro do Windows. Na mesma versão, a janela “Sobre” ganhou o link Avisar de um problema, que abre a página de issues do projeto no GitHub.
Outro cuidado técnico é o ciclo de vida da view. A Welcome Page pode destruir o frame durante o encerramento da IDE; a integração precisa reconhecer isso para não tentar liberar a mesma instância novamente. É um detalhe pouco visível para quem usa, mas essencial para uma extensão conviver com o ambiente que a hospeda.
Código com propósito, na prática
O propósito do Hub é reduzir o esforço entre decidir no que trabalhar e abrir o projeto certo. Categorias, busca e ordenação são meios para isso, não um fim em si mesmas.
O produto é gratuito e de código aberto, sob a licença MIT, para uso pessoal e comercial, disponibilizado “como está” (as is), sem garantias. O pacote de instalação e o código-fonte estão no GitHub; o pacote inclui instalação, desinstalação e a licença.
Ver recursos e instalação do Hub →
Este artigo foi escrito a partir da versão 0.26.10.09a, com base na leitura da implementação e do histórico do projeto, e revisado em 10/10/2026 para a versão 0.26.10.10e, quando o Hub passou a ter código aberto, e em 12/10/2026 para a versão 0.26.10.12b. A apresentação está na página do produto; os termos completos estão na licença do Hub.

