Start working with App refactoring

What is good to know before the start.


Select a project, pack it into an archive (zip, rar, tar) and load it into the analyzer by pressing the Run Analyzer button.

After uploading the project, your source code is analyzed and all dependencies and intersections with other projects are calculated

Based on the results of the analysis, the status of your project will change to "Completed" and you will see the total percentage of intersections with other projects.

There are 3 levels used to grade the uniqueness of the project: Green - everything is in order, your project is unique; Yellow - be careful, the project has a sufficient number of intersections in order to link it with your other projects, it is recommended to check such a project Red - the project has a large number of intersections and needs repeated obfuscation and refactoring, we do not recommend using this project for production, as this code can be linked to your other projects

When you open a project in the analyzer, the first thing you see is "general" intersections, that is, intersections not with a specific project, but with your entire codebase. This means that a certain file, name, class, structure, method, JSON, image, etc. or a similar one already exists somewhere in other projects.

If something in your code matches other projects, the list item will be highlighted in red. You can either add this file, hash, variable or name to ignore list, or replace it and reload it for analysis.

If you want to make a more detailed analysis of specific projects, you need to go to the next tab - “Intersections“, where you will see the intersections with specific projects (your personal or your team’s).

When you select a specific project, you can expand the list and see what the two projects have in common (specific files, methods, variables, structures, names, etc.). View each match, you can correct them, or add them to ignore list.

In order to add to ignore, you need to understand that this is really necessary when analyzing a project since adding to ignore will affect all projects. You can do this by clicking on the “Ignore” button.

It is recommended to add the following files to ignore: system methods and files, variables and names, and files of other libraries that you include in the project. But be careful when adding structures to ignore! Be careful when working with ignores, because in the future, when adding a large amount of data to ignore, you can link your projects to each other based on your ignore settings.

Frequently Asked Questions

Uploading Projects

Can I upload not an archive with sources, but a compiled project?
no. The service can perform a full analysis of the project only by source code.
What archive formats are supported?
The service supports the following archive formats: zip, rar, tar, tar.gz
What programming languages are supported?
Currently supported: Java, Kotlin, C#, Swift, TypeScript, JavaScript, Objective-C, PHP, Go. This list will expand in the near future.

Work with projects

Can specific team members be given special accessibility settings?
Yes, they can. In the Member permissions settings
How to compare 2 projects?
To do this, first, you need to load the first one, then when loading the second one, you need the name of the first project in the compare list
How long will my project take to load?
While loading the archive with the project, there is a loading indicator. Also, next to the indicator, the estimated time is indicated and, as a rule, it depends on the speed of your Internet connection.

Still got questions? Feel free to request an explanation!