
Presentación del curso donde viene todo lo que nos vamos a enocontrar
Información que os recomiendo leer
En este video se explica como podemos desenvolvernos en el curso de Udemy
En este video se explica como trabajar con el apartado de preguntas y respuestas
Información útil para hacer un correcto uso de las reseñas y valoraciones del curso
Orden a seguir. Recomendaciones para tener una experiencia agradable en el aprendizaje del curso
Instalamos Node y NPM para poder trabajar en el curso
Instalaremos lo necesario en nuestro ordenador para tener disponible para empezar a desarrollar nuestras APIs con GraphQL
Información sobre el IDE que recomiendo y como instalarlo
Extensiones que recomiendo para trabajar en el curso
Vamos a aprender de que trata GraphQL y cuales son sus características principales
Realizamos la comparativa entre REST y GraphQL explicando las diferencias y las características de cada una de ellas
Ejemplo práctico con la API de Star Wars que está disponible tanto en REST como GraphQL para ver las diferencias que hay a la hora de obtener una información concreta
Ejemplo práctico como en la API de Star Wars pero con la API REST y GraphQL de Rick y Morty
Primeras nociones, reglas y convenciones que tenemos que seguir para crear schemas en GraphQL
Vamos a aprender que son los tipos escalares, sus características y como debemos de aplicarlos en el schema.graphql a la hora de definir el contrato. Junto con los tipos de objeto será uno de los tipos imprescindibles a la hora de definir el schema.
Vamos a aprender que son los tipos de objetos, sus características y como debemos de aplicarlos en el schema.graphql a la hora de definir el contrato. Junto con los tipos de escalares y los tipos de raíz será uno de los tipos imprescindibles a la hora de definir el schema.
Hablamos sobre los enums, un tipo especial de escalares que poseen un conjunto de valores establecido
Es la forma que vamos a representar la información que vamos a devolver donde podemos devolver de diferentes maneras, como objeto único nulo y no nulo, y como lista no nula y nula
Hablamos sobre las interfaces que son definiciones abstractas de atributos comunes para poder obligar a cumplir estructuras comunes
Vamos a aprender que son los tipos de raíz, sus características y como debemos de aplicarlos en el schema.graphql a la hora de definir el contrato. Junto con los tipos de escalares y los tipos de objetos será uno de los tipos imprescindibles a la hora de definir el schema.
Definiciones de las operaciones de consulta
Definiciones de la forma en la que realizamos modificaciones en el lador servidor.
Definiciones de las notificaciones que recibiremos en tiempo real de los cambios dados en el servidor
Tipos de entrada que nos permitirán pasar valores a las consultas y las mutaciones.
Como añadir comentarios para crear una documentación en GraphQL desde el Schema
Vamos a hacer una introducción sobre lo que se va a trabajar en esta sección
Nociones básicas sobre GraphiQL
Nociones básicas para trabajar en el playground de Apollo Server
API que usamos para trabajar en este apartado
Vamos a aprender a realizar queries
Vamos a aprender a realizar queries con argumentos
Vamos a ver como funciona el tema del merge al hacer varias consultas del mismo objeto
Aprendemos a hacer consultas del mismo objeto con diferentes argumentos sin errores
Aprenderemos el uso de los Fragments para realizar consultas con las mismas propiedades más limpias y fáciles de trabajar
Añadir argumentos desde el apartado de Query Variables
Operaciones de modificación de los datos con el tipo de raíz Mutation
Aprendemos a ignorar / añadir propiedades de una consulta con el objetivo de hacer consultas diferentes sin tener que añadir consultas extra.
Información acerca del siguiente video.
Modo de trabajar con las operaciones en tiempo real, en el que vamos a obtener la información cuando se den publicaciones de una acción concreta como es en este caso con los nuevos votos
Explicación sobre como se trabaja en Apollo Server Express 3 respecto a Apollo Server Express 2. Sabiendo bien la base de como trabajar con los apartados como directivas, Fragments,...será aplicable en la nueva versión
En este apartado, hacemos un repaso de todas las opciones principales como la ejecución de operaciones, uso de la documentación, histórico de operaciones, modo que se presentan los datos de los resultados y etc
Repasamos todo lo relacionado al schema y como se visualiza dentro del playground
Explicaré lo que conseguiremos al finalizar la sección y que objetivo es el principal de esta sección
Primeros pasos con el proyecto donde creamos el fichero de manifiesto del proyecto y la base principal de lo que serán las carpetas del curso
Proceso que seguiremos para instalar las dependencias necesarias para el desarrollo del proyecto
Realizamos los pasos necesarios para poder trabajar con Typescript
Configuramos los scripts que se usarán en el proyecto y haremos una prueba de Nodemon con el fichero app.ts
Empezamos a construir el proyecto de nuestra API GraphQL montando el servidor de express básico
Empezamos con la transición a la API GraphQL añadiendo las primeras configuraciones
Terminamos con el proceso de la API básica y la probamos para que comprobemos que todo está correcto
Comenzamos con la refactorización inicial a una clase aparte, para poder reutilizar y mantener de una manera más sencilla ante futuros cambios
Seguimos con el proceso y dejamos la primera versión de la refactorización operativa tal y como lo hacía antes de comenzar la refactorización
Refactorizamos los tipos de definición añadiendo en el fichero GraphQL y los resolvers aparte, para tener más ordenado y limpio
Preparamos en una constante para tenerlo accesible con los datos de los dos ficheros JSON
Comenzamos trabajando con la definición de tipo Query donde obtenemos todos los libros desde el fichero
Definición de tipo Query donde obtenemos todos las personas desde el fichero. Esta clase es la solución a la práctica propuesta en la clase anterior, con el objetivo de reforzar lo aprendido
Obtenemos la consulta aplicando el filtro con el ID del libro seleccionado
Actividad práctica propuesta donde obtenemos la consulta aplicando el filtro con el ID de la persona seleccionada.
Creamos un tipo de objeto aparte para los resultados donde añadimos el estado de la operación, el mensaje del feedback, los elementos en lista y el item seleccionado, con el objetivo de usarlo como un tipo de objeto para todas las respuestas de la API
Comenzamos a trabajar con el tipo abstracto del schema Union, que servirá para añadir múltiples tipos de objeto y dar respuestas usando la misma estructura
Después de haber trabajado haciendo uso del Union con los datos de los libros, aplicamos la configuración y realizamos los cambios mediante Result en las definiciones correspondientes a People (Persona)
Aprendemos a trabajar con el resolver de types para añadir una nueva propiedad y asignarle información completa teniendo como referencia la información de los ids de los libros que han comprado los personas. Libros que ha comprado una persona
Seguimos con el resolver de types para añadir una nueva propiedad y asignarle información completa teniendo como referencia la información de los ids de los libros que han comprado los personas. En este caso, tendremos la lista de personas que han comprado un libro concreto
Después de añadir información complementaria donde mostramos la información de los libros que ha comprado una persona y las personas que han comprado un libro, vamos a darle solución a las propiedades con valor "null" para modificarlas a nuestro gusto
Después de añadir información complementaria donde mostramos la información de los libros que ha comprado una persona y las personas que han comprado un libro, vamos a darle solución a las propiedades con valor "null" para modificarlas a nuestro gusto. En este caso, damos otro paso, complementando una información existente como el usuario de twitter y github, añadiendo el dominio para tener la URL completa ofreciendo información real respecto a la que está almacenada
Primeros pasos con el tipo de raíz Mutation, donde especificamos las operaciones que se realizarán, añadimos el resolver de operaciones dejando todo preparado para comenzar resolviendo paso a paso
Comenzamos resolviendo la definición "addBook" donde aprenderemos dos conceptos nuevos que aplicaremos como son Input y Enum
Una vez comprobado que introducimos la información haciendo uso del Input, en este caso damos la solución al problema insertando el libro dentro de la lista
Implementamos la funcionalidad para comprobar que el libro introducido no existe, es decir, que el título no se corresponde con algún otro que ya se encuentra en la lista. En el caso de existir, mostrarnos el feedback correspondiente
Actualizamos la información de un libro seleccionado por el ID
Seguimos con la actualización de la información del libro
Aprendemos a eliminar el libro seleccionado mientras implementamos la funcionalidad de eliminar
Le damos un punto de seguridad a nuestras APIs, con la configuración de especificar el límite de profundidad para evitar consultas maliciosas con las relaciones N:M que podemos encontrar en prácticamente todos los proyectos
Enunciado y solución final con todo el código del proyecto desarrollado en las clases más lo que se propone en la práctica con el tipo de objeto "People"
En este video os explico lo vamos a hacer y que conseguiremos
En esta clase os enseñaré los pasos que debemos de seguir para empezar a trabajar con Postman, desde la instalación, hasta la configuración básica para comenzar con ello
Obtenemos la lista de libros teniendo la API desarrollada anteriormente
Obtenemos la lista de personas teniendo la API desarrollada anteriormente
Ahora seleccionaremos únicamente un libro, mediante el filtrado usando su ID
Ahora seleccionaremos únicamente una persona, mediante el filtrado usando su ID
Comenzamos con el tipo de raíz Mutation, donde realizamos las modificaciones en la información, con la operación de añadir un libro
Actualizamos la información del libro seleccionado por ID
Eliminamos el libro seleccionado por ID para terminar con las operaciones correspondientes a los libros
Añadimos nuevas personas con esta operación
Opción que usaremos para actualizar la información de una persona seleccionada por ID
Eliminamos la información de la persona seleccionada por ID
Video que os explico el modo de poder hacer backups mediante la exportación y como recuperar para añadirlo en Postman de una manera muy fácil
Video en el que os explico lo que vamos a hacer con sus objetivos a completar
Tenemos disponible el proyecto base que he preparado, para que de manera simplificada podamos ir aprendiendo como configurar los diferentes apartados. Con eso conseguiremos la base, para luego aplicarlo en futuros proyectos y para tener como base este proyecto.
En esta clase os hablo de ESLint y os enseño todo lo necesario para hacer la configuración mínima que usaremos en todos nuestros proyectos actuales y futuros
En este apartado os muestro la manera de modificar varias reglas y os doy las pautas necesarias para saber como añadir las que queramos, dependiendo nuestras preferencias y necesidades
Ahora que ya sabemos movernos con la documentación, os propongo añadir una configuración para especificar el uso de llaves mediante "curly"
Aplicamos lo aprendido en el primer proyecto que hemos desarrollado de la API GraphQL, repasando lo que hemos aprendido y así conseguimos buscar / solucionar los problemas dados
Configuramos la ejecución de Nodemon en el que haciendo uso de los eventos añadimos la opción para ejecute el comando de lint, para buscar errores al momento de hacer cualquier cambio, con el objetivo de encontrar los problemas en tiempo real y no cuando ejecutemos manualmente.
Aplicamos lo aprendido con el ejemplo de la API Base
Realizamos la configuración para cargar todos los ficheros graphql que estarán separados de manera modularizada y unirlos en uno para ejecutarlo de manera normal
Aplicamos lo aprendido con el proyecto de la API Base aplicándolo en el proyecto de la librería que hemos desarrollado anteriormente
Realizamos la configuración para cargar todos los ficheros typescript con el contenido de los resolvers que estarán separados de manera modularizada y unirlos en uno para ejecutarlo de manera normal
Aplicamos lo aprendido en el video anterior con la API de la librería
Práctica propuesta para implementar la refactorización de los resolvers de la API de la tienda de libros.
Introducción a la sección en la que se explica de que va a tratar la sección
Pasos necesarios para instalar y configurar MongoDB en nuestros equipos
Primeros pasos trabajando con las bases de datos en MongoDB
Aprenderemos las nociones básicas sobre la gestión de las colecciones
Comenzaremos con el trabajo de los documentos aplicando la inserción
Trabajando con las funciones insertOne e insertMany
Empezamos con las operaciones de lectura mediante la lectura
Realizamos las búsqueda haciendo uso de los operadores de comparación
Búsquedas de documentos utilizando los operadores lógicos AND y NOT
Búsquedas de documentos utilizando los operadores lógicos OR y NOR
Búsqueda de documentos haciendo uso de las expresiones regulares
Búsquedas combinando los operadores lógicos AND / OR
Aprenderemos a actualizar la información de los documentos
Aprenderemos a eliminar los documentos seleccionados
Instrucciones para instalar MongoDB Compass y preparativos para empezar a trabajar con el programa
Proceso de instalación de MongoDB Compass para Windows / Linux
Nota informativa para tener en cuenta el cambio de versión
Manejo básico de las bases de datos utilizando MongoDB Compass
Trabajaremos con las colecciones
Introduciremos documentos mediante la opción de inserción documentos
Ejercicio práctico para añadir más documentos
Solución a lo propuesto en la práctica
Comenzamos con la búsqueda de documentos
Búsqueda de documentos utilizando los operadores de comparación
Búsqueda de documentos utilizando los operadores lógicos AND / NOT
Búsqueda de documentos utilizando los operadores lógicos OR / NOR
Búsqueda de documentos utilizando expresiones regulares
Búsqueda de documentos utilizando los operadores lógicos AND / OR combinándolo con expresiones regulares
Actualizaremos los documentos
Eliminaremos los documentos
En este video se muestra lo que se va a conseguir y que utilizaremos para llegar a ese objetivo
Añadimos el proyecto de API que usamos como plantilla y ajustamos los apartados necesarios y añadimos la instalación de las dependencias
Instalamos el paquete necesario y añadimos los pasos para configurarlo implementándolo en el proyecto de manera satisfactoria
Añadimos las operaciones con los tipos de raíz Query y Mutation además de los tipos de objeto y elementos necesarios
Haciendo uso de la definición del schema completo en un fichero, vamos a modularizar organizando por partes todo el contenido para que sea más fácil de trabajar con las futuras implementaciones y mejoras
Realizamos los pasos necesarios para conectarnos a una Base de Datos MongoDB en una API GraphQL
Implementamos las opciones para captura el estado de la conexión y mostrarlo en el terminal, dando el feedback correcto al usuario
Implementamos la solución con una estructura válida pero con información fake antes de tener información de usuarios en nuestra Base de Datos
Comenzamos aplicando los pasos iniciales y lo que realizaremos con el tipo de raíz Mutation correspondiente a la definición "add", para registrar usuarios
Una vez introducido el usuario, necesitamos un ID y en esta clase lo vamos a conseguir siguiendo unos sencillos pasos
Una vez que ya tenemos el ID asignado al nuevo usuario, insertamos esa información en la Base de Datos sin realizar ninguna validación más
Implementamos las validaciones para comprobar si el usuario existe y si el password ha sido introducido
Devolvemos una respuesta completa con las diferentes posibilidades que podemos encontrar en operaciones completas / fallidas
Una vez que ya tenemos creados varios usuarios reales, vamos a obtener la información desde la Base de Datos
Implementamos la solución a la definición del login donde podremos iniciar sesión con nuestro credenciales
Implementamos la encriptación del password para darle más seguridad
Ahora que ya tenemos las contraseñas encriptadas, para poder dar como válida las contraseña al iniciar sesión, necesitamos modificar el apartado donde comparamos las contraseñas
Introducción a lo que son los JSON Web Tokens y primeros pasos de instalación en nuestro proyecto
Creamos el token cuando el usuario está verificado y la sesión sea correcta
En este apartado veremos como añadir un token de autorización en el playground para que podamos obtener en el servidor y añadirlo en el context, para poder compartirlo en todos los resolvers y usarlo cuando sea oportuno
Empezamos a darle solución a la definición "me" dentro del Query y con ello añadiremos la función para verificar los tokens y dejamos pendiente de verificar y dar una respuesta dependiendo del resultado
Terminamos la solución de "me" dentro del Query con la verificación y respuesta teniendo en cuenta si es válido o no el token
Empezamos con la solución de la definición "modify" dentro de Mutation hasta poder modificar la información del usuario seleccionado. En este caso no verificamos mediante el token para dar acceso a la modificación
La continuación del apartado anterior donde en este caso implementamos la verificación del token y si es válido, nos da opción de actualizar
En este video os mostraré que es una interfaz, para que se usa y empiezo con los pasos iniciales para implementarlo
Le damos solución mediante el resolver types a la interfaz Result y vemos en el playground los ejemplos
Actividad que nos sirve para repasar con lo aprendido anteriormente cuando hemos aprendido a modularizar los schemas y resolvers
Introducción a lo que vamos a trabajar durante esta sección
Proceso para aprender a instalar Angular CLI
Información importante a leer
Creamos el proyecto, lo probamos en ejecución y terminamos instalando las dependencias necesarias para poder consumir una API en GraphQL
Preparativos del proyecto para tener todo a disposición con el objetivo de poder trabajar con los datos de la API GraphQL que tiene una base de datos en MongoDB sin impedimentos
Creamos el módulo de graphql para configurar y usarlo en el proyecto con el objetivo de poder consumir la información de la API GraphQL
Primera ejecución contra la API desde el cliente Angular para obtener la lista de usuarios almacenada en la base de datos
Iniciamos la sesión enviando los datos a la API de GraphQL para obtener la información de la sesión con el token
Obtenemos la información de ese usuario haciendo la autenticación JWT con el token que hemos obtenido en la clase anterior
Para optimizar el código, separamos las operaciones de consulta GraphQL en ficheros independientes dentro de un directorio que usaremos para ello
Añadimos las llamadas a la API de GraphQL que hacemos desde el app.component en el fichero del servicio API con objetivo de refactorizarlo
Añadimos Bootstrap para poder utilizar sus compontentes para que quede visualmente más atractivo
Comenzamos con el formulario de inicio de sesión, cremoa sl el componente y añadimos el contenido HTML inicial
Hacemos el proceso de adaptar la plantilla HTML para que podamos trabajar en Angular sin problemas
Pasos para conseguir realizar la validación del campo del email, para introducir información que sea únicamente de tipo email
Enunciado de la práctica propuesta
Video en el que se muestra la solución del reto propuesto en la clase anterior
Añadir la ruta para acceder a la página de inicio de sesión
Realizaremos el login contra la API introduciendo nuestros credenciales
Gestionando el inicio de sesión dependiendo si los credenciales introducidos son correctos o no
Primeros pasos con la página personal. Creación del componente y primeras configuraciones
Configuración de las redirecciones dependiendo de si estamos logueados o no
Mostrar la información del usuario autenticado con el token JWT
Gestionamos la acción de cerrar sesión
Creamos la lista de usuarios que están registrados en la base de datos
Creamos el navbar para poder navegar entre las diferentes páginas de manera sencilla
Crear servicio de autenticación donde vamos a gestionar el estado de la sesión y con ello mostramos / ocultamos la información dependiendo de ese estado
Añadimos la directiva *ngIf para gestionar las opciones del menú dependiendo si ha iniciado sesión o no
Creamos un observable del estado de la sesión para poder saber en todo momento el estado y poder gestionar correctamente las opciones correspondientes al navbar y navegación de las páginas
Hacemos un control del estado de la sesión para optimizar la gestión de las opciones que se visualizarán o no
Últimos ajustes necesarios para manejar correctamente la acción de cerrar sesión antes de iniciar con el apartado del registro de los usuarios
Creamos el componente de la página del registro y realizamos los primeros ajustes necesarios como la ruta y hacemos la prueba de que se visualiza correctamente
Creamos el formulario y realizamos la primera prueba antes de enviar la información a la base de datos mediante la API
Vamos a realizar la operación mutation de GraphQL para poder añadir usuarios en la base de datos
Mostramos la información del resultado con un alert después de enviar el usuario a registrar
Protegemos la ruta de la página personal para no poder acceder cuando no tenemos la sesión iniciada
Creamos un observable para almacenar la información de la sesión del usuario para compartirlo en los componentes que creemos oportuno
Comprobamos los credenciales en el servicio de autenticación en vez de hacerlo componente a componente, reduciendo el código duplicado
Una vez que ya tenemos disponible la función para inicializar la comprobación del estado de la sesión, la ejecutamos desde todos los componentes
Mediante las clases de bootstrap personalizamos el navbar con las diferentes variantes y terminamos dándole un fondo personalizado con el color que queramos
Personalizamos los formularios de inicio de sesión / registro de usuario mediante CSS para darle un toque más personal
Código del proyecto final para su descarga
Bienvenido/a a GraphQL con Angular de 0 a Experto. JWT, Sockets, MongoDB, en el que aprenderemos a desarrollar APIs con GraphQL mediante Node.js y Typescript en la parte Backend y en cuanto al Frontend vamos a aprender a consumir nuestras APIs en GraphQL en el Framework Angular con Apollo Client.
GraphQL es un lenguaje de queries que te permite definir qué datos pedirle a un API. Se trata de una tecnología que Facebook publicó en el año 2015, después de usarlo como herramienta interna desde el año 2012.
Es una de las alternativas que han surgido para solucionar la mayor parte de los problemas que se dan en el uso de una API REST. Uno de esos problemas puede ser tener que realizar múltiples llamadas para obtener una información o que la información que se ha obtenido tiene datos que no vamos a utilizar, entre otras muchas cosas
¿De qué trata el curso?
El objetivo principal del curso es claro: aprender a crear APIs en GraphQL con NodeJS y Typescript desde un proyecto sencillo usando dos ficheros JSON hasta un sistema de votaciones en tiempo real donde añadiremos JWT, Sockets, MongoDB.
Obtenemos los conocimientos de GraphQL desde 0, hacemos una comparativa GraphQL VS REST con varios ejemplos para entender cómo funciona y vamos paso a paso aprendiendo a base de proyectos hasta convertirnos unos expertos.
Como añadido con el objetivo de darle un carácter Fullstack consumiendo y creando aplicaciones en Angular, donde trabajaremos con la información de esas APIs desarrolladas en el curso, hasta conseguir publicar estos proyectos en producción con Heroku / Vercel.
Es evidente que las limitaciones de REST han dado origen a GraphQL y muchos equipos ven a esta herramienta como aquella alternativa, o solución cuando el tiempo es importante, puesto que tu API es un servicio desechable y solamente un cliente la va a consumir. Otros la ven como el futuro de las APIs sobretodo por su flexibilidad y consistencia entre las APIs.
¿Cuál es la razón de crear este curso?
Al ser una manera diferente de trabajar respecto a REST a muchas/os profesionales nos da miedo meternos en algo diferente. Esa es la principal razón por la que se ha creado este curso, para mostrar hay otras alternativas para el desarrollo de APIs.
Aunque ya lleve unos años entre nosotros, la información está bastante desperdigada y eso supone que tenemos que invertir un tiempo que nos pueda resultar necesario en investigar en la red para buscar lo que necesitamos.
Por ello, en este curso se intenta englobar todo lo que se puede considerar indispensable saber, empezando desde 0 hasta obtener conocimientos avanzados que nos permitirán ser capaces de trabajar con cualquier reto que nos propongamos trabajando con esta tecnología.
¿Qué aprenderemos durante el curso?
Empezamos de 0 y paso a paso siguiendo una curva de aprendizaje lógica y ascendente, donde podemos encontrar:
Introducción a GraphQL: ¿Qué es GraphQL? / Comparativa GraphQL VS REST / Ejemplo práctico GraphQL y REST.
Schemas GraphQL - Type System: Crear schemas siguiendo las reglas y convenciones recomendadas.
GraphQL Playground Apollo Server: Obtenemos conocimientos básicos para probar APIs GraphQL con el Playground de Apollo Server en las versiones 2 y 3. Indispensable conocer las dos, ya que la 2 la podemos encontrar en los proyectos en producción.
APIs GraphQL: Desarrollo de proyectos desde una API obteniendo información desde un JSON hasta un sistema de votaciones en tiempo real con NodeJS, Typescript y Apollo Server Express haciendo uso de Bases de datos NoSQL con MongoDB.
API GraphQL en POSTMAN: Aprenderemos a consumir APIs GraphQL paso a paso desde 0.
MongoDB: Nociones básicas para trabajar con Bases de Datos de MongoDB con Mongo Shell y MongoDB Compass.
MongoDB Atlas: Trabajar con Bases de Datos MongoDB en la nube.
JWT: JSON Web Tokens. Sistema de autenticación completo en GraphQL con base de datos MongoDB.
Angular: Crearemos aplicaciones Angular que consumen las APIs GraphQL mediante el Apollo Client.
Heroku: Publicar APIs GraphQL (Backend) y Aplicaciones Angular (Frontend).
Apollo Datasource REST: Crear nuestra propia API con GraphQL haciendo uso de una API REST para beneficiarnos de las características de GraphQL.
APIs con PostgreSQL mediante Hasura: Crearemos APIs GraphQL de manera muy sencilla y rápida trabajando con las bases de datos PostgreSQL.
Testing APIs GraphQL: Introducción a las pruebas de tipo de test con Mocha y Chai en APIs GraphQL, algo fundamental hoy en día para mejorar la calidad de nuestros proyectos.
Documentación: Documentar los proyectos en formato markdown para tener + información de los recursos de la API.
Durante las más de 42 horas del curso veremos todo lo relacionado al desarrollo de APIs y sus herramientas complementarias, haciendo todo el proceso muy práctico y con una curva de aprendizaje lógica y ascendente, donde vamos a obtener unos conocimientos Fullstack acerca de esta materia.
Se tratarán todos los temas paso a paso y poco a poco hasta conseguir un buen nivel en los diferentes aspectos descritos anteriormente.
Cualquier problema, duda o lo que sea, se atiende con la mayor brevedad posible. No soy de los que deja de lado el curso cuando lo creo, le presto atención al soporte.
Con el objetivo de aprovechar al 100% el curso, te recomiendo tener conocimientos básicos de Git, Javascript, Typescript y en el desarrollo de Angular. Aun así, no os preocupéis, ya que los proyectos los iremos desarrollando poco a poco y no es necesario conocimientos avanzados.
El código del curso está 100% accesible en Github y también para su descarga en los apartados correspondientes a las clases del curso.
Habrá también actualizaciones periódicas con nuevo contenido propuesto, como pueden ser proyectos y retos.
Y una de las cosas más importantes, tendréis apoyo, soporte y toda la ayuda de manera rápida y eficaz, siendo el tiempo de respuesta lo más reducido posible para que la experiencia del curso sea lo más agradable posible y se aprenda mucho ;)
Si quieres ser un experto desarrollador de APIs GraphQL y quieres obtener los conocimientos necesarios para trabajar con el Apollo Client (en este caso con el Framework Angular) sin tener ninguna noción básica sobre ello, este es tu curso, en el que vas a conseguir aprender a trabajar de otra forma a la hora de desarrollar tus proyectos de API, a medida que vas mejorando como profesional.
La metodología de aprendizaje es la siguiente:
Todo explicado desde cero y paso a paso.
Combinación teórico / práctica.
7 proyectos completos escritos desde 0 en el que se intenta tocar los aspectos más importantes
Más de 300 clases explicadas al detalle.
Más de 42 horas de contenido en video.
Orden lógico y progresivo, para que el aprendizaje no nos resulte frustrante y veamos progresos a medida que avanzamos.
Retos prácticos para trabajar más con lo que vamos aprendiendo.
Soporte completo sobre el contenido del curso y orientación en los retos propuestos.
Actualizaciones periódicas con nuevo contenido propuesto como proyectos y retos
Al finalizar el curso seremos capaces de:
Crear y definir Schemas completos aplicando buenas prácticas.
Trabajar en los playgrounds de Apollo Server Express 2 y 3
Crear APIs GraphQL completas con JWT, Base de datos MongoDB, conexiones Web Sockets mediante subscriptions.
Crear APIs GraphQL consumiendo desde una API REST con la librería Apollo Datasource REST.
Crear aplicaciones Angular completas paso a paso que consumirán la información de la API GraphQL mediante Apollo Client.
Trabajar con Bases de datos MongoDB con soltura.
Crear APIs con Bases de Datos PostgreSQL en unos pocos pasos con Hasura.
Consumir APIs de GraphQL con Postman.
Publicar nuestros proyectos en Heroku.
Testear desde las ba APIs de GraphQL desde 0.
Y mucho más.