Artisan D'art

Plateforme Numérique pour l'Excellence Artisanale

Un écosystème complet connectant les artisans traditionnels aux consommateurs modernes. Comprenant une application iOS native, un puissant tableau de bord d'administration et un backend API robuste — tous conçus pour préserver et promouvoir le savoir-faire artisanal.

3 Plateformes
60+ Endpoints API
2 Langues
15+ Modèles de Données
Résumé Exécutif
Qu'est-ce qu'Artisan D'art ?
Artisan D'art est une marketplace numérique full-stack qui relie l'artisanat traditionnel à la technologie moderne, permettant aux artisans de présenter leur travail, gérer leur activité et se connecter avec des clients du monde entier.
iOS
Application Mobile Native
React
Tableau de Bord Admin
Node.js
Backend REST API
MySQL
Base de Données Relationnelle

Aperçu de la Plateforme

📱

Application iOS Mobile

Application SwiftUI native permettant aux clients et aux artisans de parcourir, découvrir, acheter et gérer des produits artisanaux.

🖥️

Tableau de Bord Admin

Panneau de contrôle basé sur React pour les administrateurs gérant les artisans, articles, catégories, badges, événements, utilisateurs, rapports et demandes.

Backend REST API

API Node.js/Express alimentant les deux plateformes avec 60+ endpoints, authentification JWT, téléchargements de fichiers, notifications push et géolocalisation.

Proposition de Valeur Principale

  • Marketplace complète pour les produits artisanaux faits main
  • Découverte d'artisans par géolocalisation avec des cartes interactives
  • Système multi-rôles : Utilisateurs, Artisans, Admins
  • Support bilingue (Anglais & Français)
  • Notifications push en temps réel via Firebase
  • Système d'avis, de notation et d'engagement social
  • Gestion d'événements avec intégration de calendrier
  • Modération admin et flux d'approbation
  • Système de badges et de vérification pour la confiance
  • Tableau de bord analytique complet
Architecture
Architecture Système
Une architecture moderne à trois niveaux conçue pour la scalabilité, la maintenabilité et la performance.
📱 iOS App
SwiftUI + MVVM
⚡ REST API
Node.js + Express
🗄️ MySQL
Sequelize ORM

🖥️ Admin Dashboard
React + CoreUI
⚡ REST API
Node.js + Express
📁 File Storage
/uploads

Stack Technologique

📱 Application iOS

Swift 5 SwiftUI MVVM Coordinator Pattern MapKit Kingfisher Lottie Firebase FCM CoreLocation

🖥️ Tableau de Bord Admin

React 18 CoreUI 4 Redux SCSS Chart.js Leaflet Maps i18next Axios React Router 6

⚡ Backend API

Node.js Express.js Sequelize ORM MySQL JWT Auth Multer Nodemailer Firebase Admin Twilio SMS Cron Jobs

Aperçu du Modèle de Données

Entité Champs Clés Relations
Username, email, phone, password, picture, role, verified→ Artisan, Comments, Ratings, Favorites, Subscriptions
Artisantype, verified, archived, lat/lng, location, badge→ User, Articles, Gallery, Subscribers, Badge
Articlename (FR/EN), description (FR/EN), price, promotion→ Artisan, Category, Comments, Ratings, Gallery
Categorytitle (FR/EN), image→ Articles
Badgetitle (FR/EN), description (FR/EN), picture→ Artisans
Eventtitle (FR/EN), dates, description (FR/EN), location, lat/lng→ Gallery, Calendar
Requesttype, status (pending/success/refused/canceled)→ User, Article
Reportstatus (handled/unhandled)→ Reporter, Comment, Artisan
Application Mobile
Application iOS — Expérience Utilisateur
Une application SwiftUI native offrant une expérience premium et fluide pour découvrir les artisans et leur savoir-faire.
🔐

Authentification & Compte

  • Connexion email/téléphone avec tokens JWT
  • Inscription avec téléchargement de photo de profil
  • Vérification email par OTP
  • Mot de passe oublié par SMS OTP (Twilio)
  • Flux de réinitialisation du mot de passe
  • Gestion de session & déconnexion automatique
  • Mise à niveau du compte (Utilisateur → Artisan)
  • Archivage/suppression du compte
🔍

Découverte & Recherche

  • Recherche globale d'articles & d'artisans
  • Filtrage avancé par catégorie
  • Filtrage par type d'artisan (Artisan/Boutique)
  • Filtrage par fourchette de prix (min/max)
  • Découverte des artisans proches par géolocalisation
  • Filtrage par distance
  • Pagination avec défilement infini
  • Résultats de recherche en temps réel
🛍️

Navigation des Articles

  • Articles en vedette/populaires en page d'accueil
  • Sections les plus vues, récentes, mieux notées
  • Carrousel de galerie d'images avec pagination
  • Affichage des prix avec badges de promotion
  • Système de notation par étoiles (1-5 étoiles)
  • Section commentaires et avis
  • Fonctionnalité favoris/liste de souhaits
  • Suivi du nombre de vues
👤

Profils d'Artisans

  • Profils d'artisans enrichis avec galeries
  • Carte montrant la localisation de l'artisan
  • S'abonner/suivre des artisans
  • Voir le catalogue de produits de l'artisan
  • Signaler les profils inappropriés
  • Affichage des informations de contact
  • Compteur d'abonnés
  • Affichage du badge de vérification
📅

Événements & Calendrier

  • Parcourir les événements à venir & passés
  • Détails de l'événement avec galerie d'images
  • Ajouter des événements au calendrier personnel
  • Affichage de la localisation et de la distance
  • Informations de date/heure
  • Abonnements aux notifications push Firebase
  • Rechercher des événements par titre ou localisation
⚙️

Paramètres & Préférences

  • Modification du profil (nom, photo)
  • Basculement du mode sombre
  • Sélection de la langue (EN/FR)
  • Gestion des notifications push
  • Demande de mise à niveau du compte
  • Sections à propos & aide
  • Options d'accessibilité
  • Déconnexion sécurisée

Fonctionnalités Réservées aux Artisans (Après Mise à Niveau du Compte)

Gestion des Articles

Formulaire multi-étapes pour ajouter des articles avec des noms et descriptions bilingues, des galeries (jusqu'à 5 images), les prix, la catégorie et les promotions.

✏️

Modifier & Archiver

Mettre à jour les articles existants, changer les photos, ajuster les promotions et les prix, ou archiver les articles qui ne sont plus disponibles.

📊

Statistiques

Suivre les vues d'articles, les notations et les métriques d'engagement pour comprendre l'intérêt des clients et optimiser les offres.

Administration
Tableau de Bord Admin — Centre de Contrôle
Un panneau d'administration premium basé sur React offrant un contrôle complet sur l'ensemble de la plateforme avec des analyses, de la modération de contenu et de la gestion des utilisateurs.
📊

Tableau de Bord Analytique

Bannière d'accueil, cartes de statistiques, graphiques linéaires, graphiques en anneau, tableau des artisans récents, répartitions par catégorie.

👨‍🎨

CRUD Artisans

Créer, voir, mettre à jour des artisans avec sélecteur de localisation sur carte, téléchargements de galerie et attribution de badges.

📝

CRUD Articles

Gestion complète des articles avec contenu bilingue, prix, promotions, catégories et galeries d'images.

🏷️

CRUD Catégories

Créer et gérer des catégories de produits avec des titres bilingues et des images.

🏅

Système de Badges

Créer des badges avec des titres/descriptions bilingues, attribuer aux artisans de confiance.

📅

Gestion des Événements

Créer des événements avec des dates, des localisations, l'intégration de cartes, des galeries et du contenu bilingue.

Flux de Demandes

Examiner et approuver/refuser les demandes de mise à niveau des utilisateurs et les soumissions d'articles.

🚩

Modération du Contenu

Examiner les rapports, marquer comme traité, supprimer les commentaires inappropriés, gérer la sécurité des utilisateurs.

Matrice des Opérations CRUD

Entité Créer Lire Modifier Supprimer Archiver Vérifier Rechercher Filtrer
Artisans
Articles
Catégories
Badges
Événements
Utilisateurs
Rapports
Demandes

Fonctionnalités du Tableau de Bord

Backend
Backend API — 60+ Endpoints
Une API REST Node.js/Express robuste avec authentification JWT, contrôle d'accès basé sur les rôles, téléchargements de fichiers, notifications push et gestion complète des données.

🔐 Authentification (8 endpoints)

POST/api/users/signup
POST/api/users/login
POST/api/users/send-otp
POST/api/users/verify-otp
POST/api/users/change-forgot-password
GET/api/users/verify/:code/:id
GET/api/users/resend-verification
POST/api/admin/login

👨‍🎨 Artisans (8 endpoints)

POST/api/artisans/
POST/api/artisans/profile/:id
GET/api/artisans/
GET/api/artisans/:id
PUT/api/artisans/v1/admin-update/:id
PUT/api/artisans/:id
PUT/api/artisans/:id/:badge_id
PATCH/api/artisans/:id (revoke badge)

📝 Articles (15 endpoints)

POST/api/articles/v1/create-by-admin
POST/api/articles/home-page
GET/api/articles/most-viewed
GET/api/articles/most-recent
GET/api/articles/top-rated
GET/api/articles/top-promoted
PUT/api/articles/:id/update
DEL/api/articles/:id

📅 Événements (7 endpoints)

POST/api/events/create
GET/api/events/all
GET/api/events/findAll
GET/api/events/:id
PUT/api/events/:id
DEL/api/events/:id

⭐ Social (Notations, Commentaires, Favoris)

POST/api/ratings/:articleId/
POST/api/comments/:articleId/
POST/api/favorites/:articleId/
POST/api/subscribers/
POST/api/calendars/

🚩 Modération (Rapports & Demandes)

POST/api/reports/
GET/api/reports/
PATCH/api/reports/:id
POST/api/requests/create
POST/api/requests/response
GET/api/requests/

🏷️ Catégories & Badges

POST/api/categories/create-new
GET/api/categories/v1/all
PUT/api/categories/v1/:id
POST/api/badges/v1/create
GET/api/badges/
PUT/api/badges/:id

Capacités du Backend

🔑 Sécurité

Tokens JWT, hachage BCrypt, middleware basé sur les rôles, CORS

📧 Email

Nodemailer SMTP, codes de vérification, emails de réinitialisation de mot de passe

📲 SMS & Push

OTP Twilio, Firebase Cloud Messaging, abonnements aux sujets

⏰ Tâches Planifiées

Rappels d'événements planifiés, vérification quotidienne à 10h UTC

Pourquoi Artisan D'art
Différenciateurs Clés
Ce qui fait d'Artisan D'art une plateforme premium, prête pour la production.

🌍 Support Bilingue Complet

Chaque contenu — articles, catégories, badges, événements — supporte le français et l'anglais avec un basculement de langue fluide sur iOS et le tableau de bord admin.

📍 Découverte par Géolocalisation

Cartes interactives avec Leaflet (admin) et MapKit (iOS), géocodage Nominatim, filtrage par distance et découverte d'artisans sensible à la localisation.

🔄 Flux d'Approbation

Système complet de demande/approbation : les utilisateurs demandent le statut d'artisan, les artisans demandent la publication d'articles, les admins examinent et approuvent/refusent avec un audit complet.

🛡️ Modération du Contenu

Système de signalement pour les commentaires et profils d'artisans, panneau de révision admin, marquer comme traité, supprimer le contenu inapproprié — gardant la plateforme sûre.

🏅 Confiance & Vérification

Système de badges (Maître Artisan, Certifié, Talent Émergent), statut de vérification admin, indicateurs visuels de confiance sur toute la plateforme.

🔔 Notifications en Temps Réel

Notifications push Firebase Cloud Messaging, abonnements basés sur des sujets (suivre des artisans, sauvegarder des événements), rappels d'événements quotidiens planifiés via des tâches cron.

La Plateforme en Un Coup d'Œil

60+
Endpoints API
15+
Modèles de Données
30+
Écrans
20+
Pages Admin

Prêt à Déployer. Prêt à Scaler.

Artisan D'art est une plateforme complète, prête pour la production, construite avec des technologies modernes, une architecture propre et les meilleures pratiques. De la base de données à l'écran mobile — chaque couche est conçue avec soin.


Artisan D'art — Là Où la Tradition Rencontre la Technologie

Ce document a été préparé comme une vitrine complète du portfolio de la plateforme Artisan D'art.

Tous droits réservés © 2024