przygotowanie na refaktor. dodanie plikow zawierajace stan projektu
This commit is contained in:
48
project.md
Normal file
48
project.md
Normal file
@@ -0,0 +1,48 @@
|
||||
# Project: Duck Production Manager
|
||||
|
||||
System zarządzania produkcją (prawdopodobnie gitar) zintegrowany z systemem Mayo oraz bazą Directus. Projekt składa się z frontendu (Quasar), backendu (FastAPI) oraz rozszerzeń Directus.
|
||||
|
||||
## Struktura Katalogów i Plików
|
||||
|
||||
### Root
|
||||
* `db_schema.dbml` - Dokumentacja struktury bazy danych Directus (tabele z prefiksem `mayo_`).
|
||||
* `snapshot(6).json` - Zrzut konfiguracji Directus (kolekcje, pola, relacje).
|
||||
* `directus-api.http` - Plik z żądaniami HTTP do testowania API Directus.
|
||||
* `question.md` - Notatki lub pytania dotyczące projektu.
|
||||
* `project.md` - (Ten plik) Dokumentacja struktury i stanu projektu.
|
||||
|
||||
### Frontend (`/frontend`)
|
||||
Aplikacja webowa oparta na frameworku Quasar (Vue 3).
|
||||
* `quasar.config.js` - Główna konfiguracja frameworka Quasar i Vite.
|
||||
* `package.json` - Zależności i skrypty frontendu (m.in. `quasar dev`, `quasar build`).
|
||||
* `src/` - Kod źródłowy aplikacji.
|
||||
* `App.vue` - Główny komponent aplikacji.
|
||||
* `pages/` - Komponenty stron (np. `IndexPage.vue`).
|
||||
* `layouts/` - Układy stron (np. `MainLayout.vue`).
|
||||
* `components/` - Współdzielone komponenty Vue (np. `OrderCard.vue`, panele bocznego menu).
|
||||
* `stores/` - Zarządzanie stanem aplikacji (Pinia).
|
||||
* `boot/` - Skrypty inicjalizacyjne (np. konfiguracja axios).
|
||||
|
||||
### Backend (`/backend`)
|
||||
Serwis integracyjny pośredniczący między Directus a systemem Mayo.
|
||||
* `my_fastapi.py` - Główna aplikacja FastAPI wystawiająca punkty końcowe do pobierania danych z Mayo.
|
||||
* `mayo/` - Moduł kliencki do komunikacji z systemem Mayo.
|
||||
* `client.py` - Logika klienta HTTP (MayoClient) obsługująca sesje i żądania.
|
||||
* `parser.py` - Narzędzia do parsowania danych otrzymanych z Mayo.
|
||||
* `models.py` - Modele danych Pydantic dla odpowiedzi z Mayo.
|
||||
* `exceptions.py` - Definicje specyficznych wyjątków dla integracji Mayo.
|
||||
|
||||
### Directus Extension (`/directus/extensions/directus-extension-mayo-api`)
|
||||
Rozszerzenie Directus (Endpoint) dodające dedykowane punkty końcowe API.
|
||||
* `src/index.js` - Implementacja endpointów (np. `/products`, `/orders`, `/my-products`) korzystająca z wewnętrznych usług Directus (ItemsService) lub bezpośrednich zapytań Knex.
|
||||
* `package.json` - Konfiguracja rozszerzenia i zależności SDK Directus.
|
||||
|
||||
### Inne
|
||||
* `/responses` - Przykładowe odpowiedzi JSON z zewnętrznych systemów.
|
||||
* `/notes` - Dodatkowa dokumentacja (np. `frontend-api-handoff.md`).
|
||||
|
||||
## Odpowiedzialności komponentów
|
||||
1. **Directus**: Główna baza danych i system zarządzania treścią. Przechowuje dane o produktach, częściach, kolorach i zamówieniach.
|
||||
2. **Backend (FastAPI)**: Odpowiada za pobieranie "żywych" danych z zewnętrznego systemu Mayo, do których Directus nie ma bezpośredniego dostępu.
|
||||
3. **Frontend (Quasar)**: Interfejs użytkownika, który agreguje dane z Directus (poprzez standardowe API i dedykowane rozszerzenie) oraz z backendu FastAPI.
|
||||
4. **Directus Extension**: Optymalizuje zapytania do bazy danych Directus dla potrzeb frontendu, łącząc dane z wielu tabel w dedykowane formaty odpowiedzi.
|
||||
Reference in New Issue
Block a user