Desenvolvimento de uma aplicação POC em Electron que permita o uso de serial port. Essa aplicação tem como objetivo final ser aplicado num ambiente Windows e ser usado em plataformas de Totem (auto atendimento). A aplicação também precisa permitir listar as portas:
- USB;
- RS232;
- WebCam;
- Impressora;
Para realizar as demos dessa série, se faz necessário instalar os seguintes programas:
- Visual Studio Code;
- Node.JS v.8.x;
- Electron v. 1.x - DOWNLOAD AQUI
- Uso da Biblioteca: serial Port;
- Uso da Biblioteca v.1.x: node-usb;
- Uso da Biblioteca: electron-installer-dmg;
- Uso da Biblioteca: electron-packager;
- ESlint;
- ES5;
Caso queira testar a aplicação de maneira local basta seguir os passos abaixo:
Para começar, você deve simplesmente clonar o repositório do projeto na sua máquina e instalar as dependências.
Antes de instalar as dependências no projeto, você precisa seguir os seguintes passos:
Passo: 1) Node.Js: Caso não tenha, basta realizar o download Aqui
Passo: 2) Instalar Globalmente o Electron: bastam digitar o comando abaixo:
> npm install -g electron
Passo: 3) Instalar Globalmente o electron-packager: bastam digitar o comando abaixo:
> npm install -g electron-packager
Passo: 5) Instalar Globalmente o node-pre-gyp: bastam digitar o comando abaixo:
> npm install -g node-pre-gyp
Passo: 6) Instalar Globalmente o electron-builder: bastam digitar o comando abaixo:
> npm install -g electron-builder
Passo: 7) Instalar Globalmente o electron-installer-debian: bastam digitar o comando abaixo: (Usuários Linux)
> npm install -g electron-installer-debian
Passo: 0) Instalar Globalmente o node-gyp: bastam digitar o comando abaixo:
> npm install -g node-gyp
Passo: 0.1) Já para usuários Windows, para realizar a instalação do node-gyp se faz necessário seguir os passos abaixo:
-
0.1.1) Instalar o Python 2.x: DOWNLOAD AQUI
-
0.1.2) Instalar globalmente o node-gyp: DOCUMENTAÇÃO PARA INSTALAÇÃO DE MANEIRA CORRETA AQUI
-
0.1.3) Criar manualmente o arquivo binding.gyp dentro do diretório do node_modules do AppData, conforme o exemplo abaixo:
> C:\users\UserName\appdata\roaming\npm\node_modules\node-gyp
- 0.1.4) Incluir no arquivo binding.gyp o seguinte bloco de código e salve:
{
"targets": [{
"target_name": "binding",
"sources": [ "build/Release/binding.node" ]
}]
}
- 0.1.5) Feito isso, agora execute os seguintes comandos abaixo dentro do mesmo diretório do appData:
> node-gyp configure
> node-gyp configure --msvs_version=2015
> node-gyp build
Seguindo todos esses passos, vocês estará para prono para instalar as depedências do projeto na pasta do projeto! ;)
Abre o cmd (caso esteja utilizando o Windows) e digite a path do seu projeto
cd "C:\Users\NomeDoComputador\Documents\..."
Depois, quando estiver na pasta do projeto, basta digitar no cmd a seguinte instrução: (dentro do src)
npm install
Ao digitar a instrução acima, automaticamente ele irá baixar todas as dependências listadas e definidas no arquivo package.json:
node_modules
- que contêm os packages do npm que precisará para o projeto.
Para a execução da aplicação se faz necessário ir até o 'src' do projeto e executar o seguinte comando abaixo:
npm run start
Ao executar o comando acima, apresentará a seguinte janela da aplicação no Electron:
É porque foi executado com sucesso! 😃
Para distros Linux, bastam digitar o comando abaixo:
> npm run package-linux
Criará uma pasta 'release-builds'. Após criado, digitar o comando abaixo:
> npm run create-debian-installer
E... vòilá! Bastam entrar na pasta 'release-builds' e encontrar a extensão .deb para fazer a instalação da aplicação no seu Linux! 😃
Para distros Windows, bastam digitar o comando abaixo:
> build -w
Para distros MAC, bastam digitar os comandos abaixo:
Primeiro: deve executar o comando abaixo para poder gerar o build & pacotes para o MAC
> build -m
Caso queiram que eu implemente algo no código, abram uma issue nesse repositório. Assim, todos poderão colaborar para o melhor desenvolvimento desse repositório. E sintam-se à vontade em fazer Pull Requests!!
Não esqueçam de dar uma ⭐ no repositório e claro: Apreciem sem moderação!! ❤️ ❤️ ❤️
(documentação em desenvolvimento)