Project Structure
The KikiWriting backend follows a standard ASP.NET Core MVC structure with additional organization for services and components.
Root Directory Structure
.env // Environment-specific variables (created from .env.example)
appsettings.json // Application configuration settings
Kiki.csproj // Project file with dependencies and build settings
Program.cs // Application entry point and configuration
Key Components
Controllers
Controllers handle HTTP requests and return responses. The main controllers include:
- HomeController: Handles the main application pages
- GraphExtractController: Manages graph extraction functionality
Services
Services contain the core business logic of the application:
- GraphExtractService: Coordinates the graph extraction process
- GoogleTokenService: Handles authentication with Google services
- ResponseAnalyzerService: Analyzes and processes extraction results
ViewComponents
- PagesNavigationViewComponent: Dynamically generates navigation between application pages
Configuration
- .env: Contains environment-specific configuration (Supabase credentials)
- Program.cs: Contains application startup configuration and service registration