npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

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:

  1. 🖥️ Interfaces Web: HTML5/JSP com TailwindCSS e compactação automática (zip).
  2. 🗄️ Personalizações de Banco: Estrutura organizada para PL/SQL (Procedures, Triggers, Views).
  3. 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@latest

Requisito: É 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-arch

O 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.

  1. Entre na pasta criada: cd meu-projeto-web

  2. Inicie o monitoramento: npm start

  3. Desenvolva: Ao salvar qualquer arquivo (HTML, JS, CSS), o sistema gera automaticamente um .zip na raiz do projeto.

  4. 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.

  1. Abra o IntelliJ IDEA.

  2. Vá em File > Open e selecione a pasta do projeto criado.

  3. 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-java configurada 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 Imagens

2. Personalização

Plaintext

minha-customizacao/
├── doc/               # Documentação funcional/técnica
└── src/
    ├── Function/
    ├── Procedure/
    ├── Trigger/
    ├── View/
    └── SQL/           # Scripts gerais

3. 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.

  1. Rode web-arch e nomeie como dash-financeiro.

  2. O projeto já nasce com index.jsp contendo as importações Sankhya (<snk:load/>) e index.html para testes locais.

  3. Edite o src/views/main.js ou o HTML.

  4. O arquivo dash-financeiro.zip é atualizado instantaneamente.

  5. 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.

  1. Rode web-arch.

  2. 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>
  3. 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 commit

O assistente interativo irá:

  1. 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.

  2. Pedir a mensagem do commit.

  3. Executar automaticamente git add . e git 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. |