> For the complete documentation index, see [llms.txt](https://elguerre.gitbook.io/de0an/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://elguerre.gitbook.io/de0an/capitulo-04-la-construccion.-los-cimientos/nuevo-proyecto-con-template-10.md).

# Nuevo proyecto con Template 10

Al principio del capítulo conocimos un poco sobre las plantillas de proyecto *Template 10*. En capítulos sucesivos iremos haciendo usos de ellas aprovechando todas las facilidades que nos aportan. Recordemos que: “*Nos van a permitir maximizar la genialidad y minimizar lo repetitivo*”.

Por el momento, conoceremos cómo usarlas para crear nuevamente nuestro proyecto.

1. Crear una solución tal y como hicimos en el apartado *Nuevo proyecto*
2. Añadir un nuevo proyecto, con la misma nomenclatura, pero seleccionando el tipo de plantilla “Hamburger (Template 10)”.

![](https://240651724-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FfrvHBNivOTy0fVKROgzo%2Fuploads%2Fgit-blob-a3f82dd320fba52e74be3cd67868fe4bc96361ed%2Fimage45.png?alt=media)

**Figura 35.- Creación de un nuevo proyecto Universal “Hamburger (Template 10)”**

3. Tras la generación del proyecto con esta nueva plantilla su aspecto es el siguiente:

![](https://240651724-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FfrvHBNivOTy0fVKROgzo%2Fuploads%2Fgit-blob-acd25c7f93f725d18cad01d68c8285cce47d687a%2Fimage46.png?alt=media)

**Figura 36.- Estructura inicial de proyecto y aplicación en ejecución con Template 10**

Donde:

* Styles. Incluye ficheros con diccionarios de recursos para temas, y estilos.
* Models. Clases donde incluir los distintos modelos o entidades para tratar la información de la aplicación.
* Busy.xaml. Es un control de usuario (o *UserControl*) que deshabilita la pantalla mientras el indicador de progreso está en movimiento. Alternativamente muestra un texto con un mensaje informativo.
* Shell.xaml. Es el marco base de las aplicaciones *Template 10*, que se encarga de ofrecer el menú *Hamburger* y buena parte de la navegación entre páginas.
* Página Splash.xaml. Se trata de una página que hace las veces de una página de bienvenida (o *Splash Screen)*. Es dinámica y la utilizaremos para presentar al usuario un indicador de progreso durante la espera por una carga de datos.

  El resto de *ViewModels,* Servicios y páginas tienen como objetivo servir de ejemplo para el uso de la plantilla. Una página de detalle a la que se accede desde la página principal *Main* y una página de personalización o *Settings*, con un servicio que guarda la personalización del usuario en el dispositivo.

4. A partir de este punto añadir todas las carpetas y clases tal y como hicimos para el proyecto anterior.
5. Finalmente, nuestro proyecto tendrá el siguiente aspecto, que será a partir del cual continuemos en capítulos consecutivos.

![](https://240651724-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FfrvHBNivOTy0fVKROgzo%2Fuploads%2Fgit-blob-be77c4e4be8d89cbc8411aabb91836ffbf0212f8%2Fimage47.png?alt=media)

**Figura 37.- Ejecución y completa estructura de proyecto con Template 10**

Una vez más, contamos con un nuevo proyecto al que hemos ido realizando actualizaciones para adecuarlo al patrón MVVM y otras buenas prácticas. Generaremos, por tanto, una nueva plantilla personalizada. ¡Justo la que queremos! ¡Ahora contamos con nuestra personalización, Template 10 y todas sus utilidades!

Iremos conociendo poco a poco muchas de sus cualidades, si bien, para adentrarnos en todas ellas podemos recurrir a la página: <https://github.com/Windows-XAML/Template10/wiki>.
