Estamos buscando opciones para construir el front-end de una aplicación que estamos creando y estamos tratando de evaluar una herramienta que funcione para nosotros y nos brinde la mejor plataforma para avanzar.
Este es un proyecto Node.js. Nuestro plan inicial era usar Express y seguir esa ruta, pero decidimos que antes de comenzar esta etapa, sería mejor revisar lo que hay ahí fuera. Nuestra aplicación tiene varias áreas que no creemos que se ajusten al modelo de una sola página, ya que están relacionadas desde una perspectiva de aplicación, pero no desde una vista.
Hemos visto algunos de los marcos que podríamos usar para construir el cliente como Backbone.js , Meteor , etc. y también AngularJS.
Esta puede ser una pregunta bastante obvia, pero parece que no podemos descifrar si AngularJS es puramente para aplicaciones de una sola página o si puede usarse para aplicaciones de varias páginas como Express, por ejemplo.
ACTUALIZACIÓN 17 de julio de 2013 Solo para mantener a las personas informadas, actualizaré esta pregunta a medida que avancemos en el proceso. Vamos a construir todo juntos por ahora, y veremos qué tan bien funciona. Nos pusimos en contacto con algunas personas que están más calificadas con AngularJS que con nosotros y planteamos la pregunta sobre la división de aplicaciones más grandes que comparten contexto, pero pueden ser demasiado grandes para trabajar en una sola página.
El consenso fue que podríamos servir múltiples páginas estáticas y crear aplicaciones AngularJS que funcionen solo con esas páginas, creando efectivamente una colección de SPA y vinculando esas aplicaciones juntas mediante el enlace estándar. Ahora, nuestro caso de uso es muy específico, ya que nuestra solución tiene varias aplicaciones, y como dije, vamos a probar primero la base de código único y optimizar desde allí.
ACTUALIZACIÓN 18 de junio de 2016 El proyecto cayó por un precipicio, por lo que nunca llegamos a hacer demasiado. Lo hemos retomado recientemente, pero ya no estamos usando angular y estamos usando React en su lugar. Todavía estamos usando la arquitectura descrita en la actualización anterior, donde usamos aplicaciones express y autocontenidas, por ejemplo, tenemos una /chatruta en express que sirve nuestra aplicación de chat React, tenemos otra ruta /projectsque sirve la aplicación de proyectos y pronto. La forma en que lo estamos viendo es que cada aplicación es una raíz agregada en términos de su conjunto de características, debe ser independiente para que se considere una aplicación en sí misma. Técnicamente, toda la información está disponible, es solo un express básico y cualquier sabor de bondad de construcción de aplicaciones del lado del cliente que desee utilizar.