Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
0a58672
Changing requirements.txt for backend workflow
aayushimasurekar Nov 6, 2025
5e23c76
Merge pull request #53 from tiva710/aayushi_feature
AnushaU1111 Nov 6, 2025
cc45c54
Changing requirements.txt for backend workflow
aayushimasurekar Nov 6, 2025
c1490f5
Merge pull request #54 from tiva710/aayushi_feature
AnushaU1111 Nov 6, 2025
349f064
Changing requirements.txt for backend workflow
aayushimasurekar Nov 6, 2025
af55338
Merge pull request #55 from tiva710/aayushi_feature
AnushaU1111 Nov 6, 2025
17ae48b
Changing routes_conversation.py to handle OpenAI API key
aayushimasurekar Nov 6, 2025
b6ff39d
Merge pull request #56 from tiva710/aayushi_feature
AnushaU1111 Nov 6, 2025
c12aba9
Adding env variables to test
aayushimasurekar Nov 6, 2025
a14a628
Merge pull request #57 from tiva710/aayushi_feature
AnushaU1111 Nov 6, 2025
157baed
Adding secret env variables
aayushimasurekar Nov 6, 2025
8cf6a2d
Merge pull request #58 from tiva710/aayushi_feature
AnushaU1111 Nov 6, 2025
4b3b13a
Adding dependencies
aayushimasurekar Nov 6, 2025
c43e3a2
Merge pull request #59 from tiva710/aayushi_feature
AnushaU1111 Nov 6, 2025
ca38bd9
Merge pull request #60 from tiva710/dev
AnushaU1111 Nov 6, 2025
b5fdc0d
Update README.md
tiva710 Nov 6, 2025
87acb79
Update CITATION.md
tiva710 Nov 6, 2025
f478f3e
Update DEPENDENCIES.md
tiva710 Nov 6, 2025
00a0a83
Updated milestones in Readme documentation
AnushaU1111 Nov 6, 2025
e3828ae
Update README.md
AnushaU1111 Nov 6, 2025
8060a06
Update README.md
AnushaU1111 Nov 6, 2025
51658fc
Update README.md
AnushaU1111 Nov 6, 2025
a446538
Update README.md
AnushaU1111 Nov 6, 2025
538ee61
Update AboutView.jsx
AnushaU1111 Nov 6, 2025
8968676
Update README.md
AnushaU1111 Nov 6, 2025
8726378
Update README.md
AnushaU1111 Nov 6, 2025
9423c82
Updated frontend
ruju4a Nov 6, 2025
bd2ea4e
Updated frontend
ruju4a Nov 6, 2025
f3f975e
Update API.md
AnushaU1111 Nov 6, 2025
9414e77
Changing install.md
aayushimasurekar Nov 6, 2025
5c0bf15
Create openapi.yaml
AnushaU1111 Nov 6, 2025
61ed9b3
Merge branch 'main' into aayushi_feature
aayushimasurekar Nov 6, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 8 additions & 1 deletion .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,10 +38,17 @@ jobs:
python -m pip install --upgrade pip setuptools wheel
pip install -r requirements.txt
pip install pytest pytest-cov
pip install python-multipart
pip install deepmultilingualpunctuation

# 5️⃣ Run tests with coverage
- name: Run tests with coverage
working-directory: backend
env:
NEO4J_URI: ${{ secrets.NEO4J_URI }}
NEO4J_USER: ${{ secrets.NEO4J_USER }}
NEO4J_PASS: ${{ secrets.NEO4J_PASS }}
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
run: |
pytest --cov=. --cov-report xml:coverage.xml --cov-report html

Expand All @@ -51,4 +58,4 @@ jobs:
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: backend/coverage.xml
fail_ci_if_error: true
fail_ci_if_error: true
44 changes: 43 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,44 @@ For detailed use cases, see [USE_CASES.md](docs/USE_CASES.md)
---

## Road Map
Milestones


### Completed Milestones (October)
- **User Auth + Frontend:** JWT login/signup, React UI, role scaffolding, responsive dashboard
- **Audio Upload + Transcription:** FastAPI upload, OpenAI Whisper speech-to-text, auto storage
- **Transcript Vectorisation + AI Chat:** FAISS embeddings, semantic search, LLM drafts user requirements
- **NER-driven Graph Build:** NER on transcripts extracts entities to create nodes/edges
- **Graph Visualisation:** Neo4j + React Flow (nodes: Req/Feat/Test/Stakeholder; edges: depends/validates/owns)

### Future Milestones (November)
- **Save/Load Conversation Sessions**
- Session versioning
- Resume interrupted conversations
- Session comparison
- Export conversation history

- **Graph Comparison**
- Compare two graph versions
- Highlight differences
- Merge graphs
- Track evolution over time

- **Custom Graph Views & Perspectives**
- Save personalized graph layouts
- Stakeholder-specific views
- Dependency-focused views
- Feature cluster views
- Timeline view

- **Software Design Document Generation**
- Automatically generate architecture diagrams from graph structure
- Create component specifications from requirement nodes
- Generate interface designs from relationships
- Produce design rationale from conversation context
- Export design docs in standard formats (Markdown/PDF)




---

Expand Down Expand Up @@ -53,6 +90,10 @@ npm run dev
## ReqTrace Demo
Watch a quick video of ReqTrace in action!


[![Watch the Demo on Google Drive](https://img.shields.io/badge/Watch%20REQTRACE%20Demo-Click%20Here-blue?style=for-the-badge&logo=google-drive)](https://drive.google.com/file/d/1XiaWd48iLaMvRkev5WwzB4xIv7sPceyf/view?usp=drive_link)


---

## Documentation
Expand All @@ -65,6 +106,7 @@ License:
[![License](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE)

Doi:
[![DOI](https://img.shields.io/badge/DOI-10.5281/zenodo.17544380-blue.svg)](https://doi.org/10.5281/zenodo.17544380)

### Tests & Code Quality
[![Backend CI](https://github.com/tiva710/SE_Project_2/actions/workflows/main.yml/badge.svg)](https://github.com/tiva710/SE_Project_2/actions/workflows/main.yml)
Expand Down
10 changes: 8 additions & 2 deletions backend/app/api/v1/routes_conversation.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,14 @@
load_dotenv(dotenv_path=dotenv_path)

print(f"✅ Loaded .env from: {os.path.abspath(dotenv_path)}")
print(f"✅ OPENAI_API_KEY starts with: {os.getenv('OPENAI_API_KEY')[:10]}")

# Replace line 19 in app/api/v1/routes_conversation.py with:

api_key = os.getenv('OPENAI_API_KEY')
if api_key:
print(f"✅ OPENAI_API_KEY starts with: {api_key[:10]}")
else:
print("⚠️ OPENAI_API_KEY is not set")

# ✅ Initialize OpenAI client using loaded API key
client = OpenAI(api_key=os.getenv("OPENAI_API_KEY"))

Expand Down
Loading