{"id":28962396,"url":"https://github.com/joschonarth/coffee-delivery","last_synced_at":"2026-04-06T02:34:06.386Z","repository":{"id":299514489,"uuid":"977283782","full_name":"joschonarth/coffee-delivery","owner":"joschonarth","description":"☕ A coffee delivery web app to browse, select, and order coffees, built with React, TypeScript, and Vite.","archived":false,"fork":false,"pushed_at":"2025-06-16T23:06:39.000Z","size":962,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-24T03:05:22.432Z","etag":null,"topics":["eslint","immer","phosphor-icons","phosphor-react","react","react-hook-form","react-router","react-router-dom","reactjs","styled-components","typescript","vite","zod"],"latest_commit_sha":null,"homepage":"https://coffee-delivery-mu-rosy.vercel.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/joschonarth.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"zenodo":null}},"created_at":"2025-05-03T20:55:27.000Z","updated_at":"2025-06-16T23:08:35.000Z","dependencies_parsed_at":"2025-06-17T00:29:44.538Z","dependency_job_id":null,"html_url":"https://github.com/joschonarth/coffee-delivery","commit_stats":null,"previous_names":["joschonarth/coffee-delivery"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/joschonarth/coffee-delivery","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joschonarth%2Fcoffee-delivery","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joschonarth%2Fcoffee-delivery/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joschonarth%2Fcoffee-delivery/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joschonarth%2Fcoffee-delivery/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/joschonarth","download_url":"https://codeload.github.com/joschonarth/coffee-delivery/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joschonarth%2Fcoffee-delivery/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31457722,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-05T21:22:52.476Z","status":"online","status_checked_at":"2026-04-06T02:00:07.287Z","response_time":112,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["eslint","immer","phosphor-icons","phosphor-react","react","react-hook-form","react-router","react-router-dom","reactjs","styled-components","typescript","vite","zod"],"created_at":"2025-06-24T03:05:20.600Z","updated_at":"2026-04-06T02:34:06.366Z","avatar_url":"https://github.com/joschonarth.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003e\u003cimg src=\"./public/icon.svg\" width=\"22\" /\u003e Coffee Delivery\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\u003ci\u003eAplicação de delivery de cafés desenvolvida com React, TypeScript e Vite.\u003c/i\u003e\n  \u003cbr/\u003e\u003cbr/\u003e\n  \u003cimg src=\"https://img.shields.io/github/last-commit/joschonarth/coffee-delivery?style=for-the-badge\u0026color=8047F8\u0026labelColor=1C1E26\" alt=\"last-commit\"\u003e\n  \u003cimg src=\"https://img.shields.io/github/languages/top/joschonarth/coffee-delivery?style=for-the-badge\u0026color=8047F8\u0026labelColor=1C1E26\" alt=\"top-language\"\u003e\n  \u003cimg src=\"https://img.shields.io/github/languages/count/joschonarth/coffee-delivery?style=for-the-badge\u0026color=8047F8\u0026labelColor=1C1E26\" alt=\"languages-count\"\u003e\n\u003c/p\u003e\n\n![Coffee Delivery - Home](https://github.com/user-attachments/assets/f6d05725-2601-4a8a-a646-59842802ee0f)\n\n## 📖 Visão Geral\n\n**Coffee Delivery** é uma aplicação web para compra e entrega de cafés artesanais. O usuário pode selecionar produtos, configurar o carrinho, preencher o endereço de entrega e finalizar a compra de forma prática e rápida.\n\n## 🛠️ Tecnologias Utilizadas\n\n- ⚛️ **React** – Biblioteca para construção da interface.\n- 🟦 **TypeScript** – Tipagem estática para maior segurança.\n- ⚡ **Vite** – Ferramenta de build e dev server ultra rápida.\n- 📋 **React Hook Form** – Manipulação eficiente de formulários.\n- 🌐 **React Router DOM** – Controle de rotas da aplicação.\n- 💅 **Styled-Components** – Estilização com CSS-in-JS.\n- 🎨 **Phosphor Icons** – Conjunto de ícones com design consistente.\n- 💎 **Zod** – Validação de dados com schema.\n- 🧊 **Immer** – Manipulação de estados imutáveis de forma simples.\n- 🧹 **ESLint** – Linter para padronização e qualidade de código.\n\n## ⚙️ Funcionalidades\n\n- ☕ **Listagem de cafés**: Exibe os produtos disponíveis para compra com imagem, descrição e preço.\n- ➕ **Carrinho dinâmico**: Adição e remoção de quantidades específicas por produto.\n- 🧾 **Formulário de entrega**: Coleta os dados do endereço do usuário com validação.\n- 🧺 **Resumo do pedido**: Valor total calculado com base nas quantidades e preços dos itens.\n- 📦 **Persistência local**: Os dados do carrinho permanecem salvos no `localStorage`.\n- 📍 **Quantidade total no Header**: Visualização imediata da quantidade de itens adicionados.\n\n## 🧠 Conceitos Aplicados\n\n- Estado e imutabilidade com **Immer**\n- Gerenciamento global de dados com **Context API**\n- Armazenamento local com **LocalStorage**\n- Validação de formulário com **Zod**\n- Componentização e reuso de componentes\n- Navegação com rotas dinâmicas\n\n## 🚀 Como Executar o Projeto\n\n### 📋 Pré-requisitos\n\n- 🟩 [Node.js 20+](https://nodejs.org/)\n- 📦 [npm 10+](https://www.npmjs.com/)\n\n### 🔧 Instalação\n\n1. Clone o repositório:\n\n    ```bash\n    git clone https://github.com/joschonarth/coffee-delivery.git\n    ```\n\n2. Acesse a pasta do projeto:\n\n    ```bash\n    cd coffee-delivery\n    ```\n\n3. Instale as dependências:\n\n    ```bash\n    npm install\n    ```\n\n### ▶️ Execução\n\nInicie o projeto com:\n\n```bash\nnpm run dev\n```\n\nAcesse o projeto em: [http://localhost:5173](http://localhost:5173)\n\n## 🌐 Acesse a Aplicação Online\n\nA aplicação já está disponível online! Você pode testá-la acessando o link abaixo:\n\n🔗 [https://coffee-delivery-mu-rosy.vercel.app/](https://coffee-delivery-mu-rosy.vercel.app/)\n\n## 🤝 Contribuições\n\nContribuições são bem-vindas! Sinta-se à vontade para abrir issues ou pull requests com melhorias ou correções. 💡\n\n## ⭐ Apoie este Projeto\n\nSe curtiu o projeto, deixe uma ⭐ aqui no GitHub!\n\n## 📞 Contato\n\n[![LinkedIn](https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge\u0026logo=linkedin\u0026logoColor=white)](https://www.linkedin.com/in/joschonarth/)\n[![Gmail](https://img.shields.io/badge/Gmail-D14836?style=for-the-badge\u0026logo=gmail\u0026logoColor=white)](mailto:joschonarth@gmail.com)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoschonarth%2Fcoffee-delivery","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjoschonarth%2Fcoffee-delivery","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoschonarth%2Fcoffee-delivery/lists"}