---
url: "https://vueda.dev/v3/reference/api/js/use/useModelConfig/functions/useModelConfig.md"
title: "useModelConfig"
---

# useModelConfig

## Overview

Provides a reactive configuration for a given app and model.
Uses configuration from storeModelConfig if available, otherwise falls back to model info from storeModelInfo.

## Signature

`useModelConfig(app, model, view)`

### Parameters

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| <span id="param-app">app</span> | `string \| Ref` | yes | The app name |
| <span id="param-model">model</span> | `string \| Ref` | yes | The model name |
| <span id="param-view">view</span> | `string \| Ref` | no | What you are doing with the model |

### Returns

`An object containing reactive fields and actions for create, update, read, and list views.`

## Examples

```vue
<script setup>
import { useModelConfig } from '@vueda/use/useModelConfig.js';

const modelConfig = useModelConfig('myapp', 'Widget', 'list');
// modelConfig.loading, modelConfig.config, modelConfig.info are all reactive
</script>
<template>
  <div v-if="modelConfig.loading">Loading...</div>
  <div v-else>{{ modelConfig.config.verboseName }}</div>
</template>
```

## Source

`client/lib/use/useModelConfig.js:74`
