Línea 98: Mi primer proyecto en React

Apróx. 2 mins

Hace un tiempo les estaba hablando de que quería aprender React; siendo uno de los frameworks más populares de Javascript, es muy buscado por empleadores. Es una excelente tecnología para el repertorio de un Javascript Developer (que es lo que supongo que soy ahora). Así que comencé a hacer los proyectos de FreeCodeCamp, ya que siempre hay que seguir avanzando.

Realmente lo había terminado la semana pasada pero, ni modo: aquí está, el Markdown Previewer.

En la izquierda, puedes escribir texto en formato Markdown (y para los que no saben qué es Markdown, Wikipedia les da una ayuda), y se actualiza en tiempo real en la derecha. Lo más complicado del proyecto ni siquiera fue implementar React: fue parsear e interpretar el formato (y para eso utilicé una librería). Pero lo quiero como a un hijo, como a todos mis proyectos.

Para crear este proyecto, use create-react-app de Facebook porque es bastante sencillo (no hay necesidad de crear una configuración de Webpack ni nada de esas magias negras). El boilerplate que te da create-react-app es como yo estoy aprendiendo React: cada componente en su propio archivo, todo bien modular.
Este proyecto fue bastante fácil si sabes un poco de React y utilizas la librería recomendada, como dije anteriormente.

Pero publicarlo fue otro asunto.

Al inicio quise hacerlo con Codepen, tal como está el ejemplo y como he hecho la mayoría de mis proyectos de FreeCodeCamp. Pero create-react-app (y el mundo moderno de React, al parecer) no tienen un estilo que legible y compatible con Codepen. Ahí perdí bastante tiempo: que si Browserify, que, Reactify, que Babelify, que si los presets (con razón se quejan tanto del ecosistema de Javascript moderno, porque wow que lío).

Al final, la mejor opción fue simplemente seguir las instrucciones de create-react-app para publicar en GitHub Pages. Seguí esta guía para hacerlo (pero el mismo app te va diciendo que hacer).

Creo que para los que van a comenzar a hacer proyectos con React, esta va a ser la mejor opción para publicarlos. A mi me encanta Codepen, pero ya a este nivel hay que asemejarse más a cómo sería trabajar en un ambiente de desarrollo real y hacer deploys.

Además que como tengo seteado mi GitHub Pages, todos mis proyectos aparecen bajo mi dominio (adelrodriguez.com), lo cual es muy cool.