{"id":21018660,"url":"https://github.com/pedromarques391/carstorev2","last_synced_at":"2026-04-12T01:43:18.562Z","repository":{"id":239110238,"uuid":"798563229","full_name":"PedroMarques391/carStoreV2","owner":"PedroMarques391","description":"Modelo de site para revendedoras de carros construído com React.js, Next.js, TypeScript e estilizado com tailwindcss","archived":false,"fork":false,"pushed_at":"2024-05-27T02:06:57.000Z","size":29065,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-22T05:04:14.269Z","etag":null,"topics":["firebase-auth","firebase-firestore","firebase-storage","mobile-first","nextjs14","react-form-hook","reactjs","tailwindcss","typescript"],"latest_commit_sha":null,"homepage":"https://carstorepa.vercel.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PedroMarques391.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-05-10T02:59:07.000Z","updated_at":"2024-05-27T02:07:00.000Z","dependencies_parsed_at":"2024-11-19T10:45:23.153Z","dependency_job_id":null,"html_url":"https://github.com/PedroMarques391/carStoreV2","commit_stats":null,"previous_names":["pedromarques391/carstorev2"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/PedroMarques391/carStoreV2","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PedroMarques391%2FcarStoreV2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PedroMarques391%2FcarStoreV2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PedroMarques391%2FcarStoreV2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PedroMarques391%2FcarStoreV2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PedroMarques391","download_url":"https://codeload.github.com/PedroMarques391/carStoreV2/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PedroMarques391%2FcarStoreV2/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31701641,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-11T21:17:31.016Z","status":"ssl_error","status_checked_at":"2026-04-11T21:17:24.556Z","response_time":54,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["firebase-auth","firebase-firestore","firebase-storage","mobile-first","nextjs14","react-form-hook","reactjs","tailwindcss","typescript"],"created_at":"2024-11-19T10:27:00.823Z","updated_at":"2026-04-12T01:43:18.536Z","avatar_url":"https://github.com/PedroMarques391.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# [carStore V2](https://carstorepa.vercel.app)\n\nEste projeto é uma versão aprimorada do site [carStore](https://pedromarques391.github.io/carStore/). O repositório do projeto pode ser acessado [aqui](https://github.com/PedroMarques391/carStore). O site original foi desenvolvido há 5 meses.\n\n## Tecnologias Utilizadas\n\nO site foi desenvolvido utilizando as seguintes tecnologias:\n\n- **TypeScript**\n- **React.js**\n- **Next.js**\n- **TailwindCSS**\n- **Firebase** (incluindo storage, autenticação e Firestore)\n\n### Pacotes Auxiliares\n\nPara acelerar o desenvolvimento, foram utilizados os seguintes pacotes:\n\n- [**react-hook-form**](https://react-hook-form.com/get-started) para manipulação e validação de formulários\n- **@hookform/resolvers** com **Zod** para validação de schemas\n- [**react-toastify**](https://fkhadra.github.io/react-toastify/installation) para adicionar notificações à aplicação\n- [**Swiper**](https://swiperjs.com/get-started) para facilitar a manipulação de slides\n\n### Metodologia de Desenvolvimento\n\nFoi adotada a metodologia **mobile-first**, assegurando que o site seja totalmente responsivo.\n\n## Estrutura do Site\n\nO site possui as seguintes rotas principais:\n\n- **Home**: Página principal com formulário de pesquisa de veículos, filtragem por tipo de carroceria e exibição dos seis últimos veículos adicionados.\n- **Garage**: Página que exibe todos os veículos cadastrados no banco de dados, permitindo ao usuário alterar a ordem de exibição (do mais recente ao mais antigo).\n- **About**: Página com informações gerais sobre a loja, incluindo data de inauguração, missão, visão, valores e localização no Google Maps.\n- **LGPD**: Página de informações com componentes de FAQ respondendo às principais perguntas sobre LGPD.\n- **Terms**: Página que exibe todos os termos e condições do site.\n- **Privacy**: Página com informações sobre a política de privacidade do site.\n\n### Rotas Privadas\n\nExistem duas rotas privadas:\n\n- **Dashboard**: Exibe todos os carros cadastrados pelo usuário, o usuário também pode excluir os veículos.\n- **New**: Formulário para cadastro de novos veículos.\n\n### Rotas Auxiliares Dinâmicas\n\nAlém das rotas principais, existem as seguintes rotas auxiliares dinâmicas:\n\n- **garage/search/category/:query**: Página dedicada aos veículos da categoria selecionada (sedan, hatch, SUV, picapes).\n- **garage/search/:query**: Página dedicada aos resultados da pesquisa de veículos.\n- **garage/car/:id/:name**: Página dedicada aos detalhes de um veículo, obtidos do banco de dados através do ID e do nome.\n\nAdicionalmente, há uma página personalizada de **NotFound**, que redireciona o usuário para a página principal e oferece opções de navegação para diferentes categorias de carros.\n\n## Reutilização de Código\n\nPara promover a reutilização de código, a maior parte da manipulação do banco de dados é realizada dentro de um contexto, **carContext**, e acessada através de um hook, **useCar**.\n\n## Administração e Usuários\n\nO site foi projetado para ser administrado por uma única pessoa. No entanto, um componente para criação de usuários pode ser facilmente adicionado.\n\n### Firebase\n\nForam utilizadas as seguintes funcionalidades do Firebase:\n\n- **firebase/authentication**: Para criação e gerenciamento de usuários.\n- **firebase/firestore**: Para cadastro dos veículos no banco de dados.\n- **firebase/storage**: Para armazenamento das imagens dos veículos.\n\n## Informações Adicionais\n\n- As informações de contato e endereço são fictícias e foram geradas por IA.\n- As informações dos veículos são reais, mas as fotos foram retiradas de anúncios de sites reais e/ou do Google.\n- O número registrado para o usuário principal é fictício, portanto, ao clicar para falar com o vendedor na página **garage/car/:id/:name**, o usuário não será redirecionado. O site foi inspirado no famoso site de revenda [WebMotors](https://www.webmotors.com.br/), sendo que algumas partes podem ser semelhantes.\n\n## Licença\n\nEste projeto está licenciado sob a [Licença MIT](https://opensource.org/licenses/MIT).\n\n---\n\nEste projeto representa uma evolução significativa do carStore original, incorporando novas tecnologias e funcionalidades para melhorar a experiência do usuário e a administração do site.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpedromarques391%2Fcarstorev2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpedromarques391%2Fcarstorev2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpedromarques391%2Fcarstorev2/lists"}