Skip to content

Instantly share code, notes, and snippets.

@f1729
Last active July 17, 2019 21:05
Show Gist options
  • Save f1729/0f567f017a1bbc824558305775f504e9 to your computer and use it in GitHub Desktop.
Save f1729/0f567f017a1bbc824558305775f504e9 to your computer and use it in GitHub Desktop.

Proyecto X (Backend)

Proyecto X es una tienda tipo mercado libre donde los usuarios pueden subir sus productos y venderlos.

Fundamentos de un API (4h)

  • Uso de los verbos GET, POST, PUT, DELETE para interactuar con el API sobre el protocolo HTTP.
  • Status code: 200, 201, 404, 501.
  • Explorar a fondo el diseño del modelo request y response.

https://medium.com/@perrysetgo/what-exactly-is-an-api-69f36968a41f

Validación de data (1h)

  • Validacion de datos con Joi

https://www.quora.com/Why-is-data-validation-important

Implementación de un logger (1h)

  • Uso de winston para manejar los log de una aplicacion.

https://www.syslog-ng.com/community/b/blog/posts/why-logging-is-important

Autenticación básica con HTTP (2h)

  • Autenticacion basica (usuario/contraseña) usando passport.

Autenticación con JWT (2h)

  • Autenticacion usando JWT.

https://medium.com/vandium-software/5-easy-steps-to-understanding-json-web-tokens-jwt-1164c0adfcec https://www.youtube.com/watch?v=o9hT7v0OLJc

Ambientes de ejecución (1h)

  • Uso de ambientes para produccion y desarrollo.

https://stackoverflow.com/questions/5285731/best-practice-for-test-and-production-environments

Manejo de archivos estaticos con AWS (2h)

  • Uso de S3.

https://www.quora.com/What-is-Amazon-Web-Services-good-for

Integración con Base de datos (3h)

  • Integracion con MongoDB.

https://medium.com/@yanyzx/mongodb-qu%C3%A9-es-c%C3%B3mo-funciona-y-cu%C3%A1ndo-podemos-usarlo-8eafe0d441c2

Manejo de errores en un sistema de producción (2h)

  • Desarrollo de Middleware para manejo de errores.

https://medium.com/@jamischarles/what-is-middleware-a-simple-explanation-bb22d6b41d01

Testing (3h)

  • Pruebas unitarias.
  • Pruebas e2e.

https://medium.com/@netxm/how-to-get-started-with-software-testing-9fa1ce4f2a64

Deploy (3h)

  • Uso de ngrok.
  • Deploy a Heroku.

Duracion: 24h

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment