A bachelor thesis project to enhance legacy software modernization via LLMs
- git client
- Visual Studio Code
code --install-extension IlijaKovacevic.modernizer-vscode- Open Extensions sidebar panel in Visual Studio Code.
View → Extensions - Search for
modernizer - Click Install to install it
- Download the latest release from the GitHub releases page
- Install it from the command line with:
code --install-extension modernizer-2.0.0.vsix- Clone the repository:
git clone https://github.com/rwth-acis/modernizer.git - Open the subfolder
extensionin Visual Studio Code - Run
npm installto install the dependencies - Press
F5to start a new window with the extension loaded
In order to showcase the functionalities a repository is prepared with a few examples. The repository can be found here.
- Clone the repository:
git clone https://github.com/ili16/example-functions.git- Change to the repository directory:
cd example-functions- Open the repository in Visual Studio Code with all extensions disabled except for the modernizer extension:
- Windows:
& code . ($(& code --list-extensions | Where-Object { $_ -ne 'ilijakovacevic.modernizer-vscode' } | ForEach-Object { "--disable-extension" ; $_ }) )- Linux:
code . $(code --list-extensions | grep -v 'ilijakovacevic.modernizer-vscode' | sed 's/^/--disable-extension /' | tr '\n' ' ')The extension provides CodeLenses in the active editor window:
- Generate Prompt for ... - Generates a prompt with a random instruct for the selected function
- Prompt Count - Shows the number of prompts for functions with the same name
- Retrieve best response - Retrieves the best response for the selected prompt
Generated or retrieved prompts are displayed in the output window with a notification to either up- or downvote that response:
When retrieving responses additional CodeLenses are provided:
- Open GitHub Repository - Opens the file and lines of code which were used to generate the prompt
- Show next Response - Shows the next response for the initially selected code
One can also use the context menu to access the functionalities:
The backend won't be available for future use so you can uninstall the extension by following the steps below:
code --uninstall-extension IlijaKovacevic.modernizer-vscode- Open Extensions sidebar panel in Visual Studio Code.
View → Extensions - Search for
modernizer - Click Uninstall to uninstall it