Spaces:
Sleeping
Sleeping
| title: Github Sync Space | |
| emoji: 🔥 | |
| colorFrom: purple | |
| colorTo: blue | |
| sdk: gradio | |
| sdk_version: 5.47.0 | |
| app_file: app.py | |
| pinned: false | |
| # Data-intensive-systems | |
| Group project to develop in a machine learning setting. The developed [gradio](https://www.gradio.app) app for movement assessment is automatically deployed to the [synchronized huggingface space](https://huggingface.co/spaces/Bachstelze/github_sync). | |
| ## Members | |
| 1. Reem | |
| 2. Rasa | |
| 3. Amol | |
| 4. Kalle | |
| ## Usage | |
| Installation of [gardio](https://www.gradio.app/docs/gradio/interface) to build machine learning apps in Python: | |
| ```pip install gradio``` | |
| Run the app with ```python3 app.py``` | |
| ### Week 1 - Kalle team lead, rest developers | |
| - Slack as a medium of communications | |
| - GitHub for version control | |
| - This GitHub issue tracker as a simple project management tool | |
| - Synchronization of this GitHub repo with the [hugginface space](https://huggingface.co/spaces/Bachstelze/github_sync) | |
| - Local development, switch to [cscloud](https://cscloud.lnu.se/project/) if needed. | |
| - Meetings as and when needed | |
| ### Week 2 - first linear regression model development and deployment | |
| - Testing pickled models with test/test_model.py | |
| ### Week 4 - refactor codebase | |
| - add gitattributes for LSF usage to handle pickle files. This is possible for more file types, e.g. ```git lfs track "*.pdf" + git add .gitattributes``` | |
| - Update numpy version requirement, older versions can't load pickle files from new versions. | |
| - The requirement for scikit-learn is updated to 1.8.0 to prevent InconsistentVersionWarning. | |
| - Refactor and lint app.py | |
| ### Outlook | |
| Input the raw video into a [reasoning vision model](https://huggingface.co/blog/nvidia/nvidia-cosmos-reason-2-brings-advanced-reasoning) and develop the workflow with [daggr](https://huggingface.co/blog/daggr) for gradio. | |
| ### Development & Contribution Guidelines | |
| Currently, the team commits directly to the `main` branch. | |
| Instead of formal pull request restrictions, we follow shared development and quality guidelines to ensure stability, especially for the HuggingFace deployment and ML workflows. | |
| These rules will also prepare the project for a future PR-based workflow. | |
| --- | |
| #### General development rules | |
| - Follow the existing project structure and naming conventions | |
| - Keep notebooks and scripts readable and well-documented | |
| - Avoid committing temporary, experimental, or unused code | |
| - Document design decisions when introducing new components | |
| --- | |
| #### HuggingFace deployment safety | |
| - Do NOT commit `.pdf` or `.xlsx` files (they break HuggingFace sync) | |
| - Avoid committing large model artifacts unless required | |
| - Ensure changes do not break the deployment app (`app.py`) | |
| --- | |
| #### Code quality expectations | |
| Before pushing to `main`: | |
| - Run local linting checks when possible | |
| - Ensure notebooks execute without errors | |
| - Remove unused imports and variables | |
| - Keep code modular and readable | |
| CI/CD will enforce: | |
| - Linting checks for `.py` and `.ipynb` | |
| - Automated tests | |
| - Deployment only after quality checks pass | |
| --- | |
| #### Design and coding principles | |
| - Write clear, modular Python code | |
| - Separate experimentation (notebooks) from production logic | |
| - Reusable functions should live in `.py` modules | |
| - Use consistent naming and documentation practices | |
| --- | |
| #### Team review practice | |
| Even without PRs, team members: | |
| - Communicate major changes in Slack/GitHub Issues | |
| - Request peer feedback before large commits | |
| - Document model changes and performance improvements | |
| - Flag anything that may affect deployment | |
| --- | |
| #### Future transition | |
| As the project grows, we may transition to: | |
| - Feature branches | |
| - Pull request reviews | |
| - Mandatory CI approval before merge | |
| These guidelines are the first step toward a structured DevOps workflow. | |