- Overview
- Features
- Architecture
- Tech Stack
- Project Setup
- Development Guide
- UI Components
- Testing
- Progress Reports
- Contributors
CeKulit is an innovative Android application that helps users identify their skin type using advanced AI technology. The app provides personalized skincare recommendations and tracking features to help users maintain healthy skin care routines.
According to WHO, over 900 million people globally are impacted by skin conditions, with limited access to dermatological care creating a significant barrier to treatment. CeKulit aims to bridge this gap by providing accessible skin analysis tools through mobile technology.
π Smart Skin Analysis
- Real-time skin type detection
- High-accuracy AI-powered analysis
- Supports various lighting conditions
π€ User Profile
- Personalized skin care tracking
- Analysis history
- Progress monitoring
π± Intuitive Interface
- Material Design 3 components
- Dark/Light theme support
- Responsive layouts
π Security
- Secure user authentication
- Private data protection
- Encrypted local storage
graph TB
subgraph Presentation Layer
A[Activities/Fragments] --> B[ViewModels]
end
subgraph Domain Layer
B --> C[Use Cases]
C --> D[Repositories Interface]
end
subgraph Data Layer
D --> E[Repository Impl]
E --> F[Local Data Source]
E --> G[Remote Data Source]
F --> H[Room Database]
G --> I[REST API]
end
flowchart LR
A[View] --> B[ViewModel]
B --> C[Model]
C --> D[(Repository)]
D --> E[API Service]
D --> F[Local DB]
- Language: Kotlin
- Minimum SDK: 24 (Android 7.0)
- Target SDK: 34 (Android 14)
dependencies {
// Core Android
implementation 'androidx.core:core-ktx:1.12.0'
implementation 'androidx.appcompat:appcompat:1.6.1'
implementation 'com.google.android.material:material:1.11.0'
// Architecture Components
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.7.0'
implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.7.0'
implementation 'androidx.room:room-runtime:2.6.1'
implementation 'androidx.navigation:navigation-fragment-ktx:2.7.7'
// Network
implementation 'com.squareup.retrofit2:retrofit:2.9.0'
implementation 'com.squareup.okhttp3:okhttp:4.12.0'
// Image Processing
implementation 'androidx.camera:camera-camera2:1.3.1'
implementation 'androidx.camera:camera-lifecycle:1.3.1'
implementation 'com.github.bumptech.glide:glide:4.16.0'
// DI
implementation 'com.google.dagger:hilt-android:2.50'
// Testing
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.1.5'
}- Android Studio Hedgehog (2023.1.1) or newer
- JDK 17
- Android SDK 34
- Gradle 8.2
- Clone the repository
git clone https://github.com/CeKulit/cekulit-mobile.git-
Open project in Android Studio
-
Configure local properties
# local.properties
sdk.dir=/path/to/android/sdk
api.base.url=https://api.cekulit.app/v1/- Build the project
./gradlew buildapp/
βββ src/
β βββ main/
β β βββ java/com/cekulit/
β β β βββ data/
β β β βββ di/
β β β βββ domain/
β β β βββ presentation/
β β β βββ utils/
β β βββ res/
β βββ test/
βββ build.gradle
βββ proguard-rules.pro
- Follow Kotlin Coding Conventions
- Use dependency injection with Hilt
- Implement clean architecture principles
- Write unit tests for business logic
- Document public APIs and complex implementations
- Custom theme following Material Design 3
- Dynamic color support
- Consistent typography and spacing
- Accessible UI elements
@Test
fun `skin analysis should return valid result`() {
// Test implementation
}@Test
fun captureImageAndAnalyze() {
// UI test implementation
}- Project structure setup
- Basic navigation implementation
- Camera integration
- API integration
- User profile implementation
- Local database setup
- UI polish
- Performance optimization
- Component testing
- User acceptance testing
- Bug fixes
- Play Store preparation
- Alvano Hastagina (Universitas Ibn Khaldun Bogor)
- Feature Development
- Testing Implementation
- Viera Adella (Universitas Riau)
- UI/UX Implementation
- Nurrahman Hadi
- Candra Reza Prasetya Gannes
This project is licensed under the MIT License - see the LICENSE file for details.
- WHO for global skin health statistics
- Our university partners for resources and support
- The open-source community for amazing libraries
Made with β€οΈ by CeKulit Team
Β© 2024 CeKulit. All rights reserved.


