# `Weld.Workspace.Project`
[🔗](https://github.com/nshkrdotcom/weld/blob/main/lib/weld/workspace/project.ex#L1)

Loaded Mix project metadata for one workspace member.

# `application_config`

```elixir
@type application_config() :: %{
  extra_applications: [atom()],
  included_applications: [atom()],
  registered: [atom()],
  mod: nil | {module(), term()}
}
```

# `classification`

```elixir
@type classification() :: :runtime | :tooling | :proof | :ignored
```

# `dep`

```elixir
@type dep() :: %{
  app: atom(),
  requirement: String.t() | nil,
  opts: keyword(),
  original: tuple()
}
```

# `publication_role`

```elixir
@type publication_role() ::
  :default | :internal_only | :separate | {:optional, String.t()}
```

# `t`

```elixir
@type t() :: %Weld.Workspace.Project{
  abs_path: Path.t(),
  app: atom(),
  application: application_config(),
  classification: classification(),
  copy_dirs: [String.t()],
  deps: [dep()],
  elixir: String.t(),
  elixirc_paths: [String.t()],
  erlc_paths: [String.t()],
  id: String.t(),
  publication_role: publication_role(),
  version: String.t()
}
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
