Skip to content

Conversation

Hrithik-Gavankar
Copy link
Collaborator

@Hrithik-Gavankar Hrithik-Gavankar commented Sep 20, 2025

What's Changed

Split Architecture Implementation:

  • Restructured ngui-e2e into separate server/ and client/ directories
  • Moved FastAPI backend to server/main.py
  • Organized React frontend under client/ folder

Deployment Strategy Update:

  • Rewrote deployment plan for Lightrail (backend) + frontend platform alternatives
  • Merged executive summary into single comprehensive deployment document
  • Updated for models.corp LLaMA integration

Documentation Improvements:

  • Moved README to root ngui-e2e/ level covering both components
  • Updated setup instructions for split architecture
  • Fixed paths and model references (llama3.2:3b)

Error Handling & Robustness:

  • Added comprehensive error handling for dynamic UI components
  • Implemented React Error Boundary for graceful failure handling
  • Enhanced server-side validation for agent responses
  • Added client-side component validation with fallback UI
  • Improved error messages and debugging capabilities

Development Workflow Improvements:

  • Fixed React version compatibility issues (peerDependencies)
  • Updated Vite configuration for proper React externalization
  • Enhanced TypeScript compilation with proper type handling
  • Added environment variable management (.env.sample files)
  • Cleaned up unnecessary development files

Why This Change?

  • Better Deployment Flexibility: Enables independent server/client deployment
  • Clearer Project Structure: Logical separation of concerns
  • Production Ready: Prepared for Lightrail + Vercel/SSR deployment
  • Improved DX: Easier navigation and setup for contributors
  • Enhanced Reliability: Robust error handling prevents UI breakage
  • Future-Proof: React version compatibility for 18+ versions

Testing

  • Backend starts successfully from server/ directory
  • Frontend runs from client/ directory
  • Updated README instructions work end-to-end
  • Deployment plan reflects current architecture
  • Error handling works for invalid/missing components
  • TypeScript compilation passes without errors
  • React Error Boundary catches rendering failures
  • Server validates agent responses properly

📋 Breaking Changes

⚠️ Path Changes: Update any scripts/docs referencing old main.py location
⚠️ Import Changes: Updated React imports to use type-only imports where appropriate

@Hrithik-Gavankar Hrithik-Gavankar self-assigned this Sep 20, 2025
@Hrithik-Gavankar Hrithik-Gavankar marked this pull request as draft September 20, 2025 05:36
@Hrithik-Gavankar Hrithik-Gavankar changed the title feat: Split ngui-e2e architecture and update deployment strategy feat(NGUI-330): Split ngui-e2e architecture and update deployment strategy Sep 20, 2025
@Hrithik-Gavankar Hrithik-Gavankar marked this pull request as ready for review October 1, 2025 10:46
# This target sets the metadata for all the Python non-test files in this directory.
python_sources(
name="lib",
dependencies=[
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@lkrzyzanek can you check this please, why it was missing?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants