e164d51574
- Raise compare limit from 8 to 9 (server + client, toast on overflow) - Make import textarea placeholder match selected format (CSV/JSON/YAML/auto) - Add GuideHelp links to admin create/edit user dialogs and tool import dialog
71 lines
2.5 KiB
Markdown
71 lines
2.5 KiB
Markdown
|
||
# Data model
|
||
|
||
This chapter explains the central data objects of toolr at the application
|
||
level. The complete, automatically generated reference of all fields,
|
||
types and constraints can be found in the
|
||
[API reference](/docs/reference/schemas/tool).
|
||
|
||
## Tool
|
||
|
||
The heart of it all: a tool recorded in the catalog.
|
||
|
||
| Property | Description |
|
||
| --- | --- |
|
||
| `id` | Unique identifier |
|
||
| `name` | Display name |
|
||
| `description` | Description (what does the tool do?) |
|
||
| `category` | Category assignment |
|
||
| `websiteUrl` | Official website (optional) |
|
||
| `iconUrl` | Logo/icon URL (optional) |
|
||
| `features` | List of capabilities |
|
||
| `tags` | List of keywords |
|
||
| `createdAt` / `updatedAt` | Timestamps |
|
||
| `createdBy` | Person who created it |
|
||
| `deletedAt` / `deletedBy` | Soft deletion (trash) |
|
||
|
||
Input forms use the derived schemas
|
||
[`ToolInput`](/docs/reference/schemas/toolinput) and
|
||
[`ToolUpdate`](/docs/reference/schemas/toolupdate).
|
||
Aggregated views are provided by [`ToolWithStats`](/docs/reference/schemas/toolwithstats)
|
||
(e.g. with average rating).
|
||
|
||
## Rating (Bewertung)
|
||
|
||
A single rating for a tool:
|
||
|
||
- `usefulness` (Nützlichkeit, 1–5) and `usability` (Bedienbarkeit, 1–5)
|
||
- optional `comment` and a display name (`reviewerName`)
|
||
- timestamp
|
||
|
||
Input schema: [`RatingInput`](/docs/reference/schemas/ratinginput).
|
||
|
||
## User & Auth
|
||
|
||
- [`User`](/docs/reference/schemas/user) — user account with role (User/Admin)
|
||
and plan (Free/Premium/Enterprise).
|
||
- [`AuthUser`](/docs/reference/schemas/authuser) — the logged-in profile
|
||
including `entitlements` (available features).
|
||
- [`UserPreferences`](/docs/reference/schemas/userpreferences) — view and
|
||
density preferences as well as the `watchlist` (list of tool IDs).
|
||
|
||
## Analytics
|
||
|
||
The statistics endpoints provide aggregated data:
|
||
|
||
- [`AnalyticsSummary`](/docs/reference/schemas/analyticssummary) — global
|
||
metrics (number of tools/ratings, categories, average).
|
||
- [`TopToolEntry`](/docs/reference/schemas/TopToolEntry) — an entry of the
|
||
top tools.- [`CategoryStats`](/docs/reference/schemas/categorystats) — number of tools per
|
||
category.
|
||
- [`RatingDistribution`](/docs/reference/schemas/ratingdistribution) —
|
||
score distribution (usefulness & usability).
|
||
- [`ScoreBucket`](/docs/reference/schemas/scorebucket) — a value bucket.
|
||
|
||
## Additional
|
||
|
||
- [`VersionInfo`](/docs/reference/schemas/versioninfo) — version, commit SHA,
|
||
build date and trash retention of the running instance.
|
||
- [`AuditLog`](/docs/reference/schemas/auditlog) — a log entry
|
||
(action, entity, timestamp, actor, changes).
|