# New Project Wizard ## Introduction New Project Wizard can be used to generate a minimal project from scratch. The Wizard can be found in the QUICKSTART PANEL. ![New Project Wizard](./pictures/nxp-npw.png) New Project Wizard supports projects based either on MCUXpresso SDK or Zephyr. Generated projects will be based on the **new_project** template wherever possible, but will fallback to **hello_world** and **blinky** if any of the past templates are not available for the board. ![NPW overview](./pictures/nxp-npw-overview.png) ## Searching and filtering The New Project Wizard will intially be empty (no boards displayed). In order to narrow down and to display the list of boards, it is necessary to first select a project type. ![NPW project type](./pictures/nxp-npw-project-type.png) One or multiple values may be selected. In the case of multiple values, the boards that match at least one of the selected project types will be displayed. ![NPW search](./pictures/nxp-npw-search.png) The search will try to match boards with the identifier or name provided in the query. However, it is also possible to search for other board related data in the query. Partial matching is also supported. Search suggestions will be displayed alongside the query. Selecting one of the suggestions will set the search query to that term. ![NPW search - SPI query will return Zephyr boards that support SPI](./pictures/nxp-npw-search-properties.png) It is also possible to further narrow the results by filtering. Boards can be filtered by the features that they support. The filter conditions are applied with an **OR** operator, therefore results that match at least one property will be fetched. ![NPW filtering](./pictures/nxp-npw-filter.png) The view can also be converted from a grid view to a list view, that contains more information, such as RAM and Flash. ![Toggling between Grid and List view](./pictures/nxp-npw-toggle-view.png) ## Project generation Upon selecting a board, the wizard will expand to allow the user to select a repository, a build toolchain, a project name and a location. The repository can either be a new repository that will be cloned specifically for this new project, or an already existing one. > **Note**: Importing a new repository for the project will also import the repository into the list of available repositories, except in the case of Zephyr. New Project Wizard will clone a minimal Zephyr repository that can only be used for that project. There is also the option to open the configuration tools specific for the project type, after import. In the case of MCUXpresso SDK, Configuration Tools will be opened, as opposed to GUIConfig for Zephyr (kernel configuration, KConfig). ![Open Configuration Tools](./pictures/nxp-npw-config.png) After pressing "Create Project", the project will start generating at the specified location. A notification will show the progress of the operation. In some cases, specifically for MCUXpresso project, a new project may have multiple variants (some examples may be variants of the same template, but for different cores of the target). Since the Wizard cannot determine which sample should be used, it will prompt a selection in a quick pick. ![NPW example selection prompt](./pictures/nxp-npw-select-example.png)