"New project" wizard flow
Overview
We are working on a gitlab-ce~3592632 in https://gitlab.com/gitlab-org/gitlab-ce/issues/47996. This issue serves as implementation issue of the final design.
Problem to solve
Started a few months ago in https://gitlab.com/gitlab-org/gitlab-ce/issues/35234, there is an opportunity to rethink the current flow for creating new GitLab projects.
Besides specific improvements that are planned in parallel in the parent Epic, we should invest into discovering potential improvements to the "New projects" page flow.
Solution
New project screen | With advanced options expanded | Vision |
---|---|---|
With this, we add the ability to add an avatar, a license, edit the description and enable/disable project features in the expandable section at the bottom. We're keeping the tabs on top for now.
Based on the user journey mapping I did, this will improve the flow for users that want to set up most project settings all in one place.
I see this as a transitional step towards the vision that @jeremy described. Users are able to change most project related settings in one screen (new project screen) and don't need to navigate through 10 pages. In the future, this could possibly all be done on the actual project overview page. Let's leave that to the future exploration.
Changes required:
- introduce an expandable section
- add the option to add an avatar to the expandable section
- add an option to add a license to the expandable section
- add the 'features settings' to the expandable section
- move 'description' to the expandable section
- we keep the tabs for now
- we don't separate the import option from new yet
- change the description on the left (removed two paragraphs)
- remove the 'Cancel' button. It only goes back to the previous page in the browser, the user is more likely to use the browser's button to do that.
- add a '/' between namespace and project slug
Clicking on the 'add a license' dropdown should open the 'apply a license' dropdown, similarly to the new file license template selection:
Next steps
- implement the MVC
- enable analytics so we can keep track of the usage of this page
- run a test to see if separating 'create a new project' and 'import a project (repository)' aligns well with the mental model of our users.