How sandybrownca/crm works
Business Operations CRM is a React and ASP.NET Core application for customer records and interactions, invoice issuance, payment tracking, dashboard reporting, user administration, and simulated ERP synchronization. Users work through the web app; its pages call API clients, while backend endpoints delegate business operations to infrastructure services that persist through EF Core. The sampled service code confirms invoice, payment, customer, dashboard, and ERP behaviors; several endpoint and UI links are based on the README or source index because those files were not excerpted.
Main entry points: Endpoints Versioned API endpoints · AppDbContext.cs EF Core context · App.tsx React app routing · client.ts Web API clients
Components 21
Web application
- React app routing
src/web/src/App.tsx - Session context
src/web/src/auth/AuthContext.tsx - Customer workspace
src/web/src/pages/CustomersPage.tsx - Invoice workspace
src/web/src/pages/InvoicesPage.tsx - Dashboard view
src/web/src/pages/DashboardPage.tsx - User workspace
src/web/src/pages/UsersPage.tsx - Web API clients
src/web/src/api/client.ts - Auth client
src/web/src/api/auth.ts
HTTP API
- Versioned API endpoints
src/api/BusinessOperations.Api/Endpoints
Business operations
- Customer records
src/api/BusinessOperations.Infrastructure/Customers/CustomerService.cs - Customer interactions
src/api/BusinessOperations.Infrastructure/Customers/CustomerInteractionService.cs - Invoice lifecycle
src/api/BusinessOperations.Infrastructure/Invoices/InvoiceService.cs - Payment processing
src/api/BusinessOperations.Infrastructure/Payment/PaymentService.cs - Business reporting
src/api/BusinessOperations.Infrastructure/Dashboard/DashboardService.cs - ERP synchronization
src/api/BusinessOperations.Infrastructure/Erp/ErpSyncService.cs - Simulated ERP adapter
src/api/BusinessOperations.Infrastructure/Erp/SimulatedErpClient.cs
Authentication and administration
- Cookie authentication
src/api/BusinessOperations.Api/Endpoints/AuthEndpoints.cs - User and role admin
src/api/BusinessOperations.Infrastructure/Users/UserAdminService.cs
Persistence
- EF Core context
src/api/BusinessOperations.Infrastructure/Persistence/AppDbContext.cs - SQL Server data
Other components
- CRM user
Connections 31
- CRM user → React app routing: uses
src/web/src/App.tsx - React app routing → Session context: provides session
src/web/src/App.tsx - React app routing → Customer workspace: routes to
src/web/src/App.tsx - React app routing → Invoice workspace: routes to
src/web/src/App.tsx - React app routing → Dashboard view: routes to
src/web/src/App.tsx - React app routing → User workspace: routes to
src/web/src/App.tsx - Session context → Auth client: calls
src/web/src/auth/AuthContext.tsx - Customer workspace → Web API clients: requests data
src/web/src/pages/CustomersPage.tsx - Invoice workspace → Web API clients: requests data
src/web/src/pages/InvoicesPage.tsx - User workspace → Web API clients: requests data
src/web/src/pages/UsersPage.tsx - Dashboard view → Web API clients: requests data
- Web API clients → Versioned API endpoints: HTTP requests
- Auth client → Cookie authentication: HTTP requests
- Versioned API endpoints → Customer records: delegates
- Versioned API endpoints → Customer interactions: delegates
- Versioned API endpoints → Invoice lifecycle: delegates
- Versioned API endpoints → Payment processing: delegates
- Versioned API endpoints → Business reporting: delegates
- Versioned API endpoints → ERP synchronization: delegates
- Versioned API endpoints → User and role admin: delegates
- Invoice lifecycle → ERP synchronization: requests sync
src/api/BusinessOperations.Infrastructure/Invoices/InvoiceService.cs - ERP synchronization → Simulated ERP adapter: submits invoice
src/api/BusinessOperations.Infrastructure/Erp/ErpSyncService.cs - Customer records → EF Core context: reads and writes
src/api/BusinessOperations.Infrastructure/Customers/CustomerService.cs - Customer interactions → EF Core context: reads and writes
src/api/BusinessOperations.Infrastructure/Customers/CustomerInteractionService.cs - Invoice lifecycle → EF Core context: reads and writes
src/api/BusinessOperations.Infrastructure/Invoices/InvoiceService.cs - Payment processing → EF Core context: transactions
src/api/BusinessOperations.Infrastructure/Payment/PaymentService.cs - Business reporting → EF Core context: queries
src/api/BusinessOperations.Infrastructure/Dashboard/DashboardService.cs - ERP synchronization → EF Core context: reads and writes
src/api/BusinessOperations.Infrastructure/Erp/ErpSyncService.cs - User and role admin → EF Core context: manages users
- Cookie authentication → EF Core context: uses identity store
- EF Core context → SQL Server data: persists