{"id":49146423,"url":"https://github.com/rodielm/rmj_ecommerce_miniapp","last_synced_at":"2026-04-22T04:04:51.743Z","repository":{"id":273875629,"uuid":"920872168","full_name":"Rodielm/rmj_ecommerce_miniapp","owner":"Rodielm","description":null,"archived":false,"fork":false,"pushed_at":"2025-01-23T13:01:41.000Z","size":27,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-23T14:18:54.356Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","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/Rodielm.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}},"created_at":"2025-01-22T23:09:43.000Z","updated_at":"2025-01-23T13:01:46.000Z","dependencies_parsed_at":"2025-01-23T14:18:55.645Z","dependency_job_id":"a203546e-d099-4827-80fd-cf564a841666","html_url":"https://github.com/Rodielm/rmj_ecommerce_miniapp","commit_stats":null,"previous_names":["rodielm/rmj_ecommerce_miniapp"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Rodielm/rmj_ecommerce_miniapp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rodielm%2Frmj_ecommerce_miniapp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rodielm%2Frmj_ecommerce_miniapp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rodielm%2Frmj_ecommerce_miniapp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rodielm%2Frmj_ecommerce_miniapp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Rodielm","download_url":"https://codeload.github.com/Rodielm/rmj_ecommerce_miniapp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rodielm%2Frmj_ecommerce_miniapp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32120408,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-22T00:31:26.853Z","status":"online","status_checked_at":"2026-04-22T02:00:05.693Z","response_time":58,"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":"2026-04-22T04:04:28.193Z","updated_at":"2026-04-22T04:04:51.738Z","avatar_url":"https://github.com/Rodielm.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"## RMJ - Basic Ecommerce Hexagonal  \n\nEste proyecto sigue una arquitectura hexagonal para un sistema básico de ecommerce. A continuación se describe la estructura del proyecto:\n\n## **Application** (Capa de Aplicación)\n\nContiene la lógica de la aplicación y la implementación de los casos de uso.\n\nport/in/: Puertos de entrada (casos de uso)\nport/out/: Puertos de salida (interfaces para persistencia)\nservice/: Implementaciones de los casos de uso\n\n## **Domain** (Capa de Dominio)\n\nAquí reside el núcleo del negocio, con los modelos y reglas de negocio.\n\n- **Modelos de dominio**: Representaciones de las entidades del negocio.\n- **Excepciones de dominio**: Excepciones específicas del dominio.\n- **Lógica de negocio pura**: Reglas y operaciones centrales del negocio.\n\n## **Infra** (Capa de Infraestructura)\n\nImplementaciones concretas de las interfaces definidas en la capa de aplicación.\n\n### **Persistence** (Persistencia)\n\n- **entity/**: Entidades JPA\n- **mapper/**: Conversores entidad-dominio\n- **repo/**: Repositorios Spring Data JPA\n\n\n### **Web** (API REST)\n\n- **dto**: Objetos de transferencia de datos\n- **mapper**: Conversores dominio-dto\n\n## **Resources**\n\n- Configuración de la aplicación \n- Scripts SQL para inicialización de la base de datos.\n\n\n## **Test**\n\nPruebas para garantizar la calidad del código.\n\n- **Tests unitarios**: Pruebas de unidades individuales de código.\n- **Tests de integración**: Pruebas que verifican la integración entre componentes.\n\n\u003cp style=\"margin-bottom: 2em;\"\u003e\u003c/p\u003e \u003c!-- Espacio adicional --\u003e\n\n# Ejecución de una Aplicación Spring Boot y sus Tests\n\nA continuación se describen los pasos para ejecutar una aplicación Spring Boot y sus tests.\n\n\n## **Ejecutar la Aplicación Spring Boot**\n\nPara ejecutar la aplicación Spring Boot, sigue estos pasos:\n\n1. **Asegúrate de tener Maven instalado**:\n   - Verifica que Maven esté instalado ejecutando en la terminal:\n     ```bash\n     mvn -v\n     ```\n   - Si no lo tienes, instálalo siguiendo la [guía oficial de Maven](https://maven.apache.org/install.html).\n\n2. **Navega al directorio del proyecto**:\n   - Abre una terminal y dirígete a la carpeta raíz del proyecto (donde se encuentra el archivo `pom.xml`).\n\n3. **Compila y ejecuta la aplicación**:\n   - Ejecuta el siguiente comando para compilar y arrancar la aplicación:\n     ```bash\n     mvn spring-boot:run\n     ```\n   - Esto iniciará la aplicación y podrás acceder a ella en `http://localhost:8080` (o en el puerto configurado en `application.properties`).\n\n4. **Otra opción: Ejecutar desde un IDE**:\n   - Si estás usando un IDE como IntelliJ IDEA o Eclipse, puedes ejecutar la aplicación directamente desde la clase principal (anotada con `@SpringBootApplication`).\n\n---\n\n## **Ejecutar los Tests**\n\nPara ejecutar los tests de la aplicación, sigue estos pasos:\n\n1. **Ejecutar todos los tests**:\n   - En la terminal, ejecuta el siguiente comando:\n     ```bash\n     mvn test\n     ```\n   - Esto ejecutará todos los tests unitarios y de integración definidos en el proyecto.\n\n2. **Ejecutar tests específicos**:\n   - Si deseas ejecutar un test específico, puedes usar el siguiente comando:\n     ```bash\n     mvn -Dtest=NombreDeLaClaseDeTest test\n     ```\n   - Por ejemplo:\n     ```bash\n     mvn -Dtest=UserServiceTest test\n     ```\n\n3. **Ejecutar tests desde un IDE**:\n   - En IntelliJ IDEA o Eclipse, puedes ejecutar los tests directamente desde la vista de tests del IDE. Simplemente haz clic derecho sobre la clase de test y selecciona \"Run\".\n\n---\n\n## **Comandos útiles adicionales**\n\n- **Limpiar y compilar el proyecto**:\n  ```bash\n  mvn clean install","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frodielm%2Frmj_ecommerce_miniapp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frodielm%2Frmj_ecommerce_miniapp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frodielm%2Frmj_ecommerce_miniapp/lists"}