{"id":21971761,"url":"https://github.com/cristopher1/app_colmena_abeja","last_synced_at":"2025-03-22T23:11:55.107Z","repository":{"id":181533905,"uuid":"666383984","full_name":"cristopher1/app_colmena_abeja","owner":"cristopher1","description":"Aplicación desarrollado durante el proceso de trabajo de titulo","archived":false,"fork":false,"pushed_at":"2023-11-02T17:19:25.000Z","size":96,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-01-28T02:41:56.030Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"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/cristopher1.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":"2023-07-14T11:31:41.000Z","updated_at":"2023-07-14T11:31:42.000Z","dependencies_parsed_at":"2023-07-16T04:53:03.636Z","dependency_job_id":"9cdb7af5-5fb8-49e6-a502-41621a98a989","html_url":"https://github.com/cristopher1/app_colmena_abeja","commit_stats":null,"previous_names":["cristopher1/app_colmena_abeja"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cristopher1%2Fapp_colmena_abeja","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cristopher1%2Fapp_colmena_abeja/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cristopher1%2Fapp_colmena_abeja/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cristopher1%2Fapp_colmena_abeja/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cristopher1","download_url":"https://codeload.github.com/cristopher1/app_colmena_abeja/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245031519,"owners_count":20549925,"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","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":"2024-11-29T14:55:37.738Z","updated_at":"2025-03-22T23:11:55.082Z","avatar_url":"https://github.com/cristopher1.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# [APP COLMENA ABEJA](#indice)\n\nEl presente proyecto fue desarrollado durante el ramo **trabajo de titulo**, para optar al titulo de **ingeniero civil informático** en la Universidad Técnica\nFederico Santa María (UTFSM). Este sistema busca detectar la presencia o ausencia de abeja reina dentro de una colmena, mediante la extracción de características\nde los zumbidos emitidos por ella, los cuales serán procesados por una red neuronal convolucional (CNN), para finalmente indicar si existe la presencia de abeja\nreina dentro de dicha colmena.\n\n### \u003ca id=\"indice\"\u003e\u003c/a\u003eÍndice\n\n* \u003ca id=\"introduccion\"\u003e\u003c/a\u003e[Introducción](#Introducción)\n* \u003ca id=\"prerrequisitos\"\u003e\u003c/a\u003e [Prerrequisitos](#Prerrequisitos)\n* \u003ca id=\"descarga\"\u003e\u003c/a\u003e [Descargar el repositorio](#Descargar-el-repositorio)\n* \u003ca id=\"entorno\"\u003e\u003c/a\u003e[Variables de entorno](#Variables-de-entorno)\n  * \u003ca id=\"entorno-frontend\"\u003e\u003c/a\u003e[Para el FRONTEND](#Para-el-FRONTEND)\n  * \u003ca id=\"entorno-api\"\u003e\u003c/a\u003e[Para la API](#Para-la-API)\n* \u003ca id=\"run\"\u003e\u003c/a\u003e[Ejecutar la aplicación](#Ejecutar-la-aplicación)\n\n## \u003ca id=\"Introducción\"\u003e\u003c/a\u003e [Introducción](#introduccion)\n\nEl presente repositorio tiene como finalidad almacenar las herramientas que permiten automzatizar el despliegue del sistema. El sistema se divide en un frontend \ny una API (almacenadas en repositorios independientes) y unidas en un tercer repositorio (este repositorio) mediante git-submodule. Este repositorio además de\njuntar los dos repositorios independientes, también contiene un archivo docker-compose.yml y .env.example (utilizado para generar el archivo .env) que permitirán\nejecutar el sistema de forma automática.\n\n## \u003ca id=\"Prerrequisitos\"\u003e\u003c/a\u003e [Prerrequisitos](#prerrequisitos)\n\nEl sistema ha sido probado en SO Windows 11.\n\n* Docker Desktop con Servidor WSL 2. Ver documentación sobre [Docker Desktop para Windows](https://docs.docker.com/desktop/install/windows-install/)\n\n## \u003ca id=\"Descargar-el-repositorio\"\u003e\u003c/a\u003e [Descargar el repositorio](#descarga)\n\nPara descargar el repositorio use:\n\n```console\ngit clone --recurse-submodules git@github.com:cristopher1/app_colmena_abeja.git\n```\n\n## \u003ca id=\"Variables-de-entorno\"\u003e\u003c/a\u003e [Variables de entorno](#entorno)\n\nLa información de las variables de entorno se encuentra dentro del archivo .env.example, este archivo tiene 8 variables, que son usadas dentro del archivo\ndocker-compose.yml para establecer la forma en que se va a desplegar el sistema. A continuación se muestra su estructura.\n\nhttps://github.com/cristopher1/app_colmena_abeja/blob/9bb1a74002ca747bb5d142e7fb5a44329cb35d2c/docker-compose.yml#L1-L21\n\nA continuación se muestran las variables de entorno usadas en el archivo docker-compose.yml presentado anteriormente.\n\n### \u003ca id=\"Para-el-FRONTEND\"\u003e\u003c/a\u003e [Para el FRONTEND](#entorno-frontend)\n\nhttps://github.com/cristopher1/app_colmena_abeja/blob/23bea7412bc6b070c52e0b026cf7102eb3c47060/.env.example#L7-L22\n\n* `FRONTEND_PROJECT_DIRECTORY`: Nombre de la carpeta que contiene el FRONTEND y en su raíz esta el\narchivo Dockerfile. Debería llamarse **frontend_app_colmena_abeja**\n\n* `FRONTEND_STAGE`: Modo en el que se desplegará el FRONTEND. development o production\n\n* `FRONTEND_HOST_PORT`: Puerto en el HOST, donde el FRONTEND escucha peticiones\n\n* `FRONTEND_CONTAINER_PORT`: Puerto en el contenedor, donde el FRONTEND escucha peticiones\n\n### \u003ca id=\"Para-la-API\"\u003e\u003c/a\u003e [Para la API](#entorno-api)\n\nhttps://github.com/cristopher1/app_colmena_abeja/blob/23bea7412bc6b070c52e0b026cf7102eb3c47060/.env.example#L24-L39\n\n* `API_PROJECT_DIRECTORY`: Nombre de la carpeta que contiene la API y en su raíz esta el\narchivo Dockerfile. Debería llamarse **api_colmena_abeja**\n\n* `API_STAGE`: Modo en el que se desplegará la API. development o production\n\n* `API_HOST_PORT`: Puerto en el HOST, donde la API escucha peticiones\n\n* `API_CONTAINER_PORT`: Puerto en el contenedor, donde la API escucha peticiones\n\n## \u003ca id=\"Ejecutar-la-aplicación\"\u003e\u003c/a\u003e [Ejecutar la aplicación](#run)\n\nPara ejecutar la aplicación siga los siguientes pasos.\n\n* **Nota: Los archivos Dockerfile presentes en el repositorio api_colmena_abeja y frontend_app_colmena_abeja utilizan**\n**Multi-stage, por lo que no debe olvidar habilitar el docker BuildKit al momento de ejecutar la aplicación.**\n\n* **Nota: A partir de la versión 23.0 de Docker Desktop y Docker Engine se usa de forma predeterminada el BuildKit**\n**por lo que no es necesario habilitarlo de forma manual.**\n\n1. Ingrese a la carpeta app_colmena_abeja (desde la terminal o interfaz gráfica)\n2. Cree un archivo llamado .env (en la misma carpeta donde esta el archivo .env.example)  \n3. Copie el contenido del archivo .env.example a .env\n4. Si gusta, modifique los valores del archivo .env\n5. Repita el paso 2, 3 y 4 en api_colmena_abeja y frontend_app_colmena_abeja\n6. Abra una terminal e ingrese a la carpeta app_colmena_abeja\n7. Ejecute el comando `docker-compose up --build`\n\n**Nota: En modo producción no exponga directamente el contenedor api_colmena_abeja, en su lugar use un servidor de producción como nginx para redirigir**\n**las peticiones web al contenedor api_colmena_abeja.**\n\nUna vez completados los pasos, el sistema debería estar ejecutandose en `http://localhost:${FROTEND_HOST_PORT}`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcristopher1%2Fapp_colmena_abeja","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcristopher1%2Fapp_colmena_abeja","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcristopher1%2Fapp_colmena_abeja/lists"}