NodeJS component based web-application framework