   def handle_call(msg, from, state)
 
   def handle_call(:load_info, _from, state) do
-    case Project.Loader.load(state.src, state.dest) do
-      {:ok, proj} ->
-        {:reply, {:ok, proj}, %{state | project_info: proj}}
+    with {:ok, proj} <- Project.Loader.load(state.src, state.dest),
+         {:ok, plugins} <- Plugin.load_plugins(proj.plugins) do
+      print_plugins(plugins)
 
-      {:error, _} = error ->
-        {:reply, error, state}
+      {:reply, {:ok, proj}, %{state | project_info: proj}}
+    else
+      {:error, _} = error -> {:reply, error, state}
     end
   end
 

  def handle_cast(:stop, _state) do
    exit(:normal)
  end
end


  use GenServer
  alias Serum.Build
  alias Serum.Plugin
  alias Serum.Project
  alias Serum.Result

