A Dash-based web application for visualizing and analyzing clinical data including patient volume, wait times, and care scores.
- Python 3.7 or higher
- pip (Python package installer)
Windows:
- Download Python from python.org
- Run the installer and check "Add Python to PATH"
- Verify installation:
python --version
macOS:
# Using Homebrew
brew install python3Linux (Ubuntu/Debian):
sudo apt update
sudo apt install python3 python3-pip python3-venvNavigate to your project directory and create a virtual environment:
# Create virtual environment
python -m venv venv
# Or on some systems:
python3 -m venv venvWindows:
venv\Scripts\activatemacOS/Linux:
source venv/bin/activateYou should see (venv) prefix in your terminal prompt.
pip install dash plotly pandas numpyIf you have a requirements.txt file:
pip install -r requirements.txtEnsure you have the required data file(s) that the app expects. Check the script for the data loading section and place your data files in the appropriate location.
python app.pyThe app will start and display output similar to:
Dash is running on http://127.0.0.1:10030/
* Serving Flask app 'app'
* Debug mode: on
You can access the dashboard using any of these methods:
Open your web browser and go to:
http://localhost:10030http://127.0.0.1:10030
If you want to access the app from other devices on the same network:
-
Find your local IP address:
Windows:
ipconfig
Look for "IPv4 Address" under your active network adapter (usually starts with 192.168.x.x or 10.x.x.x)
macOS/Linux:
ifconfig # or ip addr showLook for "inet" address (usually starts with 192.168.x.x or 10.x.x.x)
-
Modify the app to listen on all network interfaces:
In your
app.py, change the last line to:app.run_server(debug=True, host='0.0.0.0', port=10030)
-
Access from other devices on the same network:
http://YOUR_LOCAL_IP:10030Example:
http://192.168.1.100:10030 -
Firewall Configuration (if needed):
Windows:
- Open Windows Defender Firewall
- Click "Advanced settings"
- Add new Inbound Rule for port 10030
macOS:
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --add /path/to/python
Linux (Ubuntu):
sudo ufw allow 10030/tcp
Press Ctrl + C in the terminal where the app is running.
When you're done working:
deactivateIf port 10030 is already in use:
# Windows
netstat -ano | findstr :10030
# macOS/Linux
lsof -i :10030Change the port number in the app or kill the process using that port.
Make sure your virtual environment is activated and all packages are installed:
pip list # Check installed packages
pip install -r requirements.txt # Reinstall if needed- Verify
host='0.0.0.0'is set inapp.run_server() - Check firewall settings
- Ensure both devices are on the same network
- Verify the correct local IP address is being used
Check the data file path in your script and ensure the data file exists in the correct location.
project/
├── venv/ # Virtual environment (not committed to git)
├── app.py # Main application file
├── requirements.txt # Python dependencies
├── data/ # Data files (if applicable)
└── README.md # This file
- The app runs in debug mode by default, which provides helpful error messages and auto-reload on code changes
- For production deployment, set
debug=False - Always keep your virtual environment activated when working on the project
- Add
venv/to your.gitignorefile if using version control