One Node App per Package.json

I am new to Nodejs but come from a predominantly .net background. In there it is normal to have multiple asp.net projects within one solution. Such as a web service, a web front end and then a load of framework and shared logic.

Now coming to nodejs I was planning on doing a similar thing, having one solution with 2 project, one being a web service style app and one being a front end app, both of which would be using the same frameworks and would have some shared logic in the project to.

The current folder structure looks like:

|- root
   |- source
      |- framework
      |- web-service
      |- web-ui
   |- tests
   |- build-scripts
|- package.json

Now in the above example framework will contain lots of shared stuff, such as models, repositories, factories etc. Then the web service will just deal with saving and exposing data, then the front end just has a view with calls to the web service. So is the above use case ok? as currently I just build with jake and output 2 folders with app.js files and then just run then separately, but just wanted to know if this is bad practice or not.

I think the node convention is just to make each of framework, web-service, and web-ui independent npm modules with their own package.json files, then for the combined project have a separate 4th module that lists each of the other modules as a dependency. npm supports a wide variety of URL schemas including git (or github) repository URLs using tagged releases.

So I suggest:

projects/
  framework/
    package.json
  web-service
    package.json //depends on framework
  web-ui/
    package.json //depends on framework
  uberproject/
     package.json //depends on web-service, web-ui, and maybe framework as well
     //Use URLs like git+ssh://git.example.com/projects/framework.git#v0.9.4

Also read up on npm link (or just use symlinks) when you want to concurrently work on both uberproject and framework, for example.