How maxusfr0st/yarne works
Yarné is a vertically integrated textile-business platform: a localized storefront and an admin ERP share a .NET API and business database. The shopper path runs from catalog browsing through checkout and order handling; operators manage catalog, orders, and accounting workflows, including procurement, production, sales, returns, expenses, and reports. The README documents shipping, email, image storage, authentication, and limited offline expense entry. Backend excerpts are partial, so some subsystem connections follow explicit README descriptions rather than inspected call sites.
Main entry points: orders.ts API clients · YarneDbContext.cs Business database · OrdersController.cs API controllers · routes.tsx Storefront routes
Components 24
Storefront
- Storefront routes
YarneFront/src/app/routes.tsx - Checkout UI
YarneFront/src/app/pages/CheckoutPage.tsx - API clients
YarneFront/src/app/api/orders.ts
Admin ERP
- Admin UI
YarneFront/src/app/pages/AdminPage.tsx - Offline expenses
YarneFront/src/app/offline/expenseQueue.ts
API and domain
- API controllers
YarneBack/YarneAPIBack/YarneAPIBack/Controllers/OrdersController.cs - Catalog service
YarneBack/YarneAPIBack/YarneAPIBack/Services/ProductService.cs - Auth services
YarneBack/YarneAPIBack/YarneAPIBack/Services/AuthService.cs - Accounting services
YarneBack/YarneAPIBack/YarneAPIBack/Accounting/Services/AccountingService.cs - Sales accounting
YarneBack/YarneAPIBack/YarneAPIBack/Accounting/Services/SalesAccountingService.cs - Procurement
YarneBack/YarneAPIBack/YarneAPIBack/Accounting/Services/ProcurementService.cs - Production
YarneBack/YarneAPIBack/YarneAPIBack/Accounting/Services/ProductionService.cs - Returns
YarneBack/YarneAPIBack/YarneAPIBack/Accounting/Services/ReturnService.cs - Accounting reports
YarneBack/YarneAPIBack/YarneAPIBack/Accounting/Services/AccountingReportsV3Service.cs - Image handling
YarneBack/YarneAPIBack/YarneAPIBack/Controllers/ImagesController.cs - Image normalization
YarneBack/YarneAPIBack/YarneAPIBack/Services/ImageUploadNormalizer.cs
Persistence and media
- Business database
YarneBack/YarneAPIBack/YarneAPIBack/Data/YarneDbContext.cs
External services
- R2 storage
YarneBack/YarneAPIBack/YarneAPIBack/Services/R2ImageStorageService.cs - Nova Poshta
YarneBack/YarneAPIBack/YarneAPIBack/Services/NovaPoshtaService.cs - Email delivery
YarneBack/YarneAPIBack/YarneAPIBack/Services/OrderConfirmationEmailBuilder.cs - Carrier API
- Email provider
Other components
- Shopper
- Admin operator
Connections 33
- Shopper → Storefront routes: browses
- Storefront routes → Checkout UI: opens checkout
- Checkout UI → API clients: submits order
- API clients → API controllers: HTTP requests
- API controllers → Business database: reads/writes
- API controllers → Email delivery: builds confirmation
- API controllers → Nova Poshta: requests shipment
- Nova Poshta → Carrier API: tracking / waybill
- Email delivery → Email provider: delivers email
- Storefront routes → API clients: loads catalog
- API clients → Catalog service: catalog requests
- Catalog service → Business database: reads/writes
- Admin operator → Admin UI: operates ERP
- Admin UI → API clients: admin requests
- Admin UI → Offline expenses: queues offline
- Offline expenses → API clients: syncs entries
- API clients → Accounting services: accounting requests
- Accounting services → Business database: reads/writes
- API clients → Sales accounting: sales requests
- API clients → Procurement: procurement requests
- API clients → Production: production requests
- API clients → Returns: return requests
- API clients → Accounting reports: report requests
- Sales accounting → Business database: reads/writes
- Procurement → Business database: reads/writes
- Production → Business database: reads/writes
- Returns → Business database: reads/writes
- Accounting reports → Business database: queries
- API clients → Auth services: auth requests
- Auth services → Business database: reads/writes
- Admin operator → Image handling: uploads images
- Image handling → Image normalization: normalizes uploads
- Image handling → R2 storage: stores objects