Status do Projeto:
⚠️ (em desenvolvimento)
Trabalho interdisciplinar do 5º Semestre do curso de Análise e Desenvolvimento de Sistemas. A tarefa é desenvolver um aplicativo, que inicialmente funcionará apenas em dispositivos Android. Mas antes de chegar ao produto que será disponibilizado aos usuários, será preciso desenvolver uma espécie de protótipo funcional, com uma interface próxima à final, e contendo as principais funcionalidades e recursos, mas sem se preocupar ainda com métodos de pagamento ou a comunicação com o servidor e banco de dados da fazenda.
E como extra, fizemos o backend (api) e uma versão web.
Uma das principais fontes de renda da fazenda de Lúcia é a venda do que ela produz, como o leite, legumes, verduras, entre outros produtos. Com a informatização da fazenda, tudo está ligado a um sistema robusto, capaz de gerenciar cada atividade e produções da fazenda, como por exemplo, controlar seus produtos e estoques. Lúcia vende em atacado para grandes varejistas, de forma tradicional, porém ela gostaria de expandir o negócio, e começar a oferecer seus produtos ao consumidor final! Para este fim, ela precisa de um aplicativo mobile para que os consumidores possam visualizar todo seu catálogo de produtos, efetuar seus pedidos, pagar e agendar a entrega.
✔️ Funcionalidade 1
✔️ Funcionalidade 2
✔️ Funcionalidade 3
Tela inicial | Tela de login | Tela de cadastro de usuário |
Tela com os produtos listados | Tela de checkout |
Seguir os passos de configuração do ambiente
Para poder salvar os dados no backend, precisa de um banco SQL instalado. Como se trata de apenas um trabalho acadêmico, recomenda-se instalar um servidor de código aberto, vamos recomendar o XAMPP. Ele possui versões para os principais sistemas operacionais (Windows, Linux e MacOS).
Depois de instalado, abra o phpMyAdmin ou o terminal e crie o banco de dados. Pode dar o nome que preferir para o banco, só lembre de alterar depois no arquivo api/mysql.js. Depois crie as seguintes tabelas:
create table usuario(
id int primary key auto_increment,
email varchar(200),
nome varchar(200),
senha varchar(200)
);
create table produto(
id int primary key auto_increment,
nome varchar(200),
preco double,
descricao varchar(2000),
foto blob null
);
No terminal, clone o projeto:
git clone https://github.com/gusbdev/FazenTECH/
Depois de clonar o projeto, seguir os passos para cada parte do projeto:
Mobile (app)
Abrir o diretório app no terminal de alguma IDE ou simplesmente em um terminal do seu S.O e executar o comando:
npm install
ou
yarn install
Depois, execute o comando:
npx react-native run-android
Caso tenha configurado o ambiente corretamente, um celular será emulado no seu computador ou se configurou um dispositivo físico, a instalação do aplicativo será feita nele.
Backend (api)
Abrir o diretório api no terminal de alguma IDE ou simplesmente em um terminal do seu S.O e executar o comando:
npm install
Isso irá instalar as dependências usadas no projeto.
Depois, execute o comando:
npm start
Isso irá executar o server, que está configurado na porta 3333.
Frontend (web)
Abrir o diretório web no terminal de alguma IDE ou simplesmente em um terminal do seu S.O e executar o comando:
npm install
Isso irá instalar as dependências usadas no projeto.
Depois, execute o comando:
npm start
Isso irá executar a versão web no seu navegador padrão. Está configurado na porta 3000.
Coloque um passo a passo para executar os testes
$ npm test, rspec, etc
Se for necessário configurar algo antes de iniciar o banco de dados insira os comandos a serem executados
...
Liste as tecnologias utilizadas no projeto que não forem reconhecidas pelo Github
Em issues foram abertos alguns problemas gerados durante o desenvolvimento desse projeto e como foram resolvidos.
📝 Interface funcional
📝 Cadastro de usuários
📝 Catálogo de produtos em forma de lista, com a foto do produto, nome e preço, com um elemento que possibilite escolher a quantidade
📝 Tela para revisar a compra (produtos, quantidades, preço final...) com um botão para enviar o pedido (Aqui, como se trata de um protótipo, todas as informações relevantes ao pedido devem ser enviadas por e-mail, para simular o envio ao servidor)
Gustavo Barbosa |
Igor Gabriel |
Ana Paula |
Rondiney Rafael |
---|
The MIT License (MIT)