← Retour à la marketplaceVoir les projets →
⚙️
Paramètres Application
Paramètres configurables de l'application avec interface d'administration.
InfrastructureSimple~2 joursv1.1.0
Module de paramètres applicatifs avec stockage en DB, interface d'administration, typage des valeurs (string, number, boolean, json), paramètres publics vs privés et audit des modifications.
settingsconfigurationadminparameters
Dépendances requises :
📋 Schéma Prisma
// === Module Paramètres ===
enum SettingType {
STRING
NUMBER
BOOLEAN
JSON
}
model AppSetting {
id String @id @default(cuid())
key String @unique
value String
type SettingType @default(STRING)
label String
description String?
isPublic Boolean @default(false)
group String @default("general")
updatedAt DateTime @updatedAt
@@map("app_settings")
}🔌 Endpoints API
## API Paramètres GET /api/settings/public # Paramètres publics (sans auth) GET /api/admin/settings # Tous les paramètres (admin only) GET /api/admin/settings/:key # Un paramètre PUT /api/admin/settings/:key # Modifier la valeur POST /api/admin/settings # Créer un paramètre
🛠️ Guide d'implémentation
## Implémentation Paramètres ### Étape 1 — Service de paramètres Créer src/lib/settings/service.ts : ```typescript async function getSetting(key: string): Promise<string | null> async function getSettingTyped<T>(key: string, type: SettingType): Promise<T | null> async function updateSetting(key: string, value: string): Promise<void> ``` ### Étape 2 — Cache en mémoire Mettre en cache les paramètres (TTL 5min) pour éviter les requêtes DB fréquentes. ### Étape 3 — Seed des paramètres par défaut Créer prisma/seeds/settings.ts avec les paramètres initiaux de l'application. ### Étape 4 — UI admin Page /admin/settings avec groupes de paramètres et formulaires adaptés au type.
Prêt à installer ce module ?
Ajoutez-le à un projet existant depuis la page modules du projet.