Flexi Store KMP est un projet Multiplateform Compose qui utilise le serveur KTOR personnalisé comme backend et prend en charge Android, iOS, Web & Desktop. Il contient un serveur backend personnalisé avec un tableau de bord d'administration. Le tableau de bord de l'administration nous aide à suivre les commandes, l'état de livraison, les sections de paiement, les sections de promotion et bien plus encore.
Fonctionnalités prises en charge
Authentification des utilisateurs
Intégration de paiement
Recommandations de produits
Recherche avancée
Suivi des commandes
Conception réactive
Notifications push
Intégration des médias sociaux
Liste de souhaits et favoris
Remises et coupons
Support client
Revues et notes de produits
Gestion des stocks
Analytique et rapport
Vendeur central
Caractéristiques de planification futures
Support multi-langues
Intégration des médias sociaux
Recommandations alimentées par l'IA
Recherche vocale
Réalité augmentée
Intégration de la blockchain
Services d'abonnement
Mode hors ligne
Options de paiement élargies
Forums communautaires
Gamification
Mi-sort
Déploiement sur Heroku ou Google Cloud
Déploiement sur Appstore et Playstore.
Implémentation de l'interface utilisateur pilotée par le serveur
Technologies utilisées
Jetpack compose les dépendances
AndroidX-ActivityCompose : 1.9.3
Androidx-TestManifest : 1.7.5
AndroidX-Junit4 : 1.7.5
Navigation
Voyager-Navigator : 1.1.0-beta03
Enregistrement
Napier : 2.7.1
Kotlin Coroutines
Kotlinx-Coroutines-Core : 2.0.20
Kotlinx-Coroutines-Android : 2.0.20
Kotlinx-Coroutines-Swing : 2.0.20
Kotlinx-Coroutines Test : 2.0.20
Architecture MVVM
Cycle de vie officiel : 2.8.3
Réseautage
ktor-core : 3.0.1
Ktor-Client-Darwin : 3.0.1
KTOR-CLIENT-OKHTTP : 3.0.1
KTOR-CLIENT-JS : 3.0.1
Ktor-Content-Negotiation : 3.0.1
Ktor-Serialization-Json : 3.0.1
KTOR-LOGGING : 3.0.1
Ktor-Client-Curl : 3.0.1
KTOR-CLIENT-WINHTTP : 3.0.1
Sérialisation
Kotlinx-Serialization-Json : 1.7.3
Date et heure
kotlinx-datetime : 0.6.1
Injection de dépendance
koin-core : 4.0.0
Koin-Annotations : 2.0.0-Beta1
Gestion d'image
Kamel-Image : 0.9.5
Conception de matériaux
taille d'écran : 0.5.0
Base de données
SQLDELLlight-Driver-Sqlite : 2.0.2
SQLDELLlight-Driver-Android : 2.0.2
Sqldelight-Driver-Native : 2.0.2
Sqldelight-Driver-js : 2.0.2
Notifications natives
alert-kmp : 1.0.5
Ces technologies sont utilisées pour développer une application de commerce électronique multiplateforme robuste et riche en fonctionnalités qui prend en charge les plates-formes Android, iOS, Web et de bureau.
Plans d'écran mobile
---
---
---
Plans d'écran iOS
Plans d'écran de bureau
Histoire des étoiles
Des étoiles
Fourchettes
Backend à étages flexibles
FlexI-Store est développé à l'aide de KTOR et est obligatoire pour le backend du Flexi-Store-KMP. Vous pouvez trouver le référentiel de serveur Flexi-Store ici.
Admin flexi-store
L'administrateur FlexI-Store est également développé à l'aide de Compose MultipLatform. Vous pouvez trouver le référentiel d'administration FlexI-Store ici.
Avant de courir!
Vérifiez votre système avec Kdoctor
Installez JDK 17 ou plus sur votre machine
Ajouter un fichier local.properties à la racine du projet et définir un chemin vers Android SDK là-bas
Androïde
Pour exécuter l'application sur un périphérique / émulateur Android:
Open Project dans Android Studio et exécutez la configuration de l'exécution Android importée
Pour construire le bundle d'applications:
Run ./gradlew :composeApp:assembleDebug
Recherchez le fichier .apk dans composeApp/build/outputs/apk/debug/composeApp-debug.apk run Android Simulator UI Tests: ./gradlew :composeApp:pixel5Check
Bureau
Exécutez l'application de bureau: ./gradlew :composeApp:run les tests UI de bureau d'exécution: ./gradlew :composeApp:jvmTest
ios
Pour exécuter l'application sur le périphérique / simulateur iPhone:
Ouvrez iosApp/iosApp.xcproject dans Xcode et exécuter la configuration standard
Ou utilisez le plugin mobile Kotlin MultipLatform pour Android Studio Exécuter les tests d'interface utilisateur de simulateur iOS: ./gradlew :composeApp:iosSimulatorArm64Test
Navigateur expérimental (JS)
Exécutez l'application du navigateur:. ./gradlew :composeApp:jsBrowserDevelopmentRun --continue Run Browser UI Tests: ./gradlew :composeApp:jsBrowserTest
Signaler des problèmes
Si vous trouvez un problème ou si vous souhaitez avoir certaines fonctionnalités, veuillez les signaler dans l'onglet Issues ou dans l'onglet Discussion.