To make an existing project work with Zomp/ZX (whether for convenience in local development or inclusion to a Zomp realm) the project needs to be initialized. To initialize a project you need to decide three things:
From the project's root directory, initialize the project with the command
zx init and follow the prompts.
ceverett@takoyaki:~/code/my_old_app$ zx init
The above command will generate a file called "zomp.meta" that contains the project's metadata and create a minimal default "Emakefile". If your project has special directives needed in the Emakefile then it is recommended to edit this yourself. Note that ZX currently only supports Erlang code, so modules from other languages cannot yet be supported by ZX.
If more than one realm is installed on the local system ZX will ask which one the project should be packaged for, otherwise it will select whatever is available if there is only one.
Note that there is no requirement for a project directory have the same name as the project it stores, though this is the most common case. It is also not necessarily true that a package's name is the same as the project's repository name or the name of its primary interface module. The same is true of version numbers: sometimes an app's package version number must be different from a project's internal version keeping system (always true of projects that do not adhere to semver, for example).