# MVC Template

## Setup

* Open a terminal where the new project should be set up.
* Execute the commands below:

```bash
# Generate the project
dotnet new uc-mvc --name "<ProjectName>"

# Step into the new project folder
cd "ProjectName"

# Up the docker instances for SQL and Elasticsearch
docker compose -f docker/docker-compose.yml up -d

# Run the project
dotnet watch run --project "<ProjectName>"
```

{% hint style="success" %}
Once your application runs, you can access the administration interface by requesting **/ucommerce**.
{% endhint %}

## Template options

<table><thead><tr><th width="208">Attribute</th><th width="203">Example Value</th><th width="249">Description</th><th data-type="checkbox">Required</th></tr></thead><tbody><tr><td>--name</td><td>"TestProject"</td><td>A name to be used for the scaffolded project.</td><td>false</td></tr><tr><td>--elastic-password</td><td>"mypassword"</td><td>Replace a default password for the Elasticsearch instance.</td><td>false</td></tr><tr><td>--sql-edge-password</td><td>"mypassword"</td><td>Replace a default password for the SQL Edge instance.</td><td>false</td></tr><tr><td>--stripe</td><td>true</td><td>Add Stripe payment provider integration.</td><td>false</td></tr><tr><td>-h</td><td>-</td><td>Get a list of all available options. This won't execute the command.</td><td>false</td></tr></tbody></table>

{% hint style="info" %}
For a full list, you can execute:

`dotnet new uc-mvc -h`
{% endhint %}
