Home > OS >  Why some libraries in simple vanilla Js require NPM?
Why some libraries in simple vanilla Js require NPM?

Time:07-06

I am pretty new to js. And I am looking to learn js. Recently I came across one library called bounce.js which is animation library. Which require NPM to install but why? I am dont want to use NPM (or any packet Manager) they havent provided min.js file to direct import in scrpit tag?? Why??. Similarly for Tailwind it require NPM. And as NPM require it means I need vercel to deploy and all stuff. 2) As I use django I dont know how to install NPM modules in my templates.

Please help me clear out from this mess.

CodePudding user response:

When all I can find is NPM based installation guides I like to search the library name followed by CDN which typically brings up some minified results. In your case I tried searching for bounce.js CDN which brought up lots of results including this one:

https://cdnjs.com/libraries/bounce.js/0.8.2

which points to

https://cdnjs.cloudflare.com/ajax/libs/bounce.js/0.8.2/bounce.min.js

You should be able to do some searching and find the CDN you wish to use. If you want the source JS to serve from your own server you can visit the .js link and right click and download (or copy and paste into your own file).

CodePudding user response:

One of the advantages of using npm over a direct download is facilitating the integration into your workflow.

For instance, if you use a module bundler, the bundler will generate an "optimised", minified version for you: Getting rid of unused code for you (=> Tree shaking) reducing the size of your resulting code, solving some import issues, and more

NPM will also help you keep track of your imported library. You know if you use an up-to-date or outdated version. It will also inform you about Eventual securities issues. And much more.

There are many, many advantages of using npm over direct download.

  • Related