Kuri is a tool that automatically generates necessary code for iOS CleanArchitecture and imports it into Xcode project.
I gave youtube a video explaining how to use Kuri so please refer also here.
Reference source here
- Independent of Frameworks.
- Testable.
- Independent of UI.
- Independent of Database.
- Independent of any external agency.
CleanArchitecture is a very wonderful way of thinking. In the case of products operated in the medium to long term, profits will be large. However, it is not without drawbacks. The amount of code that one writes is large.
So, I thought about making a tool to automatically generate code from some templates. That is Kuri.
I believe that the following concepts are necessary in iOS CleanArchitecture. Kuri will arrange the mechanism for it.
- Entity - Value object.
- DataStore - Data store for Entity.
- Repository - Operation Datastore interface.
- UseCase - Application operation. translate and CRUD operation to repository.
- Translator - Translate Entity to Model or Model to Entity.
- Model - Converted Entity for UI.
- Presenter - Event handle for View.
- View - Drawing UI.
- Wireframe - Control transition of View.
- Builder - Make a View with Dependency Injection.
When using "Kuri" Two preparations are necessary.
- Kuri.yml file.
- KuriTemplate directory.
But using setup command will prepare these two.
In project file root directory.
You can type kuri setup
and press enter in CLI tool.
The "Kuri.yml" and "KuriTemplate" directories are created unser the current directory.
The form of the generate command basically looks like this
kuri generate "MyName"
.
After Executing generate command, you can comfirm to want to append files and directories for MyNameEntity, MyNameRepository, MyNameView and so on into Xcode project.
e.g Execute on terminal where project root directory.
$ kuri generate Kuri
Instructions with options here.
Kuri.yml and KuriTemplate can be customized respectively.
Now only manual installation method is available.
- Download Kuri from latest release version
- Copy kuri and paste it where you can execute from the CLI.
You can now run the kuri command.
Kuri is available under the MIT license. See the LICENSE file for more info.