Skip to content

Guía para colaborar en repositorio

IngenieroGeomatico edited this page Feb 10, 2025 · 5 revisions

Guía para Colaborar en el Repositorio GitHub de API-IDEE

1. Crear un "Issue"

El primer paso para contribuir a un proyecto es crear un issue en el repositorio. Esto sirve para definir el trabajo que se va a realizar y brindar contexto al equipo.

Nomenclatura de los Issues

Es importante usar una nomenclatura adecuada al crear un issue. El nombre debe reflejar el control, plugin, o componente que se va a trabajar, seguido de una breve descripción del cometido. Por ejemplo:

  • [Control][scale] Corregir bug para que se muestre correctamente la escala.
  • [Plugin][information] Corregir bug que hace que no se vea correctamente el GFI cuando tiene activado el parámetro inteligente el Popup.
  • [Core][Vector] Mejorar la fuente de datos Vector para que permita transformaciones al vuelo.

Cuerpo del Issue

Dentro del cuerpo del issue, se debe incluir:

  • Descripción detallada del cometido, incluyendo cualquier información relevante o contexto para la tarea.
  • Cualquier otra información que facilite el entendimiento del trabajo que se debe hacer.

Ejemplo de cuerpo de un Issue:

Descripción:

  • En este issue se abordará la mejora de la fuente de datos vector pudiendo permitir transformaciones al vuelo en un visualizador.
  • Para ello habrá que asignar un EPSG a la geometría en la hora de la construcción de un objeto geográfico Información adicional:
  • Habrá que tener en cuenta los casos de usos actuales para evitar posibles problemas con visualizadores ya creados.

Usar Etiquetas (Labels)

Es fundamental clasificar los issues utilizando etiquetas (labels) para poder organizar y filtrar las tareas de manera eficiente.

Si los labels existentes no son suficientes, podemos crear nuevos labels que se ajusten mejor a las necesidades del proyecto.

Asignar el Issue a un Projecto

Si el proyecto tiene diferentes iniciativas o expedientes, puedes asignar el issue a un Project específico. Esto ayudará a diferenciar las tareas según el expediente de origen.

2. Crear un fork del repositorio y una rama para el Issue

Una vez creado el issue, el siguiente paso es crear un fork del repositorio, desde el cual crearemos una rama a partir de develop. Esta rama debe tener un nombre que sea representativo del trabajo que se va a realizar.

Ejemplo de Nombre de Rama:

feat_1_eventos-Locator

El nombre debe seguir el patrón:

  • feat: para nuevas funcionalidades.
  • bugfix: para corregir errores.
  • hotfix: para correcciones urgentes.
  • chore: para tareas generales de mantenimiento.

Asignación de la rama con el Issue

Una vez creada la rama, se debe asignar al Issue la rama del fork en la que se está trabajando en al sección desarrollo (development)

3. Crear un Pull Request

Cuando la rama con los cambios está lista para ser revisada, crea un Pull Request (PR) desde la rama "feat" hacia la rama develop.

Proceso:

  1. Ve a la pestaña "Pull requests" en el repositorio.
  2. Haz clic en "New Pull Request".
  3. Selecciona la rama develop como destino y la rama con el desarrollo realizado como origen.
  4. Añade una descripción detallada del PR, haciendo referencia al issue correspondiente. Para ello, en la issue, se hará referencia al P.R.
  5. Revisa los cambios y asegúrate de que todo esté correcto.

4. Revisar y Fusionar el Pull Request

Una vez que se ha creado el Pull Request, se debe realizar una revisión de código por parte de otro miembro del equipo. Si todo está correcto, el PR puede ser fusionado con la rama develop.

Resumen del Proceso de Colaboración

  1. Crear un Issue con una descripción clara y con la información necesaria.
  2. Añadir Etiquetas para clasificar el trabajo.
  3. Asignar el Issue a un Project si corresponde.
  4. Crear un fork y una Rama desde develop vinculada al issue.
  5. Crear un Pull Request hacia develop.
  6. Revisión y Fusión del Pull Request.

Este flujo de trabajo garantiza que todos los colaboradores puedan seguir un proceso organizado y eficiente, facilitando la colaboración en el repositorio.

1.INICIO
   1.1. Componentes de la API-IDEE
   1.2. Documentación y Puntos de acceso
   1.3. Primeros pasos
   1.4. Diagrama API IDEE

2. MAPA
2.1. Capas

 ■ 2.1.1. Fuentes
   • 2.1.1.1. Capas vectoriales
     + Vector
     + WFS
     + GeoJSON
     + KML
     + MVT
     + OGCAPIFeatures
     + MBTilesVector
     + GenericVector
     + MapLibre
   • 2.1.1.2. Capas ráster
     + WMS
     + WMC
     + WMTS
     + TMS
     + XYZ
     + OSM
     + MBTiles
     + GenericRaster
     + GeoTIFF
     + GeoPackageTile
   • 2.1.1.3. Capas 3D
     + Terreno
     + 3DTiles
       + info 3DTiles
   • 2.1.1.4. Capas rápidas
   • 2.1.1.5. Grupo de capas
   • 2.1.1.6. Secciones
   • 2.1.1.7. GeoPackage
   • 2.1.1.8. Capas externas

 ■ 2.1.2. Simbolización
   • 2.1.2.1. Genérica
     + Puntos
     + Líneas
     + Polígonos
   • 2.1.2.2. Básica
     + Puntos
     + Líneas
     + Polígonos
   • 2.1.2.3. Avanzada
     + Coropletas
     + Proporcional
     + Categorías
     + Estadísticos
     + Mapas de Calor
     + Cluster
     + Línea de flujo
     + Composición

 ■ 2.1.3. Filtros

2.3.-Plugins

  > Creación de plugin en cliente

  » Tutorial de creación de un plugin

2.4. Paneles

  » Creación de panel desde cero sin controles

  » Tutorial Panel de un único control

  » Tutorial Panel de un único control con más de un botón

  » Tutorial Panel con más de un control

2.5. Eventos

  » Gestión de eventos
  » Gestión de eventos en controles personalizados

    2.6. Internacionalización

    2.7. Configuración

    2.8. Acceso librerías base

3. UTILIDADES

4. PROXY

5. API REST
 5.1. Parametrización API-REST
 5.2. Base de Datos API-REST
 5.3. API REST Actions
 5.4. Servicio de correos electrónicos
 5.5. Capas rápidas
 5.6. Parametrización API-REST plugins externos

6. PARAMETRIZACIÓN VISUALIZADORES

7. SOLUCIÓN DE PROBLEMAS

8. PROCESO DE VERSIONADO

9. GUÍA DE DESARROLLO
  > Guía para colaborar en el repositorio
  > Guía para el desarrollo de API-IDEE
  > Guía de test de API-IDEE
  » Tutorial desarrollo del núcleo de API-IDEE - (Cliente)
  > Guía de desarrollo de componentes
  » Tutorial desarrollo del núcleo de API-IDEE - (Servidor)
  > Guía de desarrollo de plugins
  » Tutorial desarrollo de plugins ya creados
  » Tutorial desarrollo de nuevos plugins
  > Guía de desarrollo de visualizadores con React

  > Compilación proyecto API-IDEE

Clone this wiki locally