<commit_before># Configuring Routers

Routers can be configured via options. The following options are available for the `reitit.core/router`:

  | key          | description |
  | -------------|-------------|
  | `:path`      | Base-path for routes
  | `:routes`    | Initial resolved routes (default `[]`)
  | `:data`      | Initial route data (default `{}`)
  | `:spec`      | clojure.spec definition for a route data, see `reitit.spec` on how to use this
  | `:expand`    | Function of `arg opts => data` to expand route arg to route data (default `reitit.core/expand`)
  | `:coerce`    | Function of `route opts => route` to coerce resolved route, can throw or return `nil`
  | `:compile`   | Function of `route opts => result` to compile a route handler
  | `:validate`  | Function of `routes opts => ()` to validate route (data) via side-effects
  | `:conflicts` | Function of `{route #{route}} => ()` to handle conflicting routes (default `reitit.core/throw-on-conflicts!`)
  | `:router`    | Function of `routes opts => router` to override the actual router implementation<commit_msg>close markdown row<commit_after># Configuring Routers

Routers can be configured via options. The following options are available for the `reitit.core/router`:

  | key          | description |
  | -------------|-------------|
  | `:path`      | Base-path for routes |
  | `:routes`    | Initial resolved routes (default `[]`) |
  | `:data`      | Initial route data (default `{}`) |
  | `:spec`      | clojure.spec definition for a route data, see `reitit.spec` on how to use this |
  | `:expand`    | Function of `arg opts => data` to expand route arg to route data (default `reitit.core/expand`) |
  | `:coerce`    | Function of `route opts => route` to coerce resolved route, can throw or return `nil` |
  | `:compile`   | Function of `route opts => result` to compile a route handler |
  | `:validate`  | Function of `routes opts => ()` to validate route (data) via side-effects |
  | `:conflicts` | Function of `{route #{route}} => ()` to handle conflicting routes (default `reitit.core/throw-on-conflicts!`) |
  | `:router`    | Function of `routes opts => router` to override the actual router implementation |
{'fraction_non_alphanumeric': 0.15287200361827227, 'fraction_numerical': 0.0, 'mean_word_length': 3.150093808630394, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 15, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2996949', 'n_tokens_mistral': 660, 'n_tokens_neox': 647, 'n_words': 245}