Modernizing Jaeger-UI: Upgrading Core Routing and State Management
Please read jaegertracing/jaeger#7833 for any application-related questions.
LFX link: https://mentorship.lfx.linuxfoundation.org/project/d13df7c9-06d3-4589-bef8-c13e5c79c2a2
Description:
Jaeger is the industry-standard open-source distributed tracing platform used by companies like Uber and Shopify to monitor complex microservices. To ensure long-term maintainability and performance, the Jaeger-UI is undergoing a major modernization effort to move away from legacy patterns and deprecated libraries.
This project focuses on the final two major "foundational" upgrades for the UI:
- Routing Renovation: Upgrading from legacy react-router patterns to React Router v7. This involves migrating from a component-based routing approach to the modern data-driven router architecture.
- State Management Cleanup: Replacing the deprecated history package and older Redux integration patterns with modern standards like redux-first-history.
As a mentee, you will be the primary architect for these upgrades, diving deep into the internals of a high-traffic React application. You will work on refactoring core navigation logic, improving how the UI handles deep-linking into complex trace data, and ensuring the application remains lightning-fast for developers debugging their systems.
Expected Outcomes
- A fully migrated Jaeger-UI running on React Router v7.
- Successful removal of the deprecated history v4/v5 dependency in favor of modern state-navigation integration.
- Refactored functional components that utilize modern hooks (like useNavigate and useParams) instead of legacy HOCs (Higher-Order Components).
- A robust test suite ensuring no regressions in trace visualization or search functionality during the migration.
Recommended Skills
- Javascript/TypeScript & React: Deep familiarity with hooks and component lifecycles.
- State Management: Experience with Redux or similar libraries.
- Routing Knowledge: Understanding of SPAs (Single Page Applications) and browser history APIs.
- Testing: Experience with Jest/Enzyme or React Testing Library is a plus.
Mentor(s):
Upstream Issues:
Modernizing Jaeger-UI: Upgrading Core Routing and State Management
Please read jaegertracing/jaeger#7833 for any application-related questions.
LFX link: https://mentorship.lfx.linuxfoundation.org/project/d13df7c9-06d3-4589-bef8-c13e5c79c2a2
Description:
Jaeger is the industry-standard open-source distributed tracing platform used by companies like Uber and Shopify to monitor complex microservices. To ensure long-term maintainability and performance, the Jaeger-UI is undergoing a major modernization effort to move away from legacy patterns and deprecated libraries.
This project focuses on the final two major "foundational" upgrades for the UI:
As a mentee, you will be the primary architect for these upgrades, diving deep into the internals of a high-traffic React application. You will work on refactoring core navigation logic, improving how the UI handles deep-linking into complex trace data, and ensuring the application remains lightning-fast for developers debugging their systems.
Expected Outcomes
Recommended Skills
Mentor(s):
Upstream Issues: