Este repositório contém um modelo de aplicativo web full stack que é executado na pilha de soluções FARM, que significa:
A pilha FARM é mais ou menos uma extensão da pilha LAMP com estas mudanças notáveis:
Flask é usado para escrever APIs/middleware da web que podem se comunicar entre a UI da web e o backend/banco de dados da web. Este é o núcleo de todo o aplicativo que une as partes do aplicativo full stack.
Observe que este modelo específico não usa um ORM e, em vez disso, usa o módulo pymysql . Isso significa que os desenvolvedores precisam escrever consultas SQL, mas podem maximizar a complexidade das consultas necessárias para executar no banco de dados.
AWS é o serviço de nuvem no qual o aplicativo pode ser hospedado. Podemos hospedar toda a pilha de software nos seguintes serviços:
Isso significa que os desenvolvedores podem manter tudo em uma plataforma e minimizar o trabalho de DevOps/TI.
React é a estrutura na qual a UI da web é executada. A aplicação React também pode ser executada em AWS Lambda com NodeJS.
Este modelo usa JavaScript/JSX, mas TypeScript também pode ser usado.
MySQL é o banco de dados relacional que o backend da web usa. Também pode ser hospedado na AWS por meio de seu serviço RDS.
Para executar este aplicativo da web, o seguinte precisa ser feito:
db/Para configurar a instância MySQL, siga estas etapas:
mysql na interface de linha de comando do Linux.sample.sql na instância. Ele criará um esquema chamado SampleInventory e, em seguida, inicializará uma tabela chamada Inventory . A base de código para a API Flask pode ser encontrada no diretório api/ .
virtualenv farm-stack depois de navegar até esse diretório.source farm-stack/bin/activateapi/ e execute pip3 install -r requirements.txt para instalar todos os módulos Python necessários para a API.dbcreds.py no diretório api/ e edite as credenciais do banco de dados conforme necessário. python3 app.py para executar a API em http://localhost:8080 . A base de código para a UI do React pode ser encontrada no diretório ui/ . Este modelo usa yarn como gerenciador de pacotes; é crucial que os desenvolvedores não misturem outros gerenciadores de pacotes como npm ao adicionar novos módulos.
Observe que pacotes como react-bootstrap estão faltando neste modelo.
yarn install para instalar todas as dependências necessárias. yarn start para executar no modo de desenvolvimento.http://localhost:3000 no navegador.