Page tree
Skip to end of metadata
Go to start of metadata

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.

Status

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 npmjs@magnolia-cms.com - 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.

 

Relevant information:

Scoped packages

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

Organizations

https://docs.npmjs.com/orgs/setup

Organizations are first and foremost a way to manage access, roles and resposibilities. 

https://docs.npmjs.com/orgs/roles

Scope a package to your organization 

https://docs.npmjs.com/orgs/scoping-packages

  • No labels