{ "Logging": { "LogLevel": { "Default": "Information", "Microsoft.AspNetCore": "Warning" } }, "ConnectionStrings": { // Own, isolated local dev database (Infrastructure Design decision Q1 = B) — deliberately // separate from SlpModularCms.Api's local database, so developing/testing this project // (and the future Offerings module) never touches Api's local data, or vice versa. "DefaultConnection": "Server=127.0.0.1;Port=3306;Database=SlpModularCmsSlpSoftwareDev;Uid=root;Pwd=" }, "JwtSettings": { "Secret": "SuperSecretKeyForDevelopmentOnly_MustBeLongerThan32Bytes!", "Issuer": "SlpModularCms", "Audience": "SlpModularCmsPortal", "ExpiryMinutes": 60, "RefreshTokenExpiryDays": 7, "CookieSameSite": "None" }, "Availability": { "CircuitBreakerSeconds": 30, "StatusCacheSeconds": 1 }, "MasterPolling": { "PollIntervalSeconds": 15, "FailOpenAfterMinutes": 2, "HttpTimeoutSeconds": 5 }, "MasterModule": { "IntegrityCheckIntervalMinutes": 60, "HttpTimeoutSeconds": 10, "MasterUrl": "https://localhost:7223" }, "Cors": { // 5175: this repo's admin frontend, reached via `pnpm dev:slpsoftware` (see // .env.slpsoftware.local / package.json) — NOT the same as 5173, which is Api's own // (Master) admin frontend dev port and would be the wrong origin to allow here. // 5173: the actual public SlpSoftware website (separate repo/workspace, // K:\Development\SlpSoftware\Projects\SlpSoftware), calling the anonymous // GET /api/v1/offerings endpoint from its own Vite dev server. Coincidentally the same // port number as Api's admin frontend above, but a different codebase/origin entirely — // both need to be allowed here since Api.SlpSoftware serves both consumers. "AllowedOrigins": [ "http://localhost:5175", "https://localhost:5175", "http://localhost:5173", "https://localhost:5173" ] }, "RateLimiting": { "Login": { "PermitLimit": 100, "WindowSeconds": 60 }, "Refresh": { "PermitLimit": 500, "WindowSeconds": 60 } } }