Skip to content

refactor : Refactor open issues logic into service module and integrate UI

Pavani Pothuganti requested to merge open-issues-final into dev

What does this MR do and why?

This MR refactors the Open Issues functionality by separating the business logic into a dedicated service module (profile_service.py) and keeping UI-related code inside profile_ui.py.

Why this change?

  • Improves code structure and maintainability
  • Follows clean architecture principles
  • Makes the logic reusable, testable, and easy to extend
  • Keeps app.py clean by delegating logic to service functions

References

  • Related feature: Open Issues functionality
  • Refactor request as suggested by mentor for modular and clean code structure

Screenshots or screen recordings

Before After
Open issues logic was inside main UI code Logic moved to profile_service.py and UI calls it from profile_ui.py

(Optional: You can add actual screenshots if UI changed visibly.)


How to set up and validate locally

  1. Clone the repository:

    git clone <repo_url>
    cd gitlab-compliance-checker
  2. Create virtual environment and install dependencies:

    python3 -m venv venv
    source venv/bin/activate
    pip install -r requirements.txt
  3. Run the Streamlit application:

    streamlit run app.py
  4. Open browser and navigate to:

    http://localhost:8501
  5. Enter a GitLab username and verify:

    • Open issues count
    • Issues summary
    • Detailed issues list

MR acceptance checklist

  • Code follows clean architecture principles
  • Business logic separated into service module
  • No breaking changes
  • UI functionality working correctly
  • Code is readable and maintainable

Summary (One-liner for your sir)

Refactored Open Issues functionality by moving business logic into a separate service module and integrating it cleanly with the UI for better maintainability and modular design.


Edited by Pavani Pothuganti

Merge request reports

Loading