     case Renderer.render_fragment(template, bindings) do
       {:ok, html} ->
         {:ok,
-         %FileOutput{
+         %Serum.File{
            src: fragment.file,
            dest: fragment.output,
-           data: html
+           in_data: nil,
+           out_data: html
          }}
 
       {:error, _} = error ->

    |> case do
      {:ok, outputs} ->
        create_dirs(outputs)
        Enum.each(outputs, &FileOutput.perform_output!/1)

      {:error, _} = error ->
        error
    end
  end

  @spec render(Fragment.t(), Template.t()) :: Result.t(FileOutput.t())
  defp render(fragment, template) do
    bindings = [
      page: fragment.metadata,

defmodule Serum.Build.Pass3 do
  alias Serum.Fragment
  alias Serum.Renderer
  alias Serum.Result
