diff --git a/src/AnonymousObject.php b/src/Models/AnonymousObject.php
similarity index 98%
rename from src/AnonymousObject.php
rename to src/Models/AnonymousObject.php
index 81e67321bed0c1447bd5b13802583bf31fbe0b09..14a9f6971f31c4b04a379016f4f238250941a9b8 100644
--- a/src/AnonymousObject.php
+++ b/src/Models/AnonymousObject.php
@@ -17,7 +17,7 @@
  * <https://www.gnu.org/licenses/>.
  */
 
-namespace Irstea\NgModelGeneratorBundle;
+namespace Irstea\NgModelGeneratorBundle\Models;
 
 /**
  * Class AnonymousObject.
diff --git a/src/BuiltinType.php b/src/Models/BuiltinType.php
similarity index 95%
rename from src/BuiltinType.php
rename to src/Models/BuiltinType.php
index 59db6262f2882f597c4ae8b43329321397141b50..a05b5f9d9506cafaaf7312c153cbbdfcdee77f25 100644
--- a/src/BuiltinType.php
+++ b/src/Models/BuiltinType.php
@@ -17,7 +17,7 @@
  * <https://www.gnu.org/licenses/>.
  */
 
-namespace Irstea\NgModelGeneratorBundle;
+namespace Irstea\NgModelGeneratorBundle\Models;
 
 /**
  * Class BuiltinType.
diff --git a/src/Collection.php b/src/Models/Collection.php
similarity index 97%
rename from src/Collection.php
rename to src/Models/Collection.php
index 715d5696729e709d733cf344284fa55e1c54142f..d5a202bd33c88c1d4d41334fde51c12642c2d8aa 100644
--- a/src/Collection.php
+++ b/src/Models/Collection.php
@@ -17,7 +17,7 @@
  * <https://www.gnu.org/licenses/>.
  */
 
-namespace Irstea\NgModelGeneratorBundle;
+namespace Irstea\NgModelGeneratorBundle\Models;
 
 /**
  * Class Collection.
diff --git a/src/Context.php b/src/Models/Context.php
similarity index 99%
rename from src/Context.php
rename to src/Models/Context.php
index f3098847f798bf65b8aa668c133c26b3864e31e0..4351a352080b1383603e0bef628cd02f219c0285 100644
--- a/src/Context.php
+++ b/src/Models/Context.php
@@ -17,7 +17,7 @@
  * <https://www.gnu.org/licenses/>.
  */
 
-namespace Irstea\NgModelGeneratorBundle;
+namespace Irstea\NgModelGeneratorBundle\Models;
 
 use ApiPlatform\Core\Api\OperationType;
 use ApiPlatform\Core\Metadata\Resource\ResourceMetadata;
diff --git a/src/Declarable.php b/src/Models/Declarable.php
similarity index 95%
rename from src/Declarable.php
rename to src/Models/Declarable.php
index e175fed18a6e9728485d5f300010508fa462a0ff..af95b3231bd80441638fee8572426bc6603ff532 100644
--- a/src/Declarable.php
+++ b/src/Models/Declarable.php
@@ -17,7 +17,7 @@
  * <https://www.gnu.org/licenses/>.
  */
 
-namespace Irstea\NgModelGeneratorBundle;
+namespace Irstea\NgModelGeneratorBundle\Models;
 
 /**
  * Interface Declarable.
diff --git a/src/NamedTrait.php b/src/Models/NamedTrait.php
similarity index 97%
rename from src/NamedTrait.php
rename to src/Models/NamedTrait.php
index fbcba3e86f1e7029fc460b4a2902203f4957b9cf..aa843ccbd68519762c2b56ffffc7e8b62e93b744 100644
--- a/src/NamedTrait.php
+++ b/src/Models/NamedTrait.php
@@ -17,7 +17,7 @@
  * <https://www.gnu.org/licenses/>.
  */
 
-namespace Irstea\NgModelGeneratorBundle;
+namespace Irstea\NgModelGeneratorBundle\Models;
 
 /**
  * Class NamedTrait.
diff --git a/src/NamedType.php b/src/Models/NamedType.php
similarity index 95%
rename from src/NamedType.php
rename to src/Models/NamedType.php
index dc3eeaa05aa99655f6a67bad98f2ca340b98c767..c161b578b8275baed9f09e8099b0239d36127244 100644
--- a/src/NamedType.php
+++ b/src/Models/NamedType.php
@@ -17,7 +17,7 @@
  * <https://www.gnu.org/licenses/>.
  */
 
-namespace Irstea\NgModelGeneratorBundle;
+namespace Irstea\NgModelGeneratorBundle\Models;
 
 /**
  * Class NamedType.
diff --git a/src/NonResource.php b/src/Models/NonResource.php
similarity index 96%
rename from src/NonResource.php
rename to src/Models/NonResource.php
index 648e44c92bdcf59b08653e03dd7755c4a68a0a33..5a4eb5b035930313e51e2d75f9694fffa3166923 100644
--- a/src/NonResource.php
+++ b/src/Models/NonResource.php
@@ -17,7 +17,7 @@
  * <https://www.gnu.org/licenses/>.
  */
 
-namespace Irstea\NgModelGeneratorBundle;
+namespace Irstea\NgModelGeneratorBundle\Models;
 
 /**
  * Class NonResource.
diff --git a/src/Operation.php b/src/Models/Operation.php
similarity index 99%
rename from src/Operation.php
rename to src/Models/Operation.php
index 62243da918171359a22d940159bfe5a8fe97c677..952a151711b6de2983acb0322e33418e8ce12bcb 100644
--- a/src/Operation.php
+++ b/src/Models/Operation.php
@@ -17,7 +17,7 @@
  * <https://www.gnu.org/licenses/>.
  */
 
-namespace Irstea\NgModelGeneratorBundle;
+namespace Irstea\NgModelGeneratorBundle\Models;
 
 use ApiPlatform\Core\Api\OperationType;
 use Doctrine\Common\Inflector\Inflector;
diff --git a/src/Parameter.php b/src/Models/Parameter.php
similarity index 97%
rename from src/Parameter.php
rename to src/Models/Parameter.php
index 91ec702e1df1e0f67c4bcb84695ad0d57d16414f..93f18de56884ccfdc58b2f24e07b64a649985a1b 100644
--- a/src/Parameter.php
+++ b/src/Models/Parameter.php
@@ -17,7 +17,7 @@
  * <https://www.gnu.org/licenses/>.
  */
 
-namespace Irstea\NgModelGeneratorBundle;
+namespace Irstea\NgModelGeneratorBundle\Models;
 
 /**
  * Class Parameter.
diff --git a/src/Property.php b/src/Models/Property.php
similarity index 98%
rename from src/Property.php
rename to src/Models/Property.php
index 62f1bdfb98e928a0692643db320b11f92179493a..baceba06f3f6aba7c47b2c36150028d8ff701148 100644
--- a/src/Property.php
+++ b/src/Models/Property.php
@@ -17,7 +17,7 @@
  * <https://www.gnu.org/licenses/>.
  */
 
-namespace Irstea\NgModelGeneratorBundle;
+namespace Irstea\NgModelGeneratorBundle\Models;
 
 /**
  * Class Property.
diff --git a/src/Referencable.php b/src/Models/Referencable.php
similarity index 95%
rename from src/Referencable.php
rename to src/Models/Referencable.php
index 3d4ec15cd4ee56db0f3ad57f66871fb95e5e1c21..1306957e6a55ddf9a78a0393bcada8f44e9ab5a0 100644
--- a/src/Referencable.php
+++ b/src/Models/Referencable.php
@@ -17,7 +17,7 @@
  * <https://www.gnu.org/licenses/>.
  */
 
-namespace Irstea\NgModelGeneratorBundle;
+namespace Irstea\NgModelGeneratorBundle\Models;
 
 /**
  * Interface Referencable.
diff --git a/src/Reference.php b/src/Models/Reference.php
similarity index 97%
rename from src/Reference.php
rename to src/Models/Reference.php
index 0026c8ca7b15e836f47dc3e600c7d4a2b621172c..fb6856a010db5cd350454a6141b68e8aaf25557d 100644
--- a/src/Reference.php
+++ b/src/Models/Reference.php
@@ -17,7 +17,7 @@
  * <https://www.gnu.org/licenses/>.
  */
 
-namespace Irstea\NgModelGeneratorBundle;
+namespace Irstea\NgModelGeneratorBundle\Models;
 
 /**
  * Class Ref.
diff --git a/src/Repository.php b/src/Models/Repository.php
similarity index 97%
rename from src/Repository.php
rename to src/Models/Repository.php
index 887166a1c6e158c5e008bb83b263686b1f6f55a8..62bf31a0d26e60bc3e0ad392204e808c7198c146 100644
--- a/src/Repository.php
+++ b/src/Models/Repository.php
@@ -17,7 +17,7 @@
  * <https://www.gnu.org/licenses/>.
  */
 
-namespace Irstea\NgModelGeneratorBundle;
+namespace Irstea\NgModelGeneratorBundle\Models;
 
 /**
  * Class Repository.
diff --git a/src/Representation.php b/src/Models/Representation.php
similarity index 98%
rename from src/Representation.php
rename to src/Models/Representation.php
index 1e897493dacbdd8c8b4fa110fa32f32fb5034fa8..18c549734becc4fc3f975265f6766e68765dbbb2 100644
--- a/src/Representation.php
+++ b/src/Models/Representation.php
@@ -17,7 +17,7 @@
  * <https://www.gnu.org/licenses/>.
  */
 
-namespace Irstea\NgModelGeneratorBundle;
+namespace Irstea\NgModelGeneratorBundle\Models;
 
 /**
  * Class Representation.
diff --git a/src/Type.php b/src/Models/Type.php
similarity index 97%
rename from src/Type.php
rename to src/Models/Type.php
index aa24df07914a9c6365e234c7949670a2e35f2f6c..25fa6f2a7fab5623ffde98f0290ea55d9c5877db 100644
--- a/src/Type.php
+++ b/src/Models/Type.php
@@ -17,7 +17,7 @@
  * <https://www.gnu.org/licenses/>.
  */
 
-namespace Irstea\NgModelGeneratorBundle;
+namespace Irstea\NgModelGeneratorBundle\Models;
 
 /**
  * Class Type.
diff --git a/src/Union.php b/src/Models/Union.php
similarity index 97%
rename from src/Union.php
rename to src/Models/Union.php
index 52854c84f26dde1fff708ff334d2fbfa69295eb8..3cf1c79c550d137e2e253de4d017af35e57b1eb9 100644
--- a/src/Union.php
+++ b/src/Models/Union.php
@@ -17,7 +17,7 @@
  * <https://www.gnu.org/licenses/>.
  */
 
-namespace Irstea\NgModelGeneratorBundle;
+namespace Irstea\NgModelGeneratorBundle\Models;
 
 /**
  * Class Union.
diff --git a/src/Serializer.php b/src/Serializer.php
index a7958d1d95cf29465e121cdd3f4f58e6a3e91dbd..e0abc294cc2deb8cc03b68dbd2a990057efcf244 100644
--- a/src/Serializer.php
+++ b/src/Serializer.php
@@ -29,6 +29,18 @@ use ApiPlatform\Core\Metadata\Property\Factory\PropertyNameCollectionFactoryInte
 use ApiPlatform\Core\Metadata\Property\PropertyMetadata;
 use ApiPlatform\Core\Metadata\Resource\Factory\ResourceMetadataFactoryInterface;
 use ApiPlatform\Core\PathResolver\OperationPathResolverInterface;
+use Irstea\NgModelGeneratorBundle\Models\AnonymousObject;
+use Irstea\NgModelGeneratorBundle\Models\BuiltinType;
+use Irstea\NgModelGeneratorBundle\Models\Collection;
+use Irstea\NgModelGeneratorBundle\Models\Context;
+use Irstea\NgModelGeneratorBundle\Models\NonResource;
+use Irstea\NgModelGeneratorBundle\Models\Operation;
+use Irstea\NgModelGeneratorBundle\Models\Parameter;
+use Irstea\NgModelGeneratorBundle\Models\Property;
+use Irstea\NgModelGeneratorBundle\Models\Reference;
+use Irstea\NgModelGeneratorBundle\Models\Repository;
+use Irstea\NgModelGeneratorBundle\Models\Representation;
+use Irstea\NgModelGeneratorBundle\Models\Type;
 use Psr\Container\ContainerInterface;
 use Symfony\Component\PropertyInfo\PropertyInfoExtractorInterface;
 use Symfony\Component\PropertyInfo\Type as APIType;
@@ -592,6 +604,6 @@ class Serializer implements NormalizerInterface, EncoderInterface
      */
     public function encode($data, $format, array $context = [])
     {
-        return $this->twigEnv->render('typescript_models.ts.twig', $data);
+        return $this->twigEnv->render(__DIR__ . '/Resources/views/typescript_models.ts.twig', $data);
     }
 }