# Step-by-step guide

1. Please consult guide on protecting with Stunnix Obfuscator without using Project Manager for information on changes that may be needed to adapt your projects for protection.
2. Start Project Manager
3. Click Project, New.
   1. Enter project input directory - a root directory where all files and subdirectories of the project reside.
   2. Enter output directory and state files directory; it's recommended to use relative paths in order to not edit project options once you will need to move your project to different directory for some reason.
   3. Specify type of majority of your project files' type. This will help automatic detection of options your porject should be protected with.
4. Go to Project, Files to ensure file types are detected correctly.
5. Go to Build, Rebuild all. Your project will be built with debugging settings, all symbols that will be subject to protection will be renamed by prepending the same prefix to each of them (in order to allow for trivial error detection).
6. Go to Symbols, View Symbol mapping and check that no symbols you didn't want to be mangled are listed there. If they are, go to Symbols, User-Specified exceptions and enter symbols that should not be changed by listing them one per line.
7. Clear state files after modifying set of exceptions; otherwise "Symbols, View Symbol mapping" will not be updated.
8. Test that your protected project works as original one; if it doesn't, list more necessary symbols as exceptions in "Symbols, User-Specified exceptions".
9. repeat previous 4 steps until succeded.
10. Go to Project, Switch Debuggin/Production profile and select a production profile you wish to apply to your project and click Save. (In the old versions of Project Manager you had to go to Project, Options, select mode 'BASE', set its parent to 'SPECIAL BASE: Obfuscation engine options for production' and click Save at the bottom of the page. This would also turn ON production mode of obfuscation, resulting in replacing symbols with meaningless names and turning on of encoding).
11. Go to "Build, Clear output & state files" to clear all symbol mapping accumulated so far, and to force rebuilding all files with new options. Then go to "Build, Rebuild changed" to rebuild everything.
12. Your product will be ready for shipping.

## Useful tips

- It's possible to edit set of exceptions using your favorite editor, go to corresponding page in Symbols menu and read name of file to edit at the bottom of the project.
- It's possible to generate a commandline script that will perform all operations available via Build menu by going to "Project, Export as buildscript". You will have to refetch the script though every time you change options of some mode or add or remove some files from your project. The documentation on using generated buildscripts is available here.
- Please make yourself familiar with window operations buttons in the topmost right corner of the Project Manager window - using them, you can clone windows or open them with Browser menu. By the use of cloning, you can open several windows for a project (e.g. window with Build menu opened, sized the way that only menuitems are visible to save screen estate - for fast rebuilding of the project, and other window for editing project options and probably editing exceptions). Multiplie projects can be opened at the same time too. Even Project Managers for several Stunnix Obfuscators can be opened at the same time (e.g. JavaScript Obfuscator and VBS-Obfus).