YFDashboard / README.md
Jon Solow
Update to streamlit 1.31
73860b5

A newer version of the Streamlit SDK is available: 1.36.0

Upgrade
metadata
title: YFDash
emoji: πŸƒ
colorFrom: indigo
colorTo: blue
sdk: streamlit
sdk_version: 1.31.1
app_file: src/Home.py
pinned: false

Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference

YFDashboard Streamlit Application

Template Repo for Streamlit Application - https://github.com/JonSolow/streamlit-template

Here are some of the features of the template:

  • VSCode .devcontainer for local development: Documentation
    • docker-compose.yml
    • Dockerfile
  • Linting Configuration [TO-DO] (allows for clean code and quicker detection of possible bugs as one of the first steps in Shift-left testing)
  • Unit Tests

Start Here to Develop

  1. Prerequisites
  1. Confirm Docker is installed by executing command docker -v
  2. Open VSCode to a New Window and open this repository's directory
  3. You may see a notification that the Folder containers a Dev Container configuration file. If so, click on "Reopen in Container"
  • If you do not see this notification, press F1 key and begin typing the following until you can see the option "Dev Containers: Rebuild and reopen in Container".
  • This action will reopen the VSCode within a Docker container suitable to develop and locally run the application.
  1. The dev container will start up the Streamlit application.
  • To access the application, navigate to http://localhost:8501
    • The container forwards the port 8501 where the Streamlit application is hosted
  • Any changes made to the code will be reflected in the Streamlit application when you refresh.
  1. Now inside the VSCode dev container, to run tests, execute ./tests/run_tests.sh
  • This script has an optional argument -f for "fix mode" which allows for configuration of black and ruff to automatically apply fixes.
  1. As functions are added to the application, unit tests can/should be added in tests/unit, with existing support utilizing the pytest library.