       :ok
 
   """
-  @spec create_file(Path.t, iodata, keyword) :: any
+  @spec create_file(Path.t(), iodata, keyword) :: any
   def create_file(path, contents, opts \\ []) when is_binary(path) do
-    Mix.shell.info [:green, "* creating ", :reset, Path.relative_to_cwd(path)]
+    Mix.shell().info([:green, "* creating ", :reset, Path.relative_to_cwd(path)])
 
     if opts[:force] || Mix.Utils.can_write?(path) do
       File.mkdir_p!(Path.dirname(path))

          [from_file: file] ->
            @file file
            File.read!(file)
          c when is_binary(c) ->
            @file {__ENV__.file, __ENV__.line + 1}
            c
          _ ->
            raise ArgumentError, "expected string or from_file: file"
        end

      require EEx
      EEx.function_from_string :defp, :"#{name}_template", "<% _ = assigns %>" <> contents, [:assigns]
    end
  end


      :ok

  """
  @spec create_directory(Path.t()) :: any
  def create_directory(path) when is_binary(path) do
    Mix.shell().info([:green, "* creating ", :reset, Path.relative_to_cwd(path)])
    File.mkdir_p!(path)
  end

  @doc """
