Skip to content

igorparrabastias/portafolio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Portafolio node.js, php ,laravel, vue.js, vuetify de Igor Parra

Ninguno de los códigos incluidos en este repo es ejecutable, son sólo retazos de aquí y de allá para mostrar estilo y estructuras.

Vue.js y vuetify

  • El directorio pwa contiene una muestra parcial de una aplicación de tipo progressive web application. Usa vuex para manejo de estados y axios para llamadas a api.

Microservicio en php lumen/laravel

  • El directorio ms contiene una muestra parcial de una aplicación de tipo microservicio api hecha con lumen, que es un subconjunto de laravel.

Backends en node.js

  • El directorio api contiene una muestra parcial de una aplicación de tipo api hecha con node.js.

  • En general este modelo de backend es el que uso siempre para apis o workers en node.js. Lo he ido afinando a traves del tiempo. Es muy flexible y eficiente.

    • Usa un modulo propio module-koa-common que tengo en un repo privado. En este caso lo incluyo como dependencia local.
  • Se usa koa.js para usar async/await out of the box.

  • Se usa estructura CLEAN (interpretación propia suceptible de mejorar):

    • application: Casos de uso:
      • PoisAll: Para vista inicial sin requerimeientos de entrada.
      • PoisSector: Para vistas sectorizadas dado un centro geográfico. Se requiren distancia, coordenadas del cetro y eventualmente categorias.
    • infrastructure: Rutas de la api y librerias
      • container: Configura clases mediante injección de dependecias usando Awilix
      • httpServer: Implementación de server HTTP usando middlewares koa.js
    • init.js: Inicialización de server.
    • interfaces: controlador api y repositorio de db
    • __tests__: bateria de tests con jest y helper para test de integración via axios para simular llamadas api.

Cloud

  • He estado usando Google Cloud Platform y Amazon Web Services por muchos años:
    • GCP: Compute engine, Cloud SQL, Cloud DNS, Cloud run, Cloud functions, Cloud storage, etc.
    • AWS: EC2, Code Pipeline, RDS, VPC, S3, SNS, etc.
    • Firebase: Authentication, Cloud messaging ,etc.

Pulumi

  • Desde hace unos meses estoy aprendiendo a usar pulumi.
  • Este framework permite usar lenguajes como javascript, typescript y otros para expresar la infraestructura de una aplicación utilizando un método llamado "infraestructura como código" (IaC).
  • Se declara la infraestructura deseada, y pulumi automatiza todo el proceso de despliegue y actualización de la infraestructura.
  • Disponible para:
    • AWs
    • GCP
    • Microsoft Azure
  • Muestras de iac con pulumi:

CI/CD

  • Muestras de archivos de especificación de compilación:
    • buildspec.yml: Para AWS Codebuild (Fully managed continuous integration service that compiles source code, runs tests, and produces software packages)
    • cloudbuild.yaml: Para GCP Cloud Build (Build, test, and deploy on our serverless CI/CD platform)

UML

Uso de diagramas UML en la etapa de análisis y diseño:

  • Diagrama de actividad para definir un microservicio para Server Sent Events (sse) corriendo sobre MIGs (GCP managed instances groups) con autoescalamiento y un HTTPS Load Balancer.

    • Screenshot_2021-07-30_08-22-15.png
  • Diagrama de actividad para definir un proceso periódico para envío de notificaciones push corriendo sobre MIGs (GCP managed instances groups) con autoescalamiento.

    • Screenshot_2021-07-30_08-22-38.png
  • Diagrama de clase para definir relaciones entre objetos para realizar un publicación.

    • Screenshot_2021-07-30_08-24-02.png
  • Diagrama ER para definir relaciones entre entidades de un sistema de publicación.

    • Screenshot_2021-07-30_08-25-29.png

Screenshots de apps vue.js

Mapas y categorias

prueba1.png prueba2.png

Tablas y controles

Screenshot_2021-07-12_10-12-18.png Screenshot_2021-07-12_10-11-44.png

Red social con mapas y fotos

Screenshot_2021-07-12_10-27-08.png Screenshot_2021-07-12_09-47-45.png Screenshot_2021-07-12_09-49-23.png

Referencias en comunidades de programadores

Otros repos de interés

Contacto

About

Portafolio

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published