-
-
Notifications
You must be signed in to change notification settings - Fork 12
Project Migration: From Kotlin JS to TypeScript & Svelte #584
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
7e4c014
to
318849c
Compare
Integrate BrowserManager into AppContext
Add actions
Implement workspace object dao
Improve UI state manager
area == 1 is empty for selection
Minor bugs fixed
Implement Export shapes modal
Delegate Save as action click to action manager
Fix actions that cause history update and line connector removal
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Project Migration: From Kotlin JS to TypeScript & Svelte
Background and Current Challenges
While Kotlin JS is excellent for development the business logic and non UI functions, the UI has become a significant bottleneck as I aim to support more tools.
The current shape format tool suffers from two major issues:
Current UI Approach
Although MonoSketch has already adopted Compose HTML for UI development, I still feel that writing UI in code isn't the ideal approach. Perhaps it's just my preference for traditional methods, but in my opinion, XML remains the best language for designing UIs.
Migration Decision
After carefully weighing several factors:
I decided to migrate the project to TypeScript and use Svelte for the UI.
Integration Challenges
Initially, I attempted to integrate Kotlin JS and Svelte within the same project. However, this approach proved problematic for two key reasons:
Current Status & Request for Feedback
I want to acknowledge that my knowledge of TypeScript and the FrontEnd ecosystem is limited. I've done my best, but there may be areas that could be improved or optimized.
How You Can Help
port-to-js
branch with fixes or enhancements