It is possible to publish packages to the public npm repository, but have them within a certain "scope", which is basically the user or organization. It's a way of namespacing code.
A benefit is that developers know that things in the magnolia scope are from magnolia. Scopes are indicated with '@', so its @magnolia.
Created a user "magnolia". visible at https://www.npmjs.com/~magnolia
Credentials are temporarily at User Accounts on 3rd party systems
What we need to do.
We do not need need an organization to start with. Organizations cost 14$/month. Organizations allow one to create and manage teams/roles/access.
The simplest way to get the @magnolia scope is simply
- to create a user at npmjs.com with the username magnolia.
- An email address must be suplied and it will be public.
- (Probably we should create email address like firstname.lastname@example.org - or perhaps we have some email address that we already use for this.)
- A user can be later upgraded to an organization.
- To publish a public scoped package,
- give the package a name with a scope "@magnolia/mycoolpackage".
- publish with "npm publish --access=public"
To create an organization right off the bat:
- Register a user on npmjs.com (not with the magnolia name.) (free)
- Once registered, Create an organization "magnolia" 14$/month.
- The registered user becomes the "super-admin" for the organization.
- Currently, the super-admin user cannot be changed.
- Additional admins, teams, and users can be added to the organization.
Organizations are first and foremost a way to manage access, roles and resposibilities.
Scope a package to your organization