# User Stories A new user should be able to input a username and picture. A new user should be able to access the page explaining domain creation and see their username and image. A user should be able to create a first domain. A user should be able to understand the context of a domain and an atomic habit in the app. A user should be able to configure a new habit as negative/positive, and know the difference. A user should be able to create a new habit in a fresh domain. A user should be able to visualise a fresh habit in a fresh domain. The user should be able to load 3 expanded levels from the bottom of the structure. The user should be able to load one collapsed level from the top of the structure. The user should be able to expand a collapsed habit tree structure into a 2/3 level view. The user should be able to navigate up and down the levels of the tree as quickly as possible (i.e. lazy loading each level) The user should be able to view/hide a node’s associated TDL. ## Use Case Simon wants to quit smoking. Simon boots up HabitFract for the first time. He inputs his name and adds an avatar, so he can personalise the experience. Once he's done that, he wants to start tracking habits. He inputs 'Health' as a life domain, since that's the area of his life he's focusing on. He selects 'negative habit' which turns on 'dark mode' in the UI The concept of atomic/non atomic habits is made clear to Simon. Next, he makes his first habit, 'Quit Smoking', as a non-atomic habit. He is taken to a visualisation where he can see the state of the habit for today as 'incomplete'