lettuce v0.1.5 Lettuce

Lettuce is a generic server process that checks the files within an elixir project that has lettuce as a dependency and then runs iex -S mix. It initialises the state of the generic server with the .ex files inside lib and their last modified time. By default lib is used but you may specify which folders you want to be watched.

Configuration example

use Mix.Config

config :lettuce, folders_to_watch: ["apps"]
..

You can also change the refresh time to control how often the project files will be checked.

use Mix.Config

config :lettuce, refresh_time: 1500
..

Even though the start_link will throw an error if the Mix.env equals to :dev it is recommended to explicitly select the extra applications by environment in the mix file.

def application do
  [
    extra_applications: extra_applications(Mix.env(), [:logger, ...])
  ]
end

defp extra_applications(:dev, default), do: default ++ [:lettuce]
defp extra_applications(_, default), do: default

Link to this section Summary

Functions

Returns a specification to start this module under a supervisor.

Link to this section Types

Link to this type

file_last_modified()

file_last_modified() :: {String.t(), File.erlang_time()}

Link to this section Functions

Link to this function

child_spec(init_arg)

Returns a specification to start this module under a supervisor.

See Supervisor.