Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

- Symfony 7.4 project skeleton with Docker Compose setup
- OpenWebUI API sync service supporting multiple sites (production/test)
- CLI command `app:sync-openwebui` for syncing models, users, groups, and access grants
- Dashboard with tabbed views for models, users, and groups
- CLI command `app:sync-openwebui` for syncing models
- Dashboard with models overview
- Site selector pills for filtering by site
- Health check indicators for configured OpenWebUI instances
- Sortable table columns and expandable detail rows via Stimulus controllers
- Tailwind CSS styling via symfonycasts/tailwind-bundle
- CI workflows for PHP, Twig, YAML, Markdown, and Composer checks
- Form-based login with email and password
- CLI command `app:create-user` for creating users with generated passwords
32 changes: 24 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
# AarhusAI Overview

A dashboard application for monitoring and managing
[OpenWebUI](https://github.com/open-webui/open-webui) instances. Syncs models,
users, groups, and access grants from multiple OpenWebUI sites into a local
database and presents them in a unified overview.
[OpenWebUI](https://github.com/open-webui/open-webui) instances. Syncs models
from multiple OpenWebUI sites into a local database and presents them in a
unified overview.

## Requirements

Expand Down Expand Up @@ -62,14 +62,31 @@ database and presents them in a unified overview.
docker compose exec phpfpm bin/console doctrine:migrations:migrate --no-interaction
```

7. Access the site at `https://<COMPOSE_DOMAIN>`.
7. Create a user account:

```bash
docker compose exec phpfpm bin/console app:create-user admin@example.com
```

A random password will be generated and printed in the terminal.

8. Access the site at `https://<COMPOSE_DOMAIN>` and log in with the created
credentials.

## Usage

### Authentication

The dashboard requires login. Users are managed via the CLI:

```bash
# Create a new user (generates and displays a random password)
docker compose exec phpfpm bin/console app:create-user user@example.com
```

### Syncing data

Pull models, users, groups, and access grants from all configured OpenWebUI
sites:
Pull models from all configured OpenWebUI sites:

```bash
docker compose exec phpfpm bin/console app:sync-openwebui
Expand All @@ -83,11 +100,10 @@ docker compose exec phpfpm bin/console app:sync-openwebui --site=production

### Dashboard

The web dashboard shows tabbed views for models, users, and groups with:
The web dashboard shows a models overview with:

- Site selector pills for filtering by OpenWebUI instance
- Sortable table columns
- Expandable detail rows
- Health check indicators for configured instances

## Development
Expand Down
35 changes: 0 additions & 35 deletions assets/controllers/tabs_controller.js

This file was deleted.

1 change: 1 addition & 0 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
"symfony/framework-bundle": "^7.4",
"symfony/http-client": "^7.4",
"symfony/runtime": "^7.4",
"symfony/security-bundle": "^7.4",
"symfony/security-csrf": "^7.4",
"symfony/stimulus-bundle": "^2.32",
"symfony/twig-bundle": "^7.4",
Expand Down
Loading