import Config # For development, we disable any cache and enable # debugging and code reloading. # # The watchers configuration can be used to run external # watchers to your application. For example, we can use it # to bundle .js and .css sources. config :<%= @app_name %>, <%= @endpoint_module %>,<%= if @inside_docker_env? do %> # Bind to 0.0.0.0 to expose the server to the docker host machine. # This makes make the service accessible from any network interface. # Change to `ip: {127, 0, 0, 1}` to allow access only from the server machine. http: [ip: {0, 0, 0, 0}],<% else %> # Binding to loopback ipv4 address prevents access from other machines. # Change to `ip: {0, 0, 0, 0}` to allow access from other machines. http: [ip: {127, 0, 0, 1}],<% end %> check_origin: false, code_reloader: true, debug_errors: true, secret_key_base: "<%= @secret_key_base_dev %>", watchers: <%= if @javascript or @css do %>[<%= if @javascript do %> esbuild: {Esbuild, :install_and_run, [:<%= @app_name %>, ~w(--sourcemap=inline --watch)]}<%= if @css, do: "," %><% end %><%= if @css do %> tailwind: {Tailwind, :install_and_run, [:<%= @app_name %>, ~w(--watch)]}<% end %> ]<% else %>[]<% end %> # ## SSL Support # # In order to use HTTPS in development, a self-signed # certificate can be generated by running the following # Mix task: # # mix phx.gen.cert # # Run `mix help phx.gen.cert` for more information. # # The `http:` config above can be replaced with: # # https: [ # port: 4001, # cipher_suite: :strong, # keyfile: "priv/cert/selfsigned_key.pem", # certfile: "priv/cert/selfsigned.pem" # ], # # If desired, both `http:` and `https:` keys can be # configured to run both http and https servers on # different ports.<%= if @html do %> # Reload browser tabs when matching files change. config :<%= @app_name %>, <%= @endpoint_module %>, live_reload: [ web_console_logger: true, patterns: [ # Static assets, except user uploads ~r"priv/static/(?!uploads/).*\.(js|css|png|jpeg|jpg|gif|svg)$"<%= @config_regex_E %>,<%= if @gettext do %> # Gettext translations ~r"priv/gettext/.*\.po$"<%= @config_regex_E %>,<% end %> # Router, Controllers, LiveViews and LiveComponents ~r"lib/<%= @lib_web_name %>/router\.ex$"<%= @config_regex_E %>, ~r"lib/<%= @lib_web_name %>/(controllers|live|components)/.*\.(ex|heex)$"<%= @config_regex_E %> ] ]<% end %> # Enable dev routes for dashboard and mailbox config :<%= @app_name %>, dev_routes: true # Do not include metadata nor timestamps in development logs config :logger, :default_formatter, format: "[$level] $message\n" # Set a higher stacktrace during development. Avoid configuring such # in production as building large stacktraces may be expensive. config :phoenix, :stacktrace_depth, 20 # Initialize plugs at runtime for faster development compilation config :phoenix, :plug_init_mode, :runtime<%= if @html do %> config :phoenix_live_view, # Include debug annotations and locations in rendered markup. # Changing this configuration will require mix clean and a full recompile. debug_heex_annotations: true, debug_attributes: true, # Enable helpful, but potentially expensive runtime checks enable_expensive_runtime_checks: true<% end %><%= if @mailer do %> # Disable swoosh api client as it is only required for production adapters. config :swoosh, :api_client, false<% end %>