Cuando pensamos en frameworks de Javascript nos vienen a la cabeza diferentes opciones, aunque en la mayoría de ocasiones pensaremos en frameworks y librerías que son usado en el lado del Frontend .
En esta ocasión y, atendiendo a una de las encuestas más famosas que se le realizan a desarrolladores sobre JavaScript, The State of JavaScript , vamos a ver las 5 opciones preferidas en cuanto a frameworks de JavaScript para backend , según las personas que fueron encuestadas a finales de 2017 .

Express
Seguro que si alguna vez has trabajado con NodeJS lo conocerás puesto que no es necesaria la encuesta para saber que, Express es el más usado y famoso framework de Node.JS .
Gracias a su permanencia en el tiempo y a su comunidad podemos decir de él que es un framework bastante grande y que resolverá la mayoría de nuestras necesidades en cuanto a servir un sitio, rutas, templates, etc.
Si nunca has usado este framework, cuando creamos un CRUD con JavaScript hicimos uso de éste. Un tutorial que sin duda no debes perderte.
Aunque este es muy usado, en mi opinión para casos de uso muy pequeños o concretos quizás tu solución no sea Express. El motivo es que existen otros frameworks o incluso librerías bastante simples que si lo que necesitas es algo bastante pequeño pueden resolverlo de manera muy satisfactoria.
Por ejemplo, para crear un microservicio (Que puede consistir en servir únicamente dos rutas) la librería micro
, disponible en NPM creo que cumple a la perfección la necesidad de uso planteada.
Koa
Koa, según su propia definición, es la nueva generación de framework para la web . Está creada por desarrolladores que estuvieron creando Express y entre sus cualidades, con las que pretenden que este framework sea mejor que Express, se encuentran:
- Tamaño
- Mayor expresividad en los métodos , es decir, que sus nombres sean más claros.
- Mayor solidez a la hora de crear aplicaciones web y API’s .
Destaca por su apuesta de la nueva sintaxis de Javascript , ES6 y por usar la tecnología de async/await
, propia de esta nueva sintaxis. Todo esto hace que, en unos métodos bastantes similares a Express podamos disfrutar de un código más limpio y más rápido de producir.
Meteor
Meteor va más allá de la definición de framework, puede llegar a ser considerado toda una plataforma ya que, aunque en su estructura constituye un framework es capaz de exportar el código escrito en diferentes entornos: web, mobile y desktop.
Dependiendo de las necesidades de tu próximo proyecto Meteor puede ayudarte a evitar código duplicado , sobretodo cuando estés creando una aplicación web y móvil a la vez.
Esto también lo tenemos con React y React Native, pero en este caso, al menos por defecto necesitamos copiar y pegar el código(así como modificar algún que otro componente).
Algo a destacar de este framework es su integración con otras soluciones con las que ya estás trabajando, en su landing page puedes ver que es compatible con React, Vue, Angular, Mongo y GraphQL entre otros
Debemos de tener en cuenta que Meteor integrará el Backend y el Frontend así como la base de datos en un sólo proyecto y haciendo uso de un mismo lenguaje, que como no puede ser de otra manera, es JavaScript.
La integración del proyecto por parte de Meteor no significa que vayas a tener problemas de seguridad, ya que cada área está separada de la otra, como en cualquier otro desarrollo.
Hapi
HapiJS es otro framework de NodeJS para construir aplicaciones web , que como hemos estado viendo en las estadísticas está calando últimamente. Se han publicado varios libros de este framework como Developing a Hapi Edge .
Según su propia definición, este framework se centra en que el código que crees para tu aplicación sea reusable en vez de estar perdiendo el tiempo con código innecesario .
Su sintaxis es bastante simple e intuitiva, por ejemplo, para poder crear una ruta sólo será necesario esta pieza de código:
server.route({
method:'GET',
path:'/api/test',
handler:function(request,h) {
return {result: 200, message: 'The API works!'};
}
});
A diferencias de Express está estructurado y cerrado en algunos aspectos como en los middlewares , eso no significa que no puedas usarlos pero si por ejemplo estás trabajando en un equipo y tienes una idea clara de lo que quieres construir Hapi será tu solución al traer preparadas cosas que en Express tendrías más abiertas y podría ser una confusión para tu equipo.
Un middleware es una pieza de código(función) que realiza una acción entre el request
y el response
, en el caso de los frameworks web que es lo que estamos hablando. Si la pieza de código en otro ámbito es intermediaria entre dos partes también puede ser considerada como tal.
Sails
SailsJS es un framework web creado por Mike McNeil creado con el fin de tener una estructura con la que crear aplicaciones para sus clientes, lo que no esperaba es que se convertiría en uno de los frameworks más usados
En comparación al resto de los mencionados, destaca que la mayoría de acciones pueden ser realizadas con el generador , lo cual es algo que a no todo el mundo le gusta. Si no te importa tener el código pregenerado y así ganar velocidad al desarrollar la aplicación deberías de probar Sails, de lo contrario quizás deberías de elegir otra opción de la lista.
Conclusiones
“Para gustos, frameworks”
Seguro que podríamos estar todo el día hablando de todos los frameworks para backend que existen pero es una realidad estadística, estos son los más usados.
Quizás alguna necesidad específica de tu proyecto te hace decantarte por algún otro framework no tan usado, mientras que haya actualizaciones recientes detrás de este y solucione tu problema, es sin duda una buena opción.
Si tu especialidad es el Frontend puedes ver el artículo que tenemos donde hablamos también sobre los frameworks para frontend más usados en la actualidad.
¿Qué framework te hace falta en esta lista de los más usados? Cuentanos en los comentarios que frameworks para backend has probado o usas y dinos que tal te ha ido .