| import gradio as gr |
| from github_analyzer import analyze_repo |
| from readme_generator import generate_readme |
| from azure_ai import enhance_with_ai |
| from license_generator import generate_license |
|
|
| def generate(repo_url, username, license_type): |
| repo_info = analyze_repo(repo_url) |
| ai_summary = enhance_with_ai(repo_info) |
| selected_license = generate_license(license_type, username) |
| generate_readme(repo_info, ai_summary, license_type=selected_license) |
|
|
| with open("readme.md", "r", encoding="utf-8") as f: |
| readme_content = f.read() |
| with open("LICENSE", "r", encoding="utf-8") as f: |
| license_content = f.read() |
|
|
| return readme_content, license_content |
|
|
| iface = gr.Interface( |
| fn=generate, |
| inputs=[ |
| gr.Textbox(label="Repository URL"), |
| gr.Textbox(label="Your Name"), |
| gr.Dropdown(["MIT", "Apache-2.0", "GPL-3.0", "BSD-3-Clause"], label="License Type") |
| ], |
| outputs=[ |
| gr.Textbox(label="Generated README", lines=20), |
| gr.Textbox(label="Generated LICENSE", lines=20) |
| ], |
| title="Auto README & License Generator", |
| description="Enter a GitHub repo, username, and choose a license to auto-generate README and LICENSE files." |
| ) |
|
|
| if __name__ == "__main__": |
| iface.launch(debug=True,server_name="0.0.0.0",server_port=7860,pwa=True) |
|
|