https://github.com/leo-capvano/describe-a-python-project
Describe each file of a python project by asking a Generative AI model to generate a natural language explanation of each file
https://github.com/leo-capvano/describe-a-python-project
generative-ai generative-ai-tools langchain langchain-openai langchain-python prompt-template python streamlit
Last synced: about 2 months ago
JSON representation
Describe each file of a python project by asking a Generative AI model to generate a natural language explanation of each file
- Host: GitHub
- URL: https://github.com/leo-capvano/describe-a-python-project
- Owner: leo-capvano
- License: mit
- Created: 2024-05-04T11:20:43.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-05-05T18:25:16.000Z (about 2 years ago)
- Last Synced: 2025-07-21T06:50:25.731Z (11 months ago)
- Topics: generative-ai, generative-ai-tools, langchain, langchain-openai, langchain-python, prompt-template, python, streamlit
- Language: Python
- Homepage: https://github.com/leo-capvano/describe-a-python-project
- Size: 249 KB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# describe-a-python-project
Describe each file of a python project by asking a Generative AI model to generate a natural language explanation
## Need
- an OpenAI API Key and the relative environment variable OPENAI_API_KEY
## How
> pip install -r requirements.txt
> streamlit run gui.py
## Guide
- copy and paste the folder you want to analyze recursively inside the text box:

### An Alternative GUI
You can choose to run a python GUI that allows you to select a local folder.
Choose a local folder:

Descriptions generated for each file:

### Notes
The procedure does not recursively visit all the folders; you can exclude teh files and the folders you don't want to analyze by
adding those names to the constants EXCLUDED_FOLDER_NAMES, EXCLUDED_FILENAMES