{"id":37220096,"url":"https://github.com/refactoring-ai/refactory","last_synced_at":"2026-01-15T01:21:00.047Z","repository":{"id":40363174,"uuid":"296353146","full_name":"refactoring-ai/Refactory","owner":"refactoring-ai","description":"This project implements the recommendation of Extract Method refactoring opportunities using Machine Learning on GitLab merge requests. ","archived":true,"fork":false,"pushed_at":"2023-02-15T09:56:42.000Z","size":14726,"stargazers_count":5,"open_issues_count":3,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-06-20T14:07:57.564Z","etag":null,"topics":["academic-project","code-quality","git","java","refactoring"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/refactoring-ai.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-09-17T14:35:47.000Z","updated_at":"2023-03-24T05:40:08.000Z","dependencies_parsed_at":"2024-06-19T13:34:51.344Z","dependency_job_id":"f259bdde-6834-4677-99ef-035b960f7585","html_url":"https://github.com/refactoring-ai/Refactory","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/refactoring-ai/Refactory","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/refactoring-ai%2FRefactory","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/refactoring-ai%2FRefactory/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/refactoring-ai%2FRefactory/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/refactoring-ai%2FRefactory/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/refactoring-ai","download_url":"https://codeload.github.com/refactoring-ai/Refactory/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/refactoring-ai%2FRefactory/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28441031,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-15T00:55:22.719Z","status":"ssl_error","status_checked_at":"2026-01-15T00:55:20.945Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["academic-project","code-quality","git","java","refactoring"],"created_at":"2026-01-15T01:20:59.388Z","updated_at":"2026-01-15T01:21:00.027Z","avatar_url":"https://github.com/refactoring-ai.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Refactory\n\nThis project implements the recomendation of method level refactoring opportunities using Machine Learning on GitLab merge requests.\nThe research that lead to this project consisted of recommending ''extract method'' on merge requests.\nCurrently the tool is limited to the following toolchain as the research was performed in this setting:\n* GitLab\n* Survalyzer\n* Extract method\nIt should not be too dificult to adapt this tool to other toolchains however.\n\n# Setup\n\nFirst you will need a model in ONNX format.\nPlease see the repo for [data collection](https://github.com/refactoring-ai/Data-Collection)\n for instructions on how to collect data and the repo for [machine learning](https://github.com/refactoring-ai/Machine-Learning)\n for instructions on how to generate an ONNX model from this data.\n\nAfter this set up a postgres DB to store your results.\nThen setup your environment variables by either renaming `.env-example` to `.env` or setting the corresponding environment variables.\n\n\n## Running the application in dev mode\n\nYou can run your application in dev mode that enables live coding using: `./gradlew quarkusDev`\n\n## Packaging and running the application\n\nThe application can be packaged using `./gradlew quarkusBuild`.\nIt produces the `refactory-0.1.0-runner.jar` file in the `build` directory.\n\nThe application is now runnable using `java -jar build/refactory-0.1.0-runner.jar`.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frefactoring-ai%2Frefactory","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frefactoring-ai%2Frefactory","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frefactoring-ai%2Frefactory/lists"}