# Task 12: Create Fengling.Console Project Structure ## Task Description **Files:** - Create: `src/Fengling.Console/Fengling.Console.csproj` - Create: `src/Fengling.Console/Program.cs` - Create: `src/Fengling.Console/appsettings.json` ## Implementation Steps ### Step 1: Create project Run: ```bash cd /Users/movingsam/Fengling.Refactory.Buiding/src dotnet new webapi -n Fengling.Console -o Fengling.Console ``` ### Step 2: Update project file with dependencies Edit: `src/Fengling.Console/Fengling.Console.csproj` ```xml net10.0 enable enable all runtime; build; native; contentfiles; analyzers; buildtransitive ``` ### Step 3: Create appsettings.json Edit: `src/Fengling.Console/appsettings.json` ```json { "ConnectionStrings": { "DefaultConnection": "Host=192.168.100.10;Port=5432;Database=fengling_gateway;Username=movingsam;Password=sl52788542" }, "AuthService": { "BaseUrl": "http://auth.fengling.local", "ClientId": "fengling-console", "ClientSecret": "console-secret-change-in-production" }, "Logging": { "LogLevel": { "Default": "Information", "Microsoft.AspNetCore": "Warning" } }, "AllowedHosts": "*" } ``` ### Step 4: Commit ```bash git add src/Fengling.Console/ git commit -m "feat(console): create console backend project structure" ``` ## Context This task creates the Fengling.Console backend project. This will be a unified management API that includes gateway management, OAuth client management, and user management proxy. **Tech Stack**: .NET 10.0, EF Core 10.0, PostgreSQL, Serilog, OpenTelemetry ## Verification - [ ] Project created with webapi template - [ ] Target framework set to net10.0 - [ ] All packages added - [ ] appsettings.json configured - [ ] Build succeeds - [ ] Committed to git ## Notes - Shares database with YarpGateway - Communicates with AuthService via OAuth2 - Will contain migrated gateway management APIs