Skip to content

Latest commit

 

History

History
1 lines (1 loc) · 4.48 KB

test.md

File metadata and controls

1 lines (1 loc) · 4.48 KB

Product Requirements Document\n\n## Overview\nThe GenAI Chat Bot Solution serves as a Reverse Engineering Project Planning Assistant. It uses Semantic Kernel Chat Completion Agents to guide users through project planning by asking targeted questions and generating structured documentation based on user responses.\n\n## Target Users\n- Program Managers: To assist in planning and managing technical projects.\n- Software Developers: To guide technical planning and provide relevant documentation support.\n\n## Core Problem\nProgram managers and developers often face challenges in reverse-engineering requirements and planning projects effectively. This solution streamlines the process by providing structured guidance and generating comprehensive documentation.\n\n## Features\n\n### Frontend\n- Input Area:\n - Located at the bottom of the screen:\n - Text field for user queries.\n - Submit button on the right.\n - Clear button to reset input.\n- Chat History Display:\n - Scrollable area showing:\n - User queries aligned to the right.\n - API responses aligned to the left.\n- Hidden Sidebar:\n - Slides out on mouse hover over the left area.\n - Displays chat history for the session (grouped by day).\n - Includes an icon to start a new chat session.\n- Settings Dialog:\n - Accessible via a settings icon at the bottom of the sidebar.\n - Displays configuration options when clicked.\n\n### Backend\n- API Architecture:\n - Built with ASP.NET traditional controllers.\n - Utilizes Semantic Kernel Chat Completion Agents for GenAI capabilities.\n- Prompt Chain:\n - Guides users through structured questions (like the assistant's process).\n - Generates structured documentation, including PRD, frontend, backend, API, database schema, etc.\n\n## Technical Requirements\n\n### Frontend\n- Framework: Next.js version 18 with TypeScript.\n- UI Library: Material-UI or a similar component library.\n\n### Backend\n- Framework: ASP.NET Core traditional controllers.\n- Features:\n - Semantic Kernel integration for Chat Completions Agents.\n - REST API endpoints to handle chat and documentation requests.\n\n### Scalability\n- Designed for multiple concurrent users.\n- Caching for chat histories to optimize performance.\n\n## Next Steps\n1. Define backend architecture in detail.\n2. Outline the database schema for chat history and user settings.\n3. Determine state management strategy for frontend.\n4. Specify DevOps setup for deployment.\n\n---\n\n# Frontend Documentation\n\n## Framework\nNext.js version 18 with TypeScript\n\n## UI Features\n- Input Area:\n - Located at the bottom of the screen with:\n - A text field for user queries.\n - A submit button on the right.\n - A clear button to reset input.\n- Chat History Display:\n - Scrollable area showing:\n - User queries aligned to the right.\n - API responses aligned to the left.\n- Hidden Sidebar:\n - Slides out on mouse hover over the left area.\n - Displays chat history for the session (grouped by day).\n - Includes an icon to start a new chat session.\n- Settings Dialog:\n - Accessible via a settings icon at the bottom of the sidebar.\n - Displays configuration options when clicked.\n\n## UI Library\nMaterial-UI or a similar component library.\n\n## Additional Notes\n- Use server-side rendering (SSR) for initial page load performance.\n- Ensure responsive design to support desktop and mobile layouts.\n\n---\n\n# Backend Documentation\n\n## Framework\nASP.NET Core using traditional controllers\n\n## Features\n- API Endpoints:\n - Chat Completion Endpoint:\n - Receives user input.\n - Processes the input using Semantic Kernel Chat Completion Agents.\n - Returns structured responses to the frontend.\n - Documentation Generation Endpoint:\n - Guides users through structured prompts.\n - Generates documentation files (e.g., PRD, frontend, backend).\n\n- Prompt Chain:\n - Designed to ask targeted questions.\n - Stores user responses in a session-based format.\n\n- Session Management:\n - Tracks user sessions to provide consistent conversations.\n - Groups chat histories by day.\n\n## Semantic Kernel Integration\n- Chat Completions Agents:\n - Implemented to handle natural language understanding and response generation.\n - Optimized for project planning and documentation tasks.\n\n## Additional Notes\n- Use dependency injection to manage services.\n- Implement logging and exception handling for API stability.