Repository navigation
☂️ Help us Kotlin-ify React Native - Round 3 #50513
Copy link
Copy link
Closed
Labels
☂️ UmbrellaTo label issues that serve as coordination point and drivers for tasks in the react-native repoTo label issues that serve as coordination point and drivers for tasks in the react-native repoGood first issueInterested in collaborating? Take a stab at fixing one of these issues.Interested in collaborating? Take a stab at fixing one of these issues.Help Wanted
Issues ideal for external contributors.Issues ideal for external contributors.
Description
☂️ Help us Kotlin-ify React Native - Round 3
Hey all 👋
After the successful second round, we're back with another round of tasks to help us improve Kotlin support in React Native core. In this stage we are looking for help to migrate a few more files to Kotlin.
How to work
If you wish to grab one of the tasks, you should:
- Verify that the task is not claimed yet.
- Comment here that you claim a task.
- Start working on the task. Testing instructions are below.
- Send the PR for review. Ping @mateoguzmana, @cortinico or @mdvacca for a review.
- You can’t claim more than one task at a time.
- If you’re not completing the task within a week, we’ll release it for the next contributor.
Code formatting
Please use KtFmt to format Kotlin classes.
You can use the web UI to reformat directly from the browser.
Migrating files to Kotlin
Please act as follow:
- Fork and clone the repo
- Verify that RN-Tester, our reference app, runs with yarn && yarn android from the root folder
- Migrate the file to Kotlin
- Verify that RN-Tester runs again using the same command.
Other important things to take into account:
- Avoid using Hungarian notation for the variables when the file is migrated. E.g.:
mMyAwesomePropertyshould becomemyAwesomeProperty - You might have to run the project in old architecture as well to ensure nothing breaks there when building. You can easily switch in the RN-Tester by setting
newArchEnabled=falsein packages/rn-tester/android/app/gradle.properties - Tap around in a few screens after migrating (helps to ensure nothing is breaking at runtime)
List of files to migrate
- react/views/text/frescosupport/FrescoBasedReactTextInlineImageShadowNode.java assigned to @nitinshukla413 Migrate FrescoBasedReactTextInlineImageShadowNode.java to Kotlin #50693
- react/views/text/frescosupport/FrescoBasedReactTextInlineImageSpan.java assigned to @gouravkhunger refactor: FrescoBasedTextInlineImageSpan #50532
- react/modules/blob/FileReaderModule.java assigned to @devanshsaini11 Migrate FileReaderModule to kotlin #50562
- react/modules/blob/BlobProvider.java assigned to @JatinDream11 refactor: migrate BlobProvider.java to Kotlin #50756
- react/runtime/ReactLifecycleStateManager.java assigned to @rohitverma-d11 Kotlinify ReactLifecycleStateManager #50685
- react/views/textinput/ReactEditTextInputConnectionWrapper.java assigned to @Q1w1N refactor: ReactEditTextInputConnectionWrapper implemented in kotlin #50573
- react/uimanager/ReactClippingViewGroupHelper.java assigned to @Priyanka26012 Migrate ReactClippingViewGroupHelper.java to Kotlin #50679
- react/uimanager/ReactStylesDiffMap.java assigned to @poonamjain96 Migrated file ReactStylesDiffMap to kotlin #50616
- react/bridge/UiThreadUtil.java assigned to @riteshshukla04 Migrate UiThreadUtil to Kotlin #50536
- react/bridge/DynamicFromObject.java assigned to @yasir6jan refactor: migrate DynamicFromObject to Kotlin #50754
- react/bridge/DynamicFromArray.java assigned to @BogiKay refactor: migrate DynamicFromArray to Kotlin #50602
- react/bridge/DynamicFromMap.java assigned to @artus9033 refactor: migrate DynamicFromMap to Kotlin #50597
- react/bridge/JavaScriptModuleRegistry.java assigned to @gustavoabel
- react/bridge/JSBundleLoader.java assigned to @yogeshpaliyal refactor: Rewrite JSBundleLoader from Java to Kotlin #50911
- react/bridge/Inspector.java assigned to @Vin-Xi refactor: rewrite Inspector from Java to Kotlin #50947
- react/uimanager/ViewGroupManager.java assigned to @riteshshukla04 Migrate ViewGroupManager to kotlin #50895
- react/bridge/BaseJavaModule.java assigned to @l2hyunwoo [kotlinify] Kotlinify BaseJavaModule #51207
- react/LazyReactPackage.java assigned to @Xintre refactor: migrated file LazyReactPackage to Kotlin #51085
- react/bridge/JavaModuleWrapper.java assigned to @DrRefactor refactor: Rewrite JavaModuleWrapper from Java to Kotlin #50882
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
☂️ UmbrellaTo label issues that serve as coordination point and drivers for tasks in the react-native repoTo label issues that serve as coordination point and drivers for tasks in the react-native repoGood first issueInterested in collaborating? Take a stab at fixing one of these issues.Interested in collaborating? Take a stab at fixing one of these issues.Help Wanted
Issues ideal for external contributors.Issues ideal for external contributors.
Activity
59 remaining items
rEhan0771 commentedon May 5, 2025
Hi, is there any thing for me , let me know , i would like to contribute.
mwx27 commentedon May 6, 2025
Hi, I am also eager to contribute
migueldaipre commentedon May 8, 2025
Hey @mateoguzmana, You can pass on my task, I won't be able to do it. So sorry for not replying sooner!
SGamrekelashvili commentedon May 8, 2025
@mateoguzmana i will do it if its possible
mateoguzmana commentedon May 8, 2025
No problem at all, thanks for letting us know!
@l2hyunwoo, since you were first among the others who showed interest, I've re-assigned react/bridge/BaseJavaModule.java to you.
To everyone else — it's awesome to see so much interest! At the moment, we don’t have more files available for community contribution, but I’ll definitely try to bring this up and see if there is another initiative to get more folks involved somewhere in the future. :)
shabeerv commentedon May 13, 2025
Hi,
I can pick the migration for this file react/LazyReactPackage.java as I can see it has no activity for the past week
Xintre commentedon May 13, 2025
Hi @mateoguzmana, I have applied changes from cr: #51085
gustavoabel commentedon May 14, 2025
Hi @mateoguzmana JavaScriptModuleRegistry has already been migrated by @fabriziocucci , I didn't understand why he migrated without even having the file signed for him, but it's already done.
#51164
fabriziocucci commentedon May 14, 2025
Hey @gustavoabel, apologies for taking over the conversion of that particular file, it was definitely unintentional, I didn't notice it was assigned already! 🙏
ai-dev-official commentedon May 24, 2025
Is this issue open? If yes, can I pick this up? Are there any specific guidelines or community I should follow?
Josetic224 commentedon May 29, 2025
I would love to work on this Issue
refactor: migrated file LazyReactPackage to Kotlin (#51085)
mateoguzmana commentedon Jun 7, 2025
Thanks everyone for the involvement here! 18 more files were migrated to Kotlin thanks to the community's help.
I'm closing this issue as we are done with the umbrella for now.