Hi all,
I am installing AEM on my laptop.
Why will I need Node JS and NPM?
For build I use Maven. For code Eclipse.
Let us say I am developing only Back end AEM.
I appreciate all your replies.
Thanks,
Rama.
Solved! Go to Solution.
Topics help categorize Community content and increase your ability to discover relevant content.
Views
Replies
Total Likes
Hi
The simple answer is that an AEM project consists of several modules, including both Frontend and Backend components. While you're likely already familiar with the Backend, which typically uses Maven and Java, the Frontend by default uses Node.js, npm, JavaScript, and potentially any modern JS framework. It's possible to focus only on the Backend, but at a minimum, you'll still need to compile and deploy the entire application to your AEM instance at some point.
You can learn more about the structure of an AEM project here:
Hope this helps
Hi @nsvsrk ,
If you're working only on backend development in AEM - things like Sling Models, OSGi services, servlets, etc. - then:
Node.js and npm are not strictly required.
You can absolutely build and deploy using just Maven and develop in Eclipse or your preferred IDE.
However, Node.js and npm become important if your AEM project includes frontend development, such as:
Most modern AEM projects include a ui.frontend module for handling client-side assets. Even if you're not actively developing frontend code, Maven will fail to build the full project if Node/npm aren't installed and the ui.frontend module is present.
Therefore:
Best regards,
Kostiantyn Diachenko.
Thanks for these valuable insights.
1. Please share the brief functionalities of npm and Node.js. Node,js is a server?
2. When I run Maven from command line or deploy using any IDE like Eclipse, will they use npm and Node.js internally?
From my side I am not invoking npm and Node.js directly myself, even when deploying front end code.
Thus, all these days I have been able to deploy my whole code (front end and back end) using just Maven alone.
How is it possible?
3. When I install Maven from command line or any IDE like Eclipse, do they install npm and Node.js on their own?
I only have to install them from my side?
Thanks,
RK.
Views
Replies
Total Likes
Views
Replies
Total Likes
Hi,
1.
[Node.js] executes JavaScript code outside of a browser.
npm stands for "node.js package manager." Straight from the npm website
2. YES
3. The ui.frontEnd module within the POM has a plugin that downloads a local version of Node/npm to build and compile the files from the module
Lastly, I strongly suggest reading the source I shared in my answer, which will clarify any doubts you may have.
Hope this helps
Hi Admin,
Why am I not seeing "Mark as Correct" option?
Thanks,
RK.
Views
Replies
Total Likes
@nsvsrk You can check now, you should be able to mark it correct.
Views
Replies
Total Likes
Hi,
1. node.js is a JavaScript runtime built on Chrome’s V8 engine. It allows JavaScript to be executed outside of the browser, typically on the server side. Yes, Node.js can act as a server—you can create HTTP servers, APIs, web apps, etc., using frameworks like Express.js. It is event-driven, non-blocking, and ideal for scalable network applications.
npm is the default package manager for Node.js. It manages JavaScript packages/libraries.You can use it to install, version, and manage dependencies of front-end and back-end JavaScript projects.
2. it is technically possible to deploy front-end and back-end using just Maven if the front-end is already compiled (e.g., HTML, CSS, JS are static files).
(Or)
If Maven is using a plugin that handles npm scripts internally, assuming npm are already available on the system.
3. No, Maven and Eclipse do not install Node.js or npm automatically. You need to configure if your build depends on npm/Node.js, you must install them manually or configure your Maven build to install them during build time.
Hope this gives the info you are looking for.
Thanks
Kiran Buthpur
Hi
The simple answer is that an AEM project consists of several modules, including both Frontend and Backend components. While you're likely already familiar with the Backend, which typically uses Maven and Java, the Frontend by default uses Node.js, npm, JavaScript, and potentially any modern JS framework. It's possible to focus only on the Backend, but at a minimum, you'll still need to compile and deploy the entire application to your AEM instance at some point.
You can learn more about the structure of an AEM project here:
Hope this helps
Views
Likes
Replies
Views
Likes
Replies