# nKode Enrollment ```mermaid sequenceDiagram participant User participant Client participant Server Note over User,Server: Enrollment Client->>User: Signup Form Note left of User: email: user@example.com User->>Client: Submit Email Client->>+Server: Signup Session: user@example.com Server->>Server: Create Signup Session Note over User,Server: Set nKode Server-->>-Client: signup_session_id, set_keypad, icons Note left of Server: signup_session_id:
d7e50a75-d3ff-482a-b0e7-ce99c3838c1a Note left of Server: set_keypad:
Key 0: [12 13 20 21 16]
Key 1: [ 6 1 14 9 4]
Key 2: [ 0 7 26 15 28]
Key 3: [24 19 2 27 10]
Key 4: [18 25 8 3 22]
Note left of Server: Icons:
[😀,😂,🥳,😍,🤓
😎,🥺,😡,😱,🤯
🥰,😴,🤔,🙃,😇
🤖,👽,👾,🐱,🐶
🦁,🐻,🐸,🐙,🦄
🌟,⚡,🔥,🍕,🎉] Client->>Client: Order Icons by keypad Client->>User: Display Keypad Note left of Client: Key 0: ['🤔' '🙃' '🦁' '🐻' '👽']
Key 1: ['🥺' '😂' '😇' '🤯' '🤓']
Key 2: ['😀' '😡' '⚡' '🤖' '🍕']
Key 3: ['🦄' '🐶' '🥳' '🔥' '🥰']
Key 4: ['🐱' '🌟' '😱' '😍' '🐸']
Note left of User: User icons: ['🤓' '🐶' '🦄' '👽'] User->>Client: Set Key Selection: [1, 3, 3, 0] Client->>+Server: Set nKode:
d7e50a75-d3ff-482a-b0e7-ce99c3838c1a
[1, 3, 3, 0] Server->>Server: Disperse Set Keypad Note over User,Server: Confirm nKode Server-->>-Client: signup_session_id, confirm_keypad, icons Note left of Server: signup_session_id:
d7e50a75-d3ff-482a-b0e7-ce99c3838c1a Note left of Server: confirm_keypad:
Key 0: [ 6 13 8 15 10]
Key 1: [24 7 14 3 16]
Key 2: [12 25 2 9 28]
Key 3: [ 0 1 20 27 22]
Key 4: [18 19 26 21 4]
Client->>Client: Order Icons by keypad Client->>User: Display Keypad Note left of Client: Key 0: ['🥺' '🙃' '😱' '🤖' '🥰']
Key 1: ['🦄' '😡' '😇' '😍' '👽']
Key 2: ['🤔' '🌟' '🥳' '🤯' '🍕']
Key 3: ['😀' '😂' '🦁' '🔥' '🐸']
Key 4: ['🐱' '🐶' '⚡' '🐻' '🤓']
Note left of User: User icons: ['🤓' '🐶' '🦄' '👽'] User->>Client: Key Selection: [4, 4, 1, 1] Client->>+Server: Confirm nKode:
d7e50a75-d3ff-482a-b0e7-ce99c3838c1a
[4, 4, 1, 1] Server->>Server: Create User Server-->>-Client: Success ```