web-architect-cli
v1.1.3
Published
O **Web Architect CLI** é uma ferramenta de linha de comando desenvolvida para padronizar e acelerar a criação de projetos no ecossistema **Sankhya**.
Readme
🏗️ Web Architect CLI
O Web Architect CLI é uma ferramenta de linha de comando desenvolvida para padronizar e acelerar a criação de projetos no ecossistema Sankhya.
Com um único comando, você pode gerar:
- 🖥️ Interfaces Web: HTML5/JSP com TailwindCSS e compactação automática (zip).
- 🗄️ Personalizações de Banco: Estrutura organizada para PL/SQL (Procedures, Triggers, Views).
- ☕ Extensões Java: Projetos configurados nativamente para IntelliJ (JDK 1.8 + libs-java).
📦 Instalação
Para utilizar a ferramenta em qualquer lugar do seu sistema, instale globalmente via npm:
npm install -g web-architect-cli@latestRequisito: É necessário ter o Node.js instalado.
⚠️ Usuários Windows (Erro de Permissão)
O Windows bloqueia scripts por padrão. Se ao instalar ou executar o comando você receber o erro em vermelho:
"cannot be loaded because running scripts is disabled on this system"
Execute o comando abaixo no seu terminal antes de usar a ferramenta. Isso libera o uso de scripts apenas nesta janela (seguro):
PowerShell
Set-ExecutionPolicy Bypass -Scope Process🚀 Como Utilizar
Abra o terminal na pasta onde deseja criar o projeto e execute:
Bash
web-archO assistente interativo apresentará um menu. Escolha o tipo de projeto:
Opção [1] HTML5 (Web & Dashboards)
Ideal para telas adicionais, dashboards e interfaces visuais.
O que faz: Cria estrutura MVC, configura TailwindCSS e gera script de build.
Diferencial: Possui o modo "Watch" (explicação abaixo).
Opção [2] PERSONALIZACAO (Banco de Dados)
Ideal para organizar scripts de banco e documentação técnica.
O que faz: Cria pastas padronizadas (
src/Procedure,src/Trigger, etc.) e inicializa o Git.Estrutura: Separa o código-fonte (
src) da documentação funcional (doc).
Opção [3] JAVA (IntelliJ Native)
Ideal para eventos, botões de ação e agendadores Java.
O que faz: Gera a estrutura de pastas Java (
br.com.sankhya...) e os arquivos de configuração do IntelliJ IDEA.Configuração: Já define o projeto para JDK 1.8 e vincula a biblioteca global
libs-java.
🛠️ Fluxos de Trabalho (Workflows)
Dependendo do modelo escolhido, o fluxo de trabalho muda:
👉 Para Projetos Web (HTML5)
O grande trunfo aqui é a compactação automática.
Entre na pasta criada:
cd meu-projeto-webInicie o monitoramento:
npm startDesenvolva: Ao salvar qualquer arquivo (HTML, JS, CSS), o sistema gera automaticamente um .zip na raiz do projeto.
Implante: Basta subir esse zip para o Repositório de Arquivos do Sankhya.
👉 Para Projetos Java
O foco é a integração imediata com a IDE.
Abra o IntelliJ IDEA.
Vá em File > Open e selecione a pasta do projeto criado.
Pronto! O projeto será reconhecido como módulo Java, com JDK 1.8 selecionado e pastas de source (
src) configuradas.Nota: Certifique-se de ter uma Global Library chamada
libs-javaconfigurada no seu IntelliJ.
📂 Estruturas Geradas
Veja como cada projeto é organizado:
1. Web (HTML5)
Plaintext
meu-dashboard/
├── build.js # Automação de ZIP
├── index.jsp # Entry point Sankhya (<snk:load/>)
├── index.html # Testes locais
└── src/
├── controllers/ # Lógica JS
├── views/ # Manipulação de DOM
└── assets/ # TailwindCSS e Imagens2. Personalização
Plaintext
minha-customizacao/
├── doc/ # Documentação funcional/técnica
└── src/
├── Function/
├── Procedure/
├── Trigger/
├── View/
└── SQL/ # Scripts gerais3. Java (Sankhya)
Plaintext
meu-evento-java/
├── .idea/ # Configurações do IntelliJ (Versionado)
├── meu-evento.iml # Módulo Java com libs-java
├── out/ # Saída de compilação (Ignorado)
└── src/
└── br/com/sankhya/meuevento/
├── business/ # Regras de negócio (Eventos, Botões)
└── domain/ # Modelos e Repositórios💡 Casos de Uso (Workflows)
Aqui estão os cenários comuns onde o Web Architect CLI brilha:
Caso A: Início Rápido de Dashboards (HTML/JSP)
Você precisa criar uma tela customizada para apresentar indicadores.
Rode
web-arche nomeie comodash-financeiro.O projeto já nasce com
index.jspcontendo as importações Sankhya (<snk:load/>) eindex.htmlpara testes locais.Edite o
src/views/main.jsou o HTML.O arquivo
dash-financeiro.zipé atualizado instantaneamente.Faça o upload do ZIP no "Repositório de Arquivos" do sistema.
Caso B: Prototipagem com TailwindCSS
Você quer testar um layout moderno sem configurar Webpack ou PostCSS.
Rode
web-arch.Vá direto ao HTML e comece a usar classes utilitárias:
HTML
<div class="bg-blue-600 text-white p-4 rounded-lg shadow-md"> Olá, Mundo! </div>O Tailwind já vem injetado e pronto para uso via script (CDN/Local), sem build complexo.
Caso C: Padronização de Equipe
Vários desenvolvedores trabalhando em telas diferentes.
Ao usar o comando web-arch, todos os projetos seguem a mesma árvore:
src/controllers/(Lógica de negócio)src/views/(Manipulação de DOM)src/services/(Chamadas de API)
Isso facilita a manutenção cruzada: qualquer desenvolvedor sabe onde encontrar o código.
🤖 Assistente de Commit (Git)
Todos os projetos gerados (Web, Banco ou Java) já vêm configurados com um script de Commit Semântico. Isso garante que o histórico do seu projeto fique padronizado e profissional.
Como usar: Em vez de digitar os comandos do Git manualmente, basta rodar na raiz do projeto:
npm run commitO assistente interativo irá:
Perguntar o tipo de alteração:
feat: Nova funcionalidade.fix: Correção de bugs.docs: Alteração em documentação.style: Formatação, CSS, espaços.refactor: Melhoria de código sem mudar funcionalidade.chore: Alterações de build, configs, etc.
Pedir a mensagem do commit.
Executar automaticamente
git add .egit commit -m "tipo: mensagem".
🛠 Comandos do Projeto (Scripts)
Dentro da pasta do projeto criado, você pode usar:
| Comando | Ação |
|:---------------- |:-------------------------------------------------------------------------- |
| npm run commit | (Todos) Abre o assistente para realizar commits padronizados. |
| npm start | (Web) Inicia o modo Watch. Altera arquivo -> Gera ZIP automaticamente. |
| npm run build | (Web) Gera o ZIP do projeto uma única vez e encerra. |
