Spaces:
Runtime error
Runtime error
A newer version of the Streamlit SDK is available:
1.40.2
metadata
title: Py Code Analyzer
emoji: π
colorFrom: red
colorTo: yellow
sdk: streamlit
sdk_version: 1.9.0
app_file: app.py
pinned: false
license: mit
Check out the configuration reference at https://huggingface.co/docs/hub/spaces#reference
Python Code Analyzer
Motivation
The main purpose of the app is to allow Python developers navigate Python code base much easier by showing dependencies among files included in the directory with better visualization.
Setup
pipenv install -r requirements.txt --python=3.8
cp .env.example .env
: fill in your GitHub username and personal access token if you need to increase GitHub API requests rate limitingmake run
Used technologies
networkx
: network analysispyvis
: network visualizationaiohttp
: asynchronous HTTP clientpybase64
: faster base64 encoding/decodingstreamlit
: web app
TODOs
- Build a prototype
- Finish
generate_imports_graph
implementation - Fetch python files given public GitHub repo url(owner, repo, path, ref)
- Use
ast
to parse imports among given python files - Generate a basic
networkx
graph given python imports - Visualize a basic
networkx
graph usingpyvis
- Finish
- Build a
streamlit
app - Performance optimization
-
requests
toaiohttp
- change fetching GitHub repository content api from preventing querying multiple times
- ...
-
- Network analysis
- Enhance network visualization UI