I have been working with Aurelia and Node for a while now and recently I took the time to properly create an Aurelia Node.js starter skeleton and put it up on Github here.
While getting Node.js to work with Aurelia is not exactly difficult, this is more of a time saving convenience. I have seen other solutions, but they feel a little hacky and structurally confusing. I adopted a Meteor approach in that all client logic is handled in the client folder and Node.js server logic is in the server folder.
Using Express and a couple of other dependencies, we have a basic Node.js server running. There is no integration with any database dependencies or anything, but if the demand is there I might create MongoDB and Sequelize versions of the starter for database integration.
The main index.html
file you might be used too from the Skeleton has been moved into server/views/index.html
— everything else is handled by the Aurelia Router and dependency injection layer inside of the client folder. The client folder replicates the structure you might be used too with the standard skeleton.
The instructions for installing client and server dependencies is listed in the repository README.md
file and should be pretty self-explanatory. If you have any issues or questions preferably post them in the Github repository so I can properly triage and address.
Only issue I saw when I tried to pull and build is you need to replace “dist” with “src”. Otherwise awesome skeleton!