¿Cuál es la mejor estructura de proyecto para la aplicación AngularJS con express en el back-end?

Depende de lo que haga la aplicación que estás creando y de cuán grande esperes que sea.

En general, en el nivel raíz, me dividiría en dos carpetas: client y server .

El server se puede subdividir en routes , models , etc., dependiendo de si está utilizando otros marcos para acceder a la base de datos.

La carpeta del client tendrá sus archivos HTML en la raíz y la app y carpetas static . Todo el contenido de AngularJS se encuentra debajo de la carpeta de la app . Hay dos escuelas generales de pensamiento sobre cómo organizar esta carpeta:

  1. Por función Esta es mi forma preferida de hacer cosas para proyectos más pequeños. En general, tendrá varias carpetas para los diferentes tipos de cosas en Angular: controllers , directives , filters , services y views .
  2. Por característica . Esto es bueno para bases de código más grandes, ya que facilita la localización de subpartes. Tendrá una carpeta para cada función principal y luego colocará todos los controladores, vistas, etc. asociados en la misma carpeta.