Repository navigation
ProleTRact_v1.0.1
ProleTRact React-Based Frontend
Overview
ProleTRact v1.0.1: transitions from a Streamlit-based interface to a modern React application. This change addresses scalability limitations and provides a foundation for future development while maintaining all existing functionality.
Technical Changes
Frontend Architecture
- Complete migration from Streamlit to React 18 with TypeScript
- Client-side rendering for improved performance and responsiveness
- Component-based architecture for better code organization and maintainability
The migration from Streamlit to React was driven by several technical and practical considerations:
Performance
React runs in the browser and does not require server round-trips for user actions. This makes the interface faster. Users will notice this when viewing TR regions, filtering data, or doing multiple tasks. The single-page design reduces delays and improves responsiveness.
Flexibility and Customization
React gives full control over how components look and work. This allows building custom visualizations for tandem repeat analysis. Streamlit has limited components.
Scalability
The component-based design makes the code easier to maintain. Adding new features is simpler.
Backward Compatibility
While the frontend has been completely rebuilt, backward compatibility with TandemTwister has been maintained. The main command-line interface remains unchanged.