Architecture et configuration du projet App Creaty

  1. Organisation des fichiers du projet

La structure du projet App Creaty est conçue pour une gestion efficace des ressources et du code. Voici un aperçu des répertoires principaux :


app_creaty/
├── assets/
├── lib/
├── linux/
├── macos/
├── web/
├── windows/
├── .gitignore
├── LICENSE
├── README.md
├── SUPABASE_CONFIG.md
├── SUPPORTED_WIDGETS.md
├── analysis_options.yaml
├── env.example.json
├── l10n.yaml
├── mason-lock.json
├── mason.yaml
├── pubspec.lock
├── pubspec.yaml

Détails des répertoires

  • assets/ : Répertoire pour les ressources statiques, incluant images et polices.
  • lib/ : Emplacement du code source principal, écrit en Dart pour l'application Flutter.
  • linux/, macos/, web/, windows/ : Fichiers spécifiques à chaque plateforme cible.
  • .gitignore : Spécifie les éléments exclus du suivi par Git.
  • LICENSE : Doucment définissant les termes de licence du projet.
  • README.md : Documentation générale et instructions de base.
  • SUPABASE_CONFIG.md : Guide pour intégrer et configurer Supabase.
  • SUPPORTED_WIDGETS.md : Inventaire des composants d'interface supportés avec leurs propriétés.
  • analysis_options.yaml : Paramètres pour l'analyse statique et les règles de style du code.
  • env.example.json : Modèle de configuration pour les variables d'anvironnement.
  • l10n.yaml : Configuration pour la localisation et l'internationalisation.
  • mason-lock.json et mason.yaml : Fichiers de gestion pour le générateur de code Mason.
  • pubspec.lock et pubspec.yaml : Gestion des dépendances et des métadonnées du projet Flutter.
  1. Point d'entrée de l'application

Le fichier lib/main.dart sert de point d'initialisation pour l'application. Il configure le widget racine et démarre l'exécution.


// lib/main.dart
import 'package:flutter/material.dart';
import 'package:app_creaty/application.dart';

void main() {
  runApp(Application());
}

Dans cet exemple, la fonction main() invoque runApp() avec le widget principal défini dans application.dart, qui gère la navigation et l'état global.

  1. Fichiers de configuration essentiels

pubspec.yaml

Ce fichier centralise les dépendances, les ressources et les versions. Voici un extrait typique :


name: app_creaty
description: Application Flutter pour la création d'interfaces dynamiques.
version: 1.0.0+1

environment:
  sdk: ">=2.19.6 <3.0.0"

dependencies:
  flutter:
    sdk: flutter
  supabase: ^1.0.0
  # Ajouter d'autres paquets requis ici

dev_dependencies:
  flutter_test:
    sdk: flutter
  build_runner: ^2.1.7
  # Outils de développement supplémentaires

flutter:
  uses-material-design: true
  assets:
    - assets/

env.example.json

Un exemple de configuration pour les services externes, notamment Supabase pour la base de données et Sentry pour le suivi des erreurs.


{
  "SUPABASE_URL": "VOTRE_URL_SUPABASE",
  "SUPABASE_ANON": "VOTRE_CLE_ANON_SUPABASE",
  "SENTRY_DSN": "VOTRE_DSN_SENTRY"
}

Pour des informations détaillées sur l'intégration de Supabase ou la liste complète des widgets supportés, se référer aux documents SUPABASE_CONFIG.md et SUPPORTED_WIDGETS.md inclus dans le projet.

Étiquettes: Flutter Dart Supabase project-configuration mobile-development

Publié le 16 juin à 18h10