Guard

Guard is a way to prevent loaders and actions from executing. Many guards can be assigned to a route. Guards allow requests to pass by returning nil. If a Guard determines that a request should not be handled, it can return a http.HandlerFunc to divert the request. For example, a guard could check if a user is logged in and return a redirect if they are not. Another way to think about Guards is like an "incoming request boundary"