feat(init): mise en place initiale de P'titsPas - Documentation: CDC complet, sécifications techniques SSS-001, charte graphique, évolutions - Backend: structure NestJS avec controllers/services/routes, config Prisma - Frontend: app Flutter avec structure MVC, thème et Firebase - Changement de nom: SuperNounou devient P'titsPas

This commit is contained in:
Julien Martin
2025-04-30 10:38:47 +02:00
parent d5015b9c42
commit 9321430818
61 changed files with 9251 additions and 125 deletions
+37 -47
View File
@@ -3,62 +3,52 @@ import 'package:go_router/go_router.dart';
import 'package:provider/provider.dart';
import 'package:google_fonts/google_fonts.dart';
import 'theme/app_theme.dart';
import 'screens/auth/login_screen.dart';
import 'screens/auth/register_screen.dart';
import 'screens/auth/parent_register_screen.dart';
import 'screens/home/home_screen.dart';
void main() {
runApp(const MyApp());
runApp(
ChangeNotifierProvider(
create: (_) => AppTheme(),
child: const MyApp(),
),
);
}
final _router = GoRouter(
initialLocation: '/login',
routes: [
GoRoute(
path: '/login',
builder: (context, state) => const LoginScreen(),
),
GoRoute(
path: '/register',
builder: (context, state) => const RegisterScreen(),
),
GoRoute(
path: '/parent-register',
builder: (context, state) => const ParentRegisterScreen(),
),
GoRoute(
path: '/home',
builder: (context, state) => const HomeScreen(),
),
],
);
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp.router(
title: 'P\'titsPas',
theme: AppTheme.lightTheme,
routerConfig: GoRouter(
initialLocation: '/',
routes: [
GoRoute(
path: '/',
builder: (context, state) => const HomePage(),
),
],
),
);
}
}
class HomePage extends StatelessWidget {
const HomePage({super.key});
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: const Text('P\'titsPas'),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Image.asset(
'assets/images/logo.png',
width: 200,
height: 200,
),
const SizedBox(height: 24),
Text(
'Bienvenue sur P\'titsPas',
style: Theme.of(context).textTheme.displayMedium,
),
const SizedBox(height: 16),
Text(
'La plateforme de gestion de la garde d\'enfants',
style: Theme.of(context).textTheme.bodyLarge,
),
],
),
return Consumer<AppTheme>(
builder: (context, appTheme, _) => MaterialApp.router(
title: 'P\'titsPas',
theme: appTheme.lightTheme,
routerConfig: _router,
),
);
}