Kotlin Multiplatform Starter Project By Softylines
- Convention Plugins (Mohamed)
- Dependency Injection (Dhia)
- Networking (Mohamed)
- Database (Dhia)
- Konsist (Mohamed)
- Detekt/Spotless (Dhia)
- Auth feature (Dhia)
- Design System (Mohamed)
- Localisation (Arabic/English...) (Dhia)
- CRUD feature (User) (Mohamed)
- Logging
- Rebugger
- Build Flavors
- Crash Reporting (Sentry)
- CI/CD
- FCM Push Notifications
- Documentation
- Test
This project is a Kotlin Multiplatform project that aims to provide a starter project for Kotlin Multiplatform projects. It is a work in progress and will be updated regularly.
Make sure you are following the Kotlin Coding conventions.
The project follows the multi-module clean architecture with some modifications to fit the nature of the project. Each feature is a module and has its own domain, data, and ui layers.
For adding new data modules, we will follow these guidelines:
For adding new feature modules, we will follow these guidelines:
Run ./gradlew detekt
to run detekt checks.
You can also run ./gradlew detekt --auto-correct
to auto correct some issues automatically.