Skip to content

Frontend Modernization: Introduce Vite-based bundling workflow (non-breaking) #21

@sairamsharan

Description

@sairamsharan

Hi maintainers

The current MUIO frontend (WebAPP/index.html) loads large third-party libraries directly via script tags without a modern bundling or development workflow. This can impact page load performance and makes it harder for frontend contributors to work with modern JavaScript tooling.

I would like to propose introducing an optional Vite-based build setup to modernize the frontend development experience while keeping the existing behavior fully intact.

Scope (non-breaking)

This proposal is incremental and will NOT rewrite existing frontend logic. The goal is to add a lightweight wrapper that:

  • Preserves the current WebAPP structure
  • Keeps direct script loading functional
  • Adds a modern dev/build workflow for future improvements

Proposed Changes

Configuration

  • Add WebAPP/package.json with Vite as a dev dependency
  • Add WebAPP/vite.config.js configured to proxy API requests to the Flask/Waitress backend (port 5002)

Frontend Entry

  • Introduce a minimal main.js entry point managed by Vite
  • Update WebAPP/index.html to load the bundled entry via <script type="module">

Documentation

  • Update README with frontend developer instructions:
    • npm install
    • npm run dev
    • npm run build

Expected Benefits

  • Faster frontend development workflow
  • Foundation for future visualization and UI improvements
  • Better onboarding for modern frontend contributors
  • No disruption to existing users or deployment flow

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions