Projeto pessoal · Operação de softwareVersões, builds e produtos
Seus produtos.Uma visão central.
Um app desktop para acompanhar releases, builds, clientes e feedbacks.
Releases, builds e feedbacks de cada produto num painel só.
- Tauri 2
- Rust
- React 19
- SQLite
Projeto pessoal · Operação de softwareVersões, builds e produtosReleasesBuildsClientes e feedbacks
Seus produtos.Uma visão central.
Um app desktop para acompanhar releases, builds, clientes e feedbacks.
- Tauri 2
- Rust
- React 19
- SQLite
Releases, builds e feedbacks de cada produto num painel só.
- Tauri 2
- Rust
- React 19
- SQLite
O painel
Cada produto, uma olhada.
Quem cuida de vários programas vive abrindo o GitHub para saber em que versão cada um está e se o último build passou. Aqui cada produto tem a sua página: a versão no ar, o estado do build e quantos pedidos novos chegaram, num lugar só.
DevHub · Painel de Controle
BabyShoes
collin-labs/babyshoes
- Versão publicadav1.6.2A última que saiu do rascunho.
- Último buildPassouO mais recente do repositório.
- Feedbacks novos29 no total, guardados no computador.
Publicar nova versãoDispara o build na nuvem e cria a versão.
Publicar- RepositórioAbre no GitHub
github.com/collin-labs/babyshoes - ReleasesAs versões
github.com/collin-labs/babyshoes/releases - ActionsOs builds
github.com/collin-labs/babyshoes/actions
De onde vem cada número
- A versãoO programa pergunta ao GitHub pelas versões e mostra a primeira que já foi publicada. Rascunho não conta.
- O buildVem do registro de builds do repositório: na fila, rodando, passou ou falhou.
- Os pedidosContados no banco do próprio computador, separando os novos dos que já foram vistos.
Os produtos são do próprio dono; versões e contagens aqui são de exemplo. No programa, elas chegam do GitHub na hora em que o projeto é aberto.

DevHub GitHub · Integração e publicação
Da versão ao workflow.
Consulte releases e builds. Dispare a publicação pelo painel.
GitHub REST APIGitHub ActionsReleases e buildsPublicação por workflow configurado no repositório.O programa não abre o site do GitHub: ele conversa direto com o serviço, por quatro chamadas. Uma confere quem é você, duas trazem as versões e os builds, e a última manda a nuvem começar uma versão nova.
As quatro chamadas
Antes de tudo, o programa confere se a chave de acesso (o token) vale e de quem ela é.
O pedido
GET api.github.com/user
- Authorization
- Bearer github_pat_…
- Accept
- application/vnd.github+json
- X-GitHub-Api-Version
- 2022-11-28
- User-Agent
- DevHub-Panel
A resposta200 OK
- { "login": "collin-labs", … }
O que o painel faz com isso
Se a chave vale, o nome da conta aparece em verde nas configurações e o painel libera os projetos. Se não vale, aparece o aviso de chave inválida.
Os endereços, os cabeçalhos e o conteúdo enviado são os do núcleo em Rust (github.rs). As respostas estão resumidas.
A publicação
Um número, um clique.
Lançar uma versão nova de um programa costuma ser uma lista de passos de cabeça: mudar o número em três arquivos, montar, assinar, enviar. Aqui você escreve o número e o que mudou; o resto a nuvem faz sozinha, sempre na mesma ordem.
Publicar nova versão
Ao publicar, o build começa na nuvem do GitHub (cerca de 10 minutos). A versão fica como rascunho para você revisar e publicar.
Publicação disparada! O build está rodando na nuvem.
O que a nuvem fazv1.6.3
- Baixar o códigoA nuvem pega o projeto do repositório.GitHub Actions
- Instalar o Node.jsA ferramenta que monta a tela.
- Instalar o RustA linguagem do núcleo do programa.
- Guardar o que já foi montadoNa próxima vez, o Rust não monta tudo de novo.
- Ajustar a versãoO número novo entra nos três arquivos, sem o caractere invisível que quebra a montagem.
- Instalar as dependênciasAs peças que a tela usa.
- Montar, assinar e publicarGera o instalador, assina e cria a versão com o arquivo de atualização.GitHub Actions
Os passos são os do arquivo de automação do projeto (publicar.yml). A conta da versão sugerida é a do programa: soma 1 no último número.
O retorno
Nada se perde no meio do caminho.
Pedido de cliente chega por todo lado e some no meio das mensagens. Aqui cada um vira uma ficha no projeto certo (erro, sugestão, melhoria ou nota), com prioridade e a versão em que apareceu, e anda de coluna até ser resolvido.
2 novos · 7 no total
Novo2
BugUrgente
Relatório não abre depois da atualizaçãoLoja Aurora
v2.2.0SugestãoNormal
Exportar a lista de contratos em planilhaEscritório Prisma
v2.3.0
Em análise2
MelhoriaAlta
Busca mais rápida na tela de clientesLoja Aurora
v2.2.0NotaBaixa
Pediu um passo a passo em vídeoConfecção Vale
v2.1.4
Resolvido2
BugAlta
Data aparecendo em inglês no reciboConfecção Vale
v2.1.4SugestãoNormal
Atalho de teclado para salvarEscritório Prisma
v2.3.0
Descartado1
MelhoriaBaixa
Botão de imprimir na própria fichaMercado Bom Dia
v1.9.0
Pedidos e empresas são de exemplo. No programa, cada ficha é registrada no projeto e guardada no banco do computador; o contador do painel lê dali.

DevHub GitHub · Organização e conhecimento
O processo também faz parte do produto.
Guias internos, clientes e feedbacks acompanham a operação de cada projeto.
Clientespor projetoFeedbacks
organizadosGuias e
modelosDados locais em SQLite · Publicação pelo GitHub Actions
O jeito de trabalhar mora dentro do próprio programa: como ele funciona, como o GitHub numera e publica as versões, e a receita que todo programa novo segue para já nascer se atualizando sozinho. Escrito para quem não é do ramo.
Bem-vindo ao DevHub
Quem cuida de vários sistemas controla tudo daqui, sem abrir terminal, lembrar de comandos ou mexer em arquivos.
Um painel de carro
Você olha e sabe na hora como cada projeto está: qual versão está no ar, se o último build deu certo e se tem cliente pedindo alguma coisa.
O que ele faz
- Mostra o estado de cada projeto, trazido do GitHub.
- Publica versões novas com um botão.
- Guarda os feedbacks por projeto e por estado.
- Lista as empresas que usam cada sistema e a versão de cada uma.
Do lado do cliente
O cliente nunca vê o DevHub. Ele usa o programa que recebeu; quando sai uma versão nova, o programa dele avisa ao abrir, atualiza e reinicia.
O dia a dia
Melhorou o código, abre o DevHub, clica em Publicar e escreve o que mudou. Pronto.
A primeira vez
O primeiro instalador vai na mão; daí em diante, as versões novas chegam sozinhas.
Os guias são textos do próprio programa, resumidos aqui. No DevHub, eles ficam numa aba própria, para consultar e copiar.
O núcleo
Cinco tabelas, vinte funções.
Por baixo da janela, um banco de dados pequeno guarda tudo no próprio computador: nada fica num servidor de terceiros. São cinco tabelas, e o núcleo em Rust tem vinte funções que a tela chama; cada botão do programa é uma delas.
config3
Os ajustes do programa, como a conta do GitHub conectada.
PKchaveTEXTvalorTEXTObrigatório (NOT NULL)atualizado_emTEXTPadrão: a hora em que foi gravado
projetos8
Cada produto acompanhado: o dono e o nome do repositório no GitHub, a cor e o arquivo de automação.
PKidINTEGERnomeTEXTObrigatório (NOT NULL)github_ownerTEXTObrigatório (NOT NULL)github_repoTEXTObrigatório (NOT NULL)corTEXTDEFAULT '#6366f1'workflow_arquivoTEXTDEFAULT 'publicar.yml'ativoINTEGERPadrão: 1 (sair da lista não apaga)criado_emTEXTPadrão: a hora em que foi gravado
clientes7
Quem usa cada produto e em que versão.
PKidINTEGERFKprojeto_idINTEGERSome junto com o projeto (ON DELETE CASCADE)nomeTEXTObrigatório (NOT NULL)emailTEXTtelefoneTEXTversao_instaladaTEXTativoINTEGERPadrão: 1 (sair da lista não apaga)
feedbacks6
Os pedidos de cada produto, com tipo, estado e prioridade.
PKidINTEGERFKprojeto_idINTEGERSome junto com o projeto (ON DELETE CASCADE)tipoTEXTSó aceita: bug · sugestao · melhoria · notastatusTEXTSó aceita: novo · em_analise · resolvido · descartadoprioridadeTEXTSó aceita: baixa · normal · alta · urgenteversao_appTEXT
publicacoes5
O registro de cada versão disparada pelo painel.
PKidINTEGERFKprojeto_idINTEGERSome junto com o projeto (ON DELETE CASCADE)versaoTEXTObrigatório (NOT NULL)notasTEXTstatusTEXTPadrão: 'disparado'
A luz negra mostra as regras que o próprio banco faz cumprir.Ligada ao projeto: some junto quando o projeto é apagado.
Tabelas, colunas e regras são as do arquivo do banco (schema.rs); as funções, as do registro do núcleo (lib.rs). Quatro índices aceleram a busca por projeto e por estado.
As tecnologias
Do que é feito, peça por peça
Um programa de computador que conversa com o GitHub: a tela é React dentro do Tauri 2, e o núcleo em Rust guarda tudo num banco SQLite no próprio computador e faz as chamadas ao GitHub. Escolha uma peça para ver o que ela faz aqui e em que arquivo está.
15tecnologias, em 3 camadas
Tela
Janela e núcleo
Dados e GitHub
Próximo projeto43 / 51

Ferramentas para criação e desenvolvimentoEncoding CheckerPrograma de computador que lê o projeto byte a byte, aponta cada acento quebrado por arquivo, linha e coluna, corrige com cópia antes e compara a pasta original com a corrigida.React 18.3TypeScript 5.9Tailwind CSS 3.4Vite 5.4
← AnteriorDevHub Central de Projetos

