Hello. Explain what it means

npm install @reactivex/rxjs 

I understand that this is the installation package, but somehow

 npm install rxjs 

I began to study Angular, TypeScript and this symbol is constantly coming across, for example @ angular / core or in node_modules / @ types explaining what this means I cannot find ... I understand that this is a trivial thing, but I cannot find the answer.

  • I'm not exactly sure, but it seems to me that such characters as @ or / are simply not prohibited, they are ordinary characters in the package name. With their help, apparently called all sorts of submodules. - Beast Winterwolf
  • so for babel the same symbol appeared for new versions. npm install babel-loader@8.0.0-beta.0 @ babel / core @ babel / preset-env webpack. Apparently there is some general agreement regarding @ ... but I can not find it - Ostic

1 answer 1

This is called scope in terms of npm.

https://docs.npmjs.com/getting-started/scoped-packages

By the way, if you raise your private npm repository ( docker run verdaccio ), then in the npm settings you can specify that packages from such and such um .. skoupa are downloaded from your repository, not from the public one, and also published there ( so as not to send the secrets of the company in public)

You can also pay money in npm, and then they allow you to keep private repos on their servers

Public packages simply have a name like "@ types / react" in package.json, and in general, that's all.