from dash import dcc def get_intro_markdown(): return dcc.Markdown(""" ### ⚡ Function Call Visualizer for Python Upload `.py` files and instantly see how functions connect—**visually**. Ideal for refactoring, onboarding, debugging, or exploring unfamiliar code. --- #### 🔍 Features - Upload **one or more** Python files - Pick a top-level function to trace all its calls - Auto-inferred: - Function arguments and return types (e.g. `df: pd.DataFrame`) - Session state usage (e.g. Streamlit `session_state`) - Interactive graph with: - Call order on edges (`1`, `2`, `3`) - Thicker lines for repeated calls - Directional arrows and clear layout by call depth - Toggleable summary tables --- #### 🚀 How to Use 1. Switch to the **Graph Explorer** tab 2. Upload `.py` file(s) 3. Select an entry-point function 4. Explore how your code is structured—at a glance --- ### 👋 About the Creator This open-source tool is built by **Tomas Larsson**, a data scientist and creator of [**my.moneytoolbox.com**](https://mymoneytoolbox.com), where he shares tools and insights for: - Tax-efficient investing - Retirement modeling - Personal finance analytics - Code-first decision tools for DIY investors and engineers --- ### 🤝 Connect Love tools like this? Connect on [**LinkedIn**](https://www.linkedin.com/in/tomaslarsson/) — Love to discuss ideas for new tools. --- ### 🧠 Tags `#python` `#static-analysis` `#ast` `#code-visualization` `#developer-tools` `#streamlit` `#dash` `#visualization` """,link_target="_blank")