- 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.
- 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.
- 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.