Skip to content

Files

Latest commit

 

History

History
89 lines (61 loc) · 3.27 KB

users-and-teams.md

File metadata and controls

89 lines (61 loc) · 3.27 KB

Users and Teams in gno.land

User Registration

In gno.land, users can register a unique username that:

  • Provides a more readable identity than a blockchain address
  • Grants the exclusive right to deploy code under that namespace
  • Can be used in social contexts across the ecosystem

Registration Process

To register a username:

  1. Visit the user registry realm at gno.land/r/gnoland/users
  2. Check if your desired username is available by
  3. Register using the following command:
gnokey maketx call \
  --pkgpath "gno.land/r/gnoland/users/v1" \
  --func "Register" \
  --args "YOUR_USERNAME" \
  --gas-fee 1000000ugnot \
  --gas-wanted 2000000 \
  --send "1000000ugnot" \
  --remote https://rpc.gno.land:443 \
  --chainid portal-loop \
  YOUR_KEY_NAME

The registration costs 1 GNOT, which serves as an anti-spam measure and ensures users value their identities.

Username Ownership

Once registered, a username is permanently linked to the registering address. This address:

  • Has exclusive rights to deploy packages under that namespace
  • Can manage that username's profile and

Namespace Access

Your registered username becomes an exclusive namespace where you can deploy both realms and pure packages:

gno.land/p/YOUR_USERNAME/...  # Pure packages
gno.land/r/YOUR_USERNAME/...  # Realms

For example, a user with the username "alice" could deploy:

  • gno.land/r/alice/blog - A personal blog realm
  • gno.land/p/alice/utils - A utility package

Only the address that registered the username can deploy to these paths, ensuring security and preventing impersonation.

Teams and Collaborative Development

There is an ongoing effort on team-based development through shared namespaces. This feature will enable:

  1. Multiple addresses with permission to deploy under a team namespace
  2. Role-based access control for team members
  3. Collaborative development of larger projects

Until full team support is available, collaborative development can be achieved through:

  1. Account sharing - Multiple developers using the same key (not recommended for security reasons)
  2. Multi-signature wallets - Using multi-sig wallets to control deployment to a shared namespace
  3. Development on branches - Developing under individual namespaces and then migrating to a main namespace

Public Anonymous Namespaces

In addition to registered usernames, all addresses can deploy under their own address-based namespace:

gno.land/p/g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5/...
gno.land/r/g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5/...

This allows for permissionless deployment even without a registered username, though these long namespaces are less user-friendly.

Related Resources

For more information on users and namespaces, refer to:

  • Gno Packages - Understand how namespaces work within the package system
  • Realms - Learn about stateful applications that can be deployed under your namespace
  • Deploying Packages - Instructions for deploying code under your namespace

To explore registered users, visit the User Registry on the Portal Loop network.