Open-TutorAi/open-tutor-ai-CE

Refactor Idea: Extract Prompt Submission Logic from ChatPage.svelte

Open

#177 opened on May 17, 2025

View on GitHub
 (0 comments) (0 reactions) (0 assignees)JavaScript (179 forks)auto 404
enhancementfrontendgood first issue

Repository metrics

Stars
 (84 stars)
PR merge metrics
 (PR metrics pending)

Description

The current ChatPage.svelte component has become very large and monolithic — exceeding 3000 lines.

It currently combines UI rendering, state management, socket/event handling, prompt submission, and API calls all in one file. This tightly coupled design makes the component difficult to maintain, test, and improve over time.


Proposed Solution

We’d like to start modularizing ChatPage.svelte by gradually separating out distinct logic into smaller, well-defined files. This issue invites contributors to explore and suggest how one specific part of the component — such as prompt submission logic — could be moved into its own module.

Your contribution can help improve the structure of the project while also making it easier for others to collaborate.


Alternatives Considered

While keeping everything inside one file is possible, it leads to long-term maintenance issues and creates a barrier for new contributors. Modularization improves readability, scalability, and collaboration.


Contributor Notes

This is a great opportunity for first-time contributors or anyone looking to help improve code quality. You’re welcome to explore the component, propose ideas for modularization, or submit a pull request that extracts a focused piece of logic.

Feel free to ask questions or request feedback — we’re here to support you!

Contributor guide