A full-stack Software Engineering coursework project that automates requirements gathering using AI. FastAPI backend exposes a /generate-requirements endpoint; React/Vite frontend lets users input a system description and instantly generates SRS-ready functional requirements.
Built FastAPI backend (main.py) with a POST /generate-requirements endpoint accepting free-text system descriptions via Pydantic BaseModel validation.
Designed React/Vite frontend (App.jsx) that sends user input to the FastAPI backend and renders AI-generated SRS requirements in real-time.
Configured CORS middleware to enable local cross-origin communication between Vite dev server (port 5173) and FastAPI backend.
Structured response model (RequirementOutput) returning a typed List[str] of formal requirements following SRS conventions.
Applied Software Engineering principles: separation of concerns, typed API contracts, stateless REST design, and iterative requirement generation.
Built as coursework for Software Engineering subject — demonstrates understanding of full-stack architecture, API design, and AI-assisted SRS generation.
Built for Software Engineering coursework at Lawrence Technological University. The goal was to apply SE principles — requirements engineering, API design, separation of concerns — in a working system.
Backend (main.py — FastAPI)
RequirementInput: Pydantic model with single text: str fieldRequirementOutput: Pydantic model with requirements: List[str]/generate-requirements: accepts system description, returns SRS requirementshttp://localhost:5173 (Vite default port)/ health check endpointFrontend (App.jsx — React + Vite)
useState hook