Skip to main content

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 staging \
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.

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 Staging network.