{"id":31804865,"url":"https://github.com/gustedeveloper/smart-orders","last_synced_at":"2025-10-11T02:19:32.593Z","repository":{"id":294636252,"uuid":"987592613","full_name":"gustedeveloper/Smart-Orders","owner":"gustedeveloper","description":null,"archived":false,"fork":false,"pushed_at":"2025-07-08T11:22:29.000Z","size":1155,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-08T11:45:01.067Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://gustedeveloper.github.io/Smart-Orders/","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/gustedeveloper.png","metadata":{"files":{"readme":"README.es.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-21T09:51:43.000Z","updated_at":"2025-07-08T11:22:32.000Z","dependencies_parsed_at":"2025-05-21T11:25:47.008Z","dependency_job_id":"b218f7dd-36b0-43a4-befa-550725db7479","html_url":"https://github.com/gustedeveloper/Smart-Orders","commit_stats":null,"previous_names":["gustedeveloper/smart-orders"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/gustedeveloper/Smart-Orders","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gustedeveloper%2FSmart-Orders","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gustedeveloper%2FSmart-Orders/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gustedeveloper%2FSmart-Orders/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gustedeveloper%2FSmart-Orders/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gustedeveloper","download_url":"https://codeload.github.com/gustedeveloper/Smart-Orders/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gustedeveloper%2FSmart-Orders/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279005928,"owners_count":26083998,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-11T02:00:06.511Z","response_time":55,"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":[],"created_at":"2025-10-11T02:19:28.730Z","updated_at":"2025-10-11T02:19:32.588Z","avatar_url":"https://github.com/gustedeveloper.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Smart Orders - Sistema de Gestión de Pedidos\n\nUn sistema de gestión de pedidos basado en React, construido con TypeScript y Material-UI.\n\n## Visión General del Proyecto\n\nEsta aplicación proporciona una solución para la gestión de pedidos, presentando una interfaz de usuario limpia e intuitiva. El sistema permite a los usuarios visualizar, crear y gestionar pedidos.\n\n## Características\n\n- **Vista de Lista de Pedidos**\n\n  - Visualización de pedidos en una tabla con:\n    - Número de pedido\n    - Proveedor\n    - Fecha\n    - Total\n    - Estado (Aprobado/Pendiente)\n  - Acceso a detalles del pedido\n  - Edición de pedidos\n  - Eliminación de pedidos\n\n- **Vista de Detalle de Pedido**\n  - Visualización de items del pedido con:\n    - Estado (Validado/Pendiente)\n    - Descripción\n    - Cantidad\n  - Funcionalidades:\n    - Validar/Invalidar items\n    - Editar descripción de items\n    - Editar precio de items\n    - Eliminar items\n\n## Stack Tecnológico\n\n- **Framework Frontend**: React 19\n- **Lenguaje**: TypeScript\n- **Componentes UI**: Material-UI (MUI)\n- **Enrutamiento**: React Router v7\n- **Herramienta de Build**: Vite\n- **Gestión de Estado**: React Context API\n- **Estilos**: Emotion (CSS-in-JS)\n\n## Estructura del Proyecto\n\n```\nsrc/\n├── assets/         # Recursos estáticos\n├── core/           # Componentes y utilidades compartidas\n│   ├── components/ # Componentes UI reutilizables\n│   ├── context/    # Proveedores de contexto React\n│   ├── utils/      # Funciones de utilidad\n│   ├── data.tsx    # Datos de prueba\n│   └── model.ts    # Interfaces TypeScript\n├── pods/           # Componentes específicos de funcionalidades\n│   ├── orders-list/\n│   ├── order-detail/\n│   └── table-header/\n├── scenes/         # Componentes de página\n│   ├── orders-list.tsx\n│   └── order-detail.tsx\n└── routes/         # Configuración de rutas\n```\n\n## Componentes Principales\n\n### Componentes Core\n\n- **Table**: Componente de tabla para visualizar pedidos e items\n- **OrderContext**: Gestión de estado global para pedidos\n- **Actualizaciones Debounceadas**: Actualización en tiempo real del importe total al editar precios de items\n\n### Componentes de Funcionalidad\n\n- **OrdersList**: Vista principal que muestra todos los pedidos\n- **OrderDetail**: Vista detallada de un pedido con gestión de items\n- **TableHeader**: Componente de encabezado de tabla para visualización consistente de columnas\n\n## Mejoras Futuras\n\n- [ ] Añadir autenticación de usuarios\n- [ ] Implementar modo de solo lectura para usuarios básicos\n- [ ] Implementar modo de edición para usuarios avanzados\n- [ ] Implementar historial de pedidos\n- [ ] Añadir sistema de notificaciones para cambios de estado\n\n## Contribuciones\n\nEste proyecto forma parte de una entrega del Máster Frontend de Lemoncode.\n\n### Características Adicionales Implementadas\n\nMás allá de los requisitos básicos del ejercicio, esta implementación ha sido extendida a un sistema CRUD (Create, Read, Update, Delete) completo para pedidos, incluyendo:\n\n- Gestión completa de pedidos e items (creación, edición, eliminación)\n- Mejor gestión del estado usando React Context\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgustedeveloper%2Fsmart-orders","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgustedeveloper%2Fsmart-orders","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgustedeveloper%2Fsmart-orders/lists"}