Stiamo esaminando le opzioni per creare il front-end di un'applicazione che stiamo creando e stiamo provando a valutare uno strumento che funzionerà per noi e ci fornirà la migliore piattaforma per andare avanti.
Questo è un progetto Node.js. Il nostro piano iniziale era di usare Express e seguire questa strada, ma abbiamo deciso che prima di dare il via a questa fase potrebbe essere meglio rivedere ciò che è là fuori. La nostra applicazione ha diverse aree che non riteniamo adatte al modello a pagina singola in quanto sono correlate dal punto di vista dell'applicazione, ma non dal punto di vista visivo.
Abbiamo visto alcuni dei framework che potremmo usare per costruire il client come Backbone.js , Meteor , ecc. E anche AngularJS.
Questa potrebbe essere una domanda abbastanza ovvia, ma non possiamo decifrare se AngularJS è puramente per un'applicazione a pagina singola o può essere utilizzato per applicazioni a più pagine come Express, ad esempio.
AGGIORNAMENTO 17 luglio 2013 Solo per tenere le persone al corrente, aggiornerò questa domanda mentre proseguiamo il processo. Costruiremo tutto insieme per ora e vedremo quanto bene funziona. Abbiamo contattato alcune persone più qualificate con AngularJS di noi e abbiamo posto la domanda relativa alla suddivisione di applicazioni più grandi che condividono il contesto, ma potrebbe essere troppo grande lavorando su una singola pagina.
Il consenso era che potevamo servire più pagine statiche e creare applicazioni AngularJS che funzionavano solo con quelle pagine, creando in modo efficace una raccolta di SPA e collegando insieme tali applicazioni usando collegamenti standard. Ora il nostro caso d'uso è molto specifico in quanto la nostra soluzione ha diverse applicazioni e, come ho detto, proveremo prima la base di codice singolo e ottimizzeremo da lì.
AGGIORNAMENTO 18 giugno 2016 Il progetto è caduto da una scogliera, quindi non ci siamo mai potuti impegnare troppo. L'abbiamo ripreso di recente, ma non stiamo più usando angolare e invece stiamo usando React. Stiamo ancora utilizzando l'architettura delineata nell'aggiornamento precedente, in cui utilizziamo app espresse e autonome, quindi ad esempio abbiamo una /chat
route in express che serve la nostra app di chat React, abbiamo un'altra route /projects
che serve l'app di progetti e presto. Il modo in cui la guardiamo è che ogni app è una radice aggregata in termini di set di funzionalità, deve essere in grado di essere autonoma per essere considerata un'app in sé. Tecnicamente, tutte le informazioni sono là fuori, sono solo espresse di base e qualunque tipo di app lato client costruisca la bontà che vuoi usare.