diff --git a/src/Resolver/DirResolver.php b/src/Resolver/DirResolver.php
new file mode 100644
index 0000000000000000000000000000000000000000..f4ab594a9b17e825e336546ab3cfcbb9dbf717f3
--- /dev/null
+++ b/src/Resolver/DirResolver.php
@@ -0,0 +1,50 @@
+<?php
+
+namespace WPDesk\View\Resolver;
+
+
+use WPDesk\View\Renderer\Renderer;
+use WPDesk\View\Resolver\Exception\CanNotResolve;
+
+/**
+ * Class should resolve name by serching in provided dir. If empty then current dir
+ *
+ * @package WPDesk\View\Resolver
+ */
+class DirResolver implements Resolver
+{
+
+    /** @var string */
+    private $dir;
+
+
+    /**
+     * Base path for templates ie. subdir
+     *
+     * @param $template_base_path
+     */
+    public function __construct($dir)
+    {
+        $this->dir = $dir;
+    }
+
+    /**
+     * Resolve name to full path
+     *
+     * @param string $name
+     * @param Renderer|null $renderer
+     *
+     * @return string
+     */
+    public function resolve($name, Renderer $renderer = null)
+    {
+        $dir = rtrim($this->dir, '/');
+        $fullName = $dir . '/' . $name . '.php';
+        if (file_exists($fullName)) {
+            return $fullName;
+        }
+
+        throw new CanNotResolve("Cannot resolve {$name}");
+    }
+
+}