FruitBankHybridApp/FruitBankHybrid.Shared/README.md

1.6 KiB

FruitBankHybrid.Shared

@project { type = "product" own-dep-projects = [ "AyCode.Core, AyCode.Entities, AyCode.Interfaces, AyCode.Models, AyCode.Services, AyCode.Services.Server, AyCode.Utils (in AyCode.Core repo)", "AyCode.Blazor.Components (in AyCode.Blazor repo)", "Mango.Nop.Core (in Mango.Nop Libraries repo)" ] }

Main Blazor UI library shared across all three deployment targets (Server, WASM, MAUI). Contains pages, DevExpress grid components, SignalR client, measurement service, and layout.

Folder Structure

Folder Purpose
Components/ DevExpress grid wrappers, pallet components, notifications
Pages/ Routed pages: Login, ShippingsAdmin, OrdersAdmin, MeasuringIn/Out, StockTaking
Services/ SignalR client, measurement service, form factor, loggers
Layout/ MainLayout with navigation, auto-login, toast notifications
Models/ Date selector model for measuring pages
Extensions/ DevExpress MessageBox/ConfirmBox helpers
Databases/ Client-side ConcurrentDictionary table cache

Key Files (Root)

  • _Imports.razor — Global Blazor imports.
  • Routes.razor — Route definitions.
  • appsettings.json — Canonical configuration source for all three hosts (Web, Web.Client, MAUI). Edit ONLY here. Pull mechanism per host: see docs/ARCHITECTURE.md (in repo root) → "Shared Configuration".

Target Framework

.NET 10.0 with AOT compilation and WASM IL stripping enabled.