¿Qué marco de desarrollo de aplicaciones web prefiere para Node.js?

Intentaré describir aquí algunos marcos que pueden resultarle útiles. Sé con certeza que hay otras personas con opiniones diferentes y tal vez hay algo increíble que me perdí, así que eche un vistazo a todas las respuestas. El marco web que elija también depende a veces del tipo de aplicación que está creando. Hay muchos marcos en el espectro Node que ofrecen diferentes cosas, solo necesita probar y ver qué funciona para usted.

  • Express : el grande. Este es el marco que usa la mayoría de las personas, y es bastante impresionante. No ofrece mucha estructura a su aplicación, pero le brinda vistas, enrutamiento y algunas otras cosas. Es posible que desee consultar Connect, que es el sistema de middleware Express en el que se basa que permite una expansión realmente fácil de su aplicación (hay middleware de autenticación, middleware de servidor de archivos estático, etc.).
  • Geddy – Se podría decir que es como Express, pero le da a su aplicación un poco más de estructura. No he tenido demasiada experiencia con este, pero sé que proporciona una experiencia MVC más convencional si ha usado Django o Ruby on Rails.
    También vea Tower and Sails, que se ven y se sienten más como los marcos MVC tradicionales, junto con Geddy.
  • Flatiron : menos de un marco, más como un conjunto de paquetes desacoplados pero aún así geniales que combinan muy bien. Flatiron está construido por los chicos de nodejitsu (ellos saben lo que hacen). Es bastante similar a Express, también tiene un sistema de middleware (con compatibilidad Connect, puede conectar Connect middleware y hacer que funcione sin ningún problema).
  • Meteor : he trabajado un poco con Meteor y puedo decir que es muy diferente a todo lo que he visto antes. Es extraño y extraño debido a lo bien integrado que está. Le ofrece aplicaciones automáticas en tiempo real, algunas plantillas de manillar y una API de colecciones Mongodb. A algunas personas realmente les gusta trabajar con él, y definitivamente deberías consultar Meteorite para instalar paquetes de terceros. Meteor también le brinda una implementación realmente rápida en un subdominio de http://meteor.com, y agregarán soporte empresarial.
    Estamos comenzando a ver más frameworks que facilitan el tiempo real como Derby y SocketStream, y eso es bastante emocionante.

Personalmente prefiero Express solo por lo popular que es y la cantidad de soporte. También prefiero mi propio ‘marco’ interno construido sobre Express (hace exactamente lo que quiero), y tomo nota de eso, porque es muy fácil extender algún otro marco si hace la mayor parte de lo que desea, pero no funciona del todo (es por eso que hay tantos frameworks). Asegúrese de verificar otras respuestas y explore algunos de los marcos en el wiki de node.js. Verás que hay una tonelada. También hay algunas cosas geniales de ensamblador de aplicaciones front-end para cosas del lado del cliente, como Yeoman y Brunch.

Usamos actionhero.js o hapi.js mucho para API pequeñas. Para el trabajo web utilizamos Express como los otros carteles mencionados. Diré, si estás haciendo una aplicación web muy extensa, no estoy seguro de que Nodejs sea la mejor opción. Algo como Rails (Ruby), Symfony (PHP) u otros similares manejan muchas cosas como CSRF y otras preocupaciones de seguridad que no están dentro del alcance de Express (a propósito). Nuestro patrón favorito en estos días es construir una plataforma de servicio enriquecida, una capa web delgada y agregar JS del lado del cliente para mejorar la capa web siempre que sea posible.

Estoy a favor de Express por su simplicidad, popularidad y la libertad de extenderse para llegar a lo que hace cualquier otro marco. Además, siendo tan popular, hay muchos tutoriales y, por lo tanto, un gran apoyo de la comunidad.

Según yo, Techrev’s Dew (Developer Efficiency Workbench) es el mejor marco de desarrollo de aplicaciones web, el mejor para Node.js.

Te sugeriré que elijas DEW. DEW convertirá las consultas en servicios REST automáticamente. Diseñador de interfaz de usuario que se basa en una interfaz gráfica de usuario (GUI). Con el diseñador, el desarrollador puede arrastrar y soltar controles rápidamente en las pantallas. Proporciona una amplia gama de controles que incluye vistas de cuadrícula, vistas de lista, gráficos, mapas, cámara y varios controles materializados. Controlador que ayuda al desarrollador a crear cualquier método de programación sin codificación. El desarrollador puede arrastrar y soltar rápidamente servicios y otros métodos auxiliares en el controlador para integrar los datos de servicio con la interfaz de usuario.

Hay muchos marcos de desarrollo de aplicaciones web para Node.js desde Express JS, GeddyJS, Meteor, DerbyJS, Locomotive, FlatironJS hasta ParitalJS. Creo que podemos nombrar alrededor de 25-30 de estos marcos. He trabajado con Express, Geddy, Meteor and Locomotive y me encanta Express. Express es ampliamente utilizado y es minimalista. Proporciona una plataforma robusta para crear aplicaciones potentes: una sola página, varias páginas o incluso las híbridas. Siento que Geddy es algo similar a Express pero más simple. Meteor es de código abierto y puedes comenzar a trabajar con él de inmediato si eres un profesional o un novato. Está estrechamente integrado y proporciona opciones de implementación rápida.

Aquí hay cinco marcos de desarrollo de aplicaciones web que todos podemos favorecer para Node.js

Hapi.js
Socket.io
Express.js
Mojito
Meteorito

Para obtener más información, consulte: Tendencias y desafíos en el desarrollo de aplicaciones web

Echa un vistazo a nodo común y quédate. Eso es lo que usamos en StartHQ.

El hombre real usa solo nodo 😉
Con mi experiencia, cualquier marco (excepto express hasta cierto punto) se vuelve doloroso a medida que aumenta la base del código y la funcionalidad. Entonces, mi respuesta sería que puede usar express un poco para su análisis de carga útil y capacidades de middleware, aparte de eso solo use node.

Express para el servidor APIsi encuentra especialmente con la versión 4 recién lanzada para ser la más liberal en tomar lo que necesita y no requiere muchas dependencias adicionales.

Estoy disfrutando mucho de React.js para aplicaciones web, es casi transparente migrarlas a React Native cuando sea necesario.

Sugiero Express. Es lo que la mayoría de la gente usa, y tiene un montón de tutoriales para comenzar.