Skip to content

Vincenzo140/4web_maintenance_native

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sistema de Gerenciamento de Manutenção

Este é um sistema completo de gerenciamento de manutenção, construído com uma arquitetura moderna e escalável, que abrange backend (FastAPI), frontend (React com TypeScript) e mobile (React Native com Expo). O sistema permite o gerenciamento de máquinas, manutenções, peças e equipes, fornecendo uma solução integrada para otimizar as operações de manutenção.

Arquitetura do Sistema

graph LR
    subgraph Frontend ["Frontend (React + TypeScript)"]
        A[React Components] --> B[API Requests]
        B --> C[Zustand State Management]
        C --> D[UI/UX - TailwindCSS, Lucide]
    end
    
    subgraph Backend ["Backend (FastAPI)"]
        E[API Endpoints] --> F[Redis Cache]
        E --> G[Database - PostgreSQL/MySQL]
        H[Authentication] --> E
        I[Business Logic] --> E
    end

    subgraph Mobile ["Mobile (React Native + Expo)"]
        J[React Native Components] --> K[API Requests]
        K --> L[State Management - Context API/Zustand]
        L --> M[Mobile Navigation - React Navigation]
    end

    Frontend -->|REST API| Backend
    Mobile -->|REST API| Backend

Loading

Stacks Utilizadas

Backend:

FastAPI Python Redis Poetry Uvicorn

Frontend:

React TypeScript TailwindCSS Vite Lucide Zustand

Mobile:

React Native Expo TypeScript React Navigation Axios

Funcionalidades

  • Gerenciamento de Máquinas: Cadastro, atualização, exclusão e visualização de máquinas com informações detalhadas, incluindo histórico de manutenção.
  • Gerenciamento de Manutenções: Registro de novas manutenções, atribuição de equipes, acompanhamento do status e histórico de manutenções por máquina.
  • Gerenciamento de Peças: Controle de estoque, cadastro de novas peças, atualização de quantidades e informações de fornecedores.
  • Gerenciamento de Equipes: Criação de equipes de manutenção, atribuição de membros e especialidades.
  • Autenticação de Usuários: Sistema de login e cadastro de usuários com segurança.
  • Dashboard com Estatísticas: Visão geral das principais métricas do sistema, como total de máquinas, equipes, manutenções e visitas. (Frontend)
  • Testes Unitários e de Integração: Garantia de qualidade do código através de testes automatizados. (Backend)

Rodando o Projeto

Backend

  1. Navegue até a pasta backend.
  2. Instale as dependências: poetry install
  3. Rode o servidor: poetry run uvicorn main:app --reload

Frontend

  1. Navegue até a pasta frontend.
  2. Instale as dependências: npm install
  3. Rode o projeto: npm run dev

Mobile

  1. Navegue até a pasta mobile.
  2. Instale as dependências: npm install ou yarn
  3. Rode o projeto: npm start
  4. Coloque seu IP público no arquivo services/api.ts.

Docker

  1. Certifique-se de ter o Docker e o Docker Compose instalados.
  2. Na raiz do projeto, execute: docker-compose up --build

Se tiveres Linux

  1. Na raiz do projeto, execute: chmod +x ./start.sh
  2. Então execute ./start.sh
  3. Não esqueça de colocar seu IP público na pasta mobile/services/api.ts

Estrutura de Pastas

├── .gitignore
├── README.Docker.md
├── backend
│   ├── Dockerfile
│   ├── ... (código do backend)
├── compose.yaml
├── frontend
│   ├── Dockerfile
│   ├── ... (código do frontend)
├── mobile
│   ├── Dockerfile
│   ├── ... (código do mobile)
└── README.md

Licença

MIT

Contato

Vincenzo Amendola - vincenzo.amendola141@gmail.com

Screenshots

Backend - API Routes

Descrição: Documentação dos endpoints da API.

API Routes Documentation 1

API Routes Documentation 2

API Routes Documentation 3

API Routes Documentation 4

Frontend - Telas

Home Screen: Página inicial do sistema.
Home Screen

Login Screen: Tela de login de usuários.
Login Screen

SignUp Screen: Tela de cadastro de novos usuários.
SignUp Screen

Dashboard Screen: Visão geral das métricas do sistema.
Dashboard Screen

Machines Screen: Listagem de máquinas cadastradas.
Machines Screen

Create Machines Screen: Formulário de criação de novas máquinas.
Create Machines Screen

Maintenance Screen: Listagem de manutenções.
Maintenance Screen

Create Maintenance Screen: Formulário de criação de manutenção.
Create Maintenance Screen

Parts Screen: Listagem de peças.
Parts Screen

Create Parts Screen: Formulário de criação de peças.
Create Parts Screen

Teams Screen: Listagem de equipes.
Teams Screen

Create Teams Screen: Formulário de criação de equipes.
Create Teams Screen

Mobile - Telas

Maintenance Screen (Mobile): Tela de manutenção no aplicativo móvel.
Mobile Maintenance Screen

Machine Screen (Mobile): Tela de detalhes da máquina no aplicativo móvel.
Mobile Machine Screen

Parts Screen (Mobile): Tela de listagem de peças no aplicativo móvel.
Mobile Parts Screen

Teams Screen (Mobile): Tela de equipes no aplicativo móvel.
Mobile Teams Screen

Acesse o Vídeo de Demonstração

Clique aqui para assistir ao vídeo de demonstração

Ou clique na imagem abaixo:

Vídeo Demonstração

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published