# Quick Project Setup

**Quick Project Setup** is a lightweight, intuitive tool in the Unity editor designed to streamline your project initialization workflow. Instead of manually configuring basic settings every time you start a new project, this tool helps you get everything set up with just a few clicks.

***

### <mark style="color:$success;">Step 1 – Product Info</mark>

This section sets basic project information.

#### Fields to fill:

* **Company Name:** Your company or personal name (used in Player Settings and package identifiers).
* **Product Name:** Name of your project.
* **Bundle ID:** Unique package identifier in the format `com.company.product`.
* **Version:** Project version (e.g., `0.1.0`).
* **Default Orientation:** Screen orientation for all platforms.

#### Buttons:

* **Auto-generate Bundle ID:** Creates a bundle ID automatically from your company and product name.
* **More Settings:** Opens Unity's Player Settings window.
* **Apply Info:** Saves all entered info to Unity Player Settings.

***

### <mark style="color:$success;">Step 2 – Project Settings</mark>

Configure essential Unity Editor settings for workflow optimization.

#### Options:

* **Enter Play Mode Options:** Enable faster Play Mode iterations.
  * **Disable Domain Reload:** Speeds up entering Play Mode.
  * **Disable Scene Reload:** Maintains current scene state when entering Play Mode.
* **Auto Refresh:** Automatic asset refresh.
* **Asset Serialization:** Determines how assets are stored on disk.
* **Version Control:** Choose between "Hidden Meta Files" or "Visible Meta Files".
* **Default Behavior Mode:** Sets default 2D/3D for new scenes.
* **GameObject Naming:** Naming scheme and digit count for new GameObjects.

#### Button:

* **Apply Settings:** Saves the configuration to the Editor and Project.

***

### <mark style="color:$success;">Step 3 – Folders Structure</mark>

Automatically generate a clean folder hierarchy for your project.

#### Instructions:

* You can type your folder structure manually using indentation (2 spaces per level).
* Or use one of the presets:
  * **2D Game:** Organized for 2D projects.
  * **3D Game:** Organized for 3D projects.

#### Button:

* **Open Project Folder:** Opens your project root folder.
* **Import List:** Import your own folder structure.
* **Export List:** Export your own folder structure.
* **Generate Structure:** Creates all folders inside the `Assets` folder according to your structure.

***

### <mark style="color:$success;">Step 4 – Packages</mark>

Install common Unity packages and custom packages.

#### Steps:

1. Select packages from the checkboxes (e.g., 2D Sprite, TextMeshPro, Cinemachine, URP, etc.).
2. Add custom packages one per line in the text area:
   * Unity Package Name (e.g., `com.unity.addressables`)
   * Git URL (e.g., `https://github.com/author/repo.git`)
   * Local path (`file:/...`)

#### Button:

* **Import List:** Import your custom package list.
* **Export List:** Export your custom package list.
* **Import Packages:** Starts installation of all selected packages.

***

### <mark style="color:$success;">Step 5 – Version Control</mark>

Quickly create common version control files for Git.

#### Options:

* **Create .gitignore:** Standard Unity ignore file.
* **Create .gitattributes:** Configure line endings and file types.
* **Create README.md:** Basic project description file.
* **Create CHANGELOG.md:** Track project versions and updates.

#### Button:

* **Create Files:** Generates the selected files in the project root.
