Este proyecto sirve como una introducción al desarrollo moderno de aplicaciones web con JavaScript, donde el foco principal esta puesto en construir SPAs (single page applications), o aplicaciones de una sola página, con ReactJS que utilicen APIs REST construidas con Node.js. En éste proyecto tambien se agregará una sección sobre GraphQL, una alternativa moderna a APIs REST.
Se cubrirá algo de testing, configuración y manejo de entorno, y el uso de MongoDB para persistir los datos de la aplicación, como así también CI/CD y finalmente una introducción a TypeScript y React-Native.
Vale aclarar que este curso estará en constante actualización y que cualquier aporte es bienvenido.
Parte 0: Fundametos de las aplicaciones Webs
- Fundamentos de las aplicaciones Web
- HTTP GET
- Aplicaciones web tradicionales
- La lógica de la aplicación corriendo en el navegador
- Control de eventos y funciones Callback
- DOM o Modelo de Objetos del Documento
- Manipulando el Document-Object desde la consola
- CSS
- Cargando una página que contiene JavaScript
- Formularios y HTTP POST
- AJAX
- SPA o aplicación de una página
- Librerías de JavaScript
- Desarrollo web full stack
- Fatiga JavaScript
- Tutoriales
Parte 1: Introducción a React
- JavaScript
- Introducción a React
- Estado del componente, manejo de eventos
- Un estado mas complejo, depurando aplicaciones React
Parte 2: Comunicación con el servidor
- Renderizando una colección, módulos
- Formularios
- Obteniendo datos del servidor
- Alterando datos en el servidor
- Agregando estilos a las aplicaciones React
Parte 3: Programando un servidor con NodeJS y Express
- Node.js y Express
- Desplegando una aplicación en internet
- Guardando datos en MongoDB
- Validación y ESLint
Parte 4: Testeando el servidor Express, administración de usuarios
- Estructura de las aplicaciones backend, introducción al testing
- Testeando el backend
- Administración de usuarios
- Autenticación con Token
Parte 5: Testeando aplicaciones React
- Login en el frontend
- props.children y proptypes
- Testeando aplicaciones React
- Testeo de punta a punta
Parte 6: Manejo de estados con Redux
- Arquitectura Flux y Redux
- Muchos reducers
- Comunicación con el servidor en una aplicación redux
- connect
Parte 7: React rounter, custom hooks, estilo de la aplicación con CSS y Webpack
Parte 8: GraphQL
- Servidor GraphQL
- React y GraphQL
- Base de datos y administración de usuarios
- Login y actualización del cache
- Fragments y Subscriptions
Parte 9: CI/CD
Parte 10: TypeScript
React Native
