ExpressJS ¿Cómo estructurar una aplicación?

Estoy usando el framework web ExpressJS para NodeJS.

as personas que utilizan ExpressJS ponen sus entornos (desarrollo, producción, prueba ...), sus rutas, etc. en laapp.js. ¡Creo que no es una manera hermosa porque cuando tienes una aplicación grande, app.js es demasiado grande!

Me gustaría tener esta estructura de directorios:

| my-application
| -- app.js
| -- config/
     | -- environment.js
     | -- routes.js

Aquí está mi código:

app.js

var express = require('express');
var app = module.exports = express.createServer();

require('./config/environment.js')(app, express);
require('./config/routes.js')(app);

app.listen(3000);

config / environment.js

module.exports = function(app, express){
    app.configure(function() {
    app.use(express.logger());
    });

    app.configure('development', function() {
    app.use(express.errorHandler({
        dumpExceptions: true,
        showStack: true
    }));
    });

    app.configure('production', function() {
    app.use(express.errorHandler());
    });
};

config / routes.js

module.exports = function(app) {
    app.get('/', function(req, res) {
    res.send('Hello world !');
    });
};

Mi código funciona bien y creo que la estructura de los directorios es hermosa. Sin embargo, el código tuvo que adaptarse y no estoy seguro de que sea bueno / hermoso.

¿Es mejor usar mi estructura de directorios y adaptar el código o simplemente usar un archivo (app.js)?

¡Gracias por tus consejos