j2k-vscodeA VS Code extension which provides one-click, review-before-you-commit Java to Kotlin migration inside VS Code. The extension utilises LLMs to provide idiomatic conversion suggestions, helping Java developers migrate to Kotlin. Demohttps://github.com/user-attachments/assets/d9207f77-b4ca-4168-a418-92454a4d4a51 In the demo, a new project is opened, Kotlin is configured automatically, and converting a singular file/multiple files in succession is demonstrated. The accept/reject workflow is also demonstrated, with the ability to make desired changes before committing the changes. Additionally, integration with Git is demonstrated, so that version control history is preserved across the conversion. InstallationPrerequisitesOne of the following LM providers should be configured:
How to installDownload the latest FeedbackReporting an issueTo report a bug or an issue, please use GitHub issues and log an issue under this repository. When reporting, include as much detail as possible (steps to reproduce, expected vs. actual behaviour, screenshots, etc.). ContributingContributions are welcome! If you'd like to improve the project, please fork the repository and create a pull request with your changes. Make sure your code is formatted and linted ( FeaturesConvert to KotlinRight click a Instant diff previewA side-by-side diff opens so you can review and edit the generated Kotlin before saving changes. Accept and CancelAccept the changes to replace the Java file with its Kotlin replacement, or cancel to close the preview with no changes. Version-control integrationCommit the conversion as a rename and modification which keeps commit history intact. Currently supported version control software: Git Build System integrationAutomatically configure Kotlin for your project. Currently supported build systems: Gradle Integration with many major model providersUse popular models seamlessly to power Kotlin conversion. Currently supported: OpenAI, OpenAI-like (OpenRouter, LM Studio), Ollama, VSCode-integrated Github Copilot Extension SettingsThis extension contributes the following settings:
Release Notes1.0.0Upcoming! |