title: Want to get crystal clear about NodeJS app structure (Full JavaScript Stack)
body: <p>I would like to know the structure of a typical NodeJS app, because the more I read and see the projects, the more confused I am, specifically for questions like these (or even more after I updated this question):</p>
  
  <ol>
  <li><p>Take the MEAN stack for example, from what I know, NodeJS and Express take care of the server part, providing the server interface, etc. MongoDB and Angular are pretty straightforward. </p>
  
  <p>But where should the <strong>business logic</strong> go? Say if I have a <code>controller.js</code> which contains a function, and the <code>route.js</code> file binds the request with this controller function. My question is: <strong>under which module these files belong to/run under (Express or NodeJS?)</strong></p></li>
  <li><p>Where is the <strong>starting point</strong> of a NodeJS app? Say <code>index.php</code> is the starting point of a PHP app, but where is it for NodeJS app? I can see that all Nodejs projects have a file called <code>server.js</code> or <code>app.js</code>, etc.(containing something like <code>module.exports = app;</code>) But how can NodeJS know which file to find and execute?</p></li>
  </ol>
  
  <p>I am a fresh noob on NodeJS, Express, sequelize.js/Mongoose, Jade/EJS but want to get started on a NodeJS project. Could you please elaborate on the actual function that each modules provide and a general introduction of the typical structure for a full JS stacked NodeJS app? Thanks in advance!</p>