DaLvz - Interface de Linha de Comando
Ambiente multiplataforma completo para desenvolvimento moderno
✨ Características Principais
- Multiplataforma: Web, Desktop (Electron) e Mobile (Capacitor).
- CLI poderosa com comandos para iniciar projetos, criar modelos ORM e compilar CSS/JS.
- Integração nativa com Express.js, EJS e Electron.
- Suporte a Babel para transpilação de JavaScript moderno.
- Ferramentas de automação com `concurrently`, `wait-on` e `open`.
🚀 Começando com DaLvz CLI
Siga estes passos para instalar a DaLvz CLI, iniciar seu primeiro projeto e entender como o ambiente de desenvolvimento funciona.
1. Instalação da CLI
Para começar, instale a DaLvz CLI globalmente na sua máquina usando o npm (Node Package Manager). Isso permitirá que você use o comando `dalvz-cli` de qualquer diretório.
npm install -g dalvz-cli
2. Iniciando um Novo Projeto
Com a CLI instalada, navegue até o diretório onde deseja criar seu projeto e execute o comando `iniciar`. Substitua `NomeDoSeuProjeto` pelo nome que preferir:
npx dalvz-cli iniciar NomeDoSeuProjeto
cd NomeDoSeuProjeto
3. O que o Comando `iniciar` Faz?
Ao executar `npx dalvz-cli iniciar`, a CLI cria uma estrutura de projeto otimizada para desenvolvimento multiplataforma. Ele configura um `package.json` com scripts úteis para diferentes cenários de desenvolvimento e build. Vamos dar uma olhada nos principais scripts que você encontrará:
Scripts Importantes no seu package.json:
npm run dalvz
Este é o comando principal para desenvolvimento. Ele executa três processos simultaneamente: 1. `npm start` (que por sua vez roda `node src/server.js`): Inicia seu servidor web local (geralmente na porta 1010). 2. Aguarda o servidor estar online (`wait-on http://localhost:1010`) e então executa `npm run electron`: Abre a versão desktop da sua aplicação usando Electron. 3. Aguarda o servidor estar online e então executa `node ./open-browser.js`: Abre a versão web da sua aplicação no seu navegador padrão. Essencialmente, você tem o ambiente web e desktop rodando e atualizando em tempo real.
npm run dalvz:web
Similar ao `npm run dalvz`, mas focado apenas no desenvolvimento web. Ele inicia o servidor (`npm start`) e abre a aplicação no navegador.
npm run dalvz:desktop
Focado no desenvolvimento desktop. Inicia o servidor (`npm start`) e a aplicação Electron.
npm run dalvz:servidor
Comando base que inicia o servidor Node.js (Express) definido em `src/server.js`.
npm run dalvz:build
Prepara sua aplicação para produção. Ele limpa o diretório `dist` (usando `rimraf`), transpila o código da pasta `src` para `dist` usando Babel (convertendo JavaScript moderno para versões compatíveis) e copia arquivos estáticos como `.ejs`, componentes, arquivos públicos, backend e rotas para dentro da pasta `dist`.
npm run dalvz:desktop:empacotar
Após rodar `npm run dalvz:build`, este comando utiliza o `electron-builder` para empacotar sua aplicação Electron em um instalador distribuível para diferentes sistemas operacionais.
Desenvolvimento Mobile com Capacitor
A DaLvz CLI também visa facilitar a criação de aplicativos móveis a partir da sua base de código web usando Capacitor. Após iniciar seu projeto e desenvolver sua interface web, você pode adicionar as plataformas mobile:
Comandos de exemplo:
npx cap init [NomeApp] [br.com.appId] --web-dir=dist/publico (Adapte web-dir para o diretório de saída do seu build web)
npx cap add android
npx cap add ios
npm run dalvz:build (Para gerar a versão web otimizada)
npx cap sync (Sincroniza o build web com as plataformas nativas)
npx cap open android (ou ios, para abrir no Android Studio / Xcode)
Os scripts `apk` e `ios` (`npm run apk`, `npm run ios`) no seu `package.json` são atalhos para `npx cap copy && npx cap open android` (ou ios), facilitando o fluxo de build e abertura do projeto nativo.
💻 Comandos da CLI
-
npx dalvz-cli iniciar NomeDoProjeto
Inicializa um novo projeto com a estrutura e scripts DaLvz. Veja a seção 'Começando' para detalhes completos.
-
npx dalvz-cli criar:modelo NomeModel atributo1:string atributo2:number
Cria um novo modelo ORM.
-
npx dalvz-cli compilar:css
Compila os arquivos CSS.
-
npx dalvz-cli compilar:jsorg
Organiza e processa códigos em JavaScript puro em formatos .jorg.
-
npx dalvz-cli logar:vercel
Loga no serviço de deploy automático Vercel.
-
npx dalvz-cli publicar:vercel
Realiza o deploy automático da sua aplicação na Vercel.