O "Airbnb" para seus pets. Sistema de gerenciamento de tutores e hospedagem de animais.
Este projeto foi desenvolvido como atividade da disciplina Programação para Internet II (Prof. Rogério Silva), do curso de Análise e Desenvolvimento de Sistemas – IFPI.
O objetivo foi criar uma Single Page Application (SPA) robusta utilizando React, aplicando conceitos de:
- Componentização e Hooks
- Consumo de API REST (Json-Server)
- Roteamento (React Router Dom)
- Formulários com validações complexas
- Prevenção de erros comuns (Race Conditions)
- Cadastro de Usuário com validação de domínio de e-mail
- Login com verificação simulada
- Prevenção de múltiplos cliques (Race Condition)
-
Listagem de todos os tutores
-
Cadastro com:
- Validação de telefone
- Validação de nome (sem números ou caracteres especiais)
- Domínios de e-mail permitidos
-
Listagem com cards estilizados
-
Relacionamento automático do animal com tutor
-
Cadastro/Edição com:
- Validação de raça
- Limite de caracteres
- Controle de status (Aguardando, Hospedado, Finalizado)
- React + Vite: Core da aplicação.
- TypeScript: Tipagem estática para maior segurança.
- Tailwind CSS: Estilização utilitária e responsiva.
- Json-server: Simulação de API REST completa.
- React Router DOM: Navegação entre páginas.
- Frontend (GitHub Pages): https://jpaullopes.github.io/AnimalHotel/
- Backend API (Render): https://backend-animalhotels.onrender.com
Nota: O backend no Render pode demorar até 1 minuto na primeira requisição.
- Node.js instalado
git clone https://github.com/jpaullopes/AnimalHotel.git
cd AnimalHotelnpm installnpm run servernpm run devAcesse: http://localhost:5173
src/
├── components/ # Componentes reutilizáveis (Header, TutorCard, etc.)
├── pages/ # Páginas da aplicação (Home, Login, Animais, Tutores, etc.)
└── App.tsx # Configuração de Rotas
|
Álvaro Pietro |
João Paulo |