MiniSocialApp est une application de réseau social minimaliste développée en C# avec WPF et Entity Framework Core. Elle permet aux utilisateurs de s’inscrire, se connecter, publier des messages, liker les posts des autres et commenter les publications.
- Inscription et connexion des utilisateurs
- Fil d’actualité affichant tous les posts
- Ajout de posts textuels
- Like sur les posts (un seul like par utilisateur, possibilité de retirer son like)
- Commentaires sur les posts
- Affichage dynamique du nombre de likes et des commentaires
MiniSocialApp/
│
├── Data/ # Modèles de données et DbContext EF Core
│ ├── Comment.cs
│ ├── DbContext.cs
│ ├── Post.cs
│ ├── PostLike.cs
│ └── User.cs
│
├── ViewModels/ # Logique métier et binding pour la vue
│ ├── FeedViewModel.cs
│ ├── LoginViewModel.cs
│ ├── RegisterViewModel.cs
│ └── RelayCommand.cs
│
├── Views/ # Vues WPF (XAML) et code-behind
│ ├── FeedView.xaml
│ ├── FeedView.xaml.cs
│ ├── LoginView.xaml
│ ├── LoginView.xaml.cs
│ ├── RegisterView.xaml
│ └── RegisterView.xaml.cs
│
├── Converters/ # Convertisseurs pour le binding WPF
│ ├── StringNullOrEmptyToVisibilityConverter.cs
│ └── (autres converters si besoin)
│
├── Services/ # (Réservé pour des services métiers ou d’accès aux données)
│
└── README.md # Ce fichier
...
- .NET 6 ou supérieur
- Entity Framework Core
- Visual Studio ou Visual Studio Code
-
Cloner le dépôt
git clone git@github.com:Insu-qg/MiniSocialApp.git
-
Restaurer les dépendances
dotnet restore
-
Créer la base de données
dotnet ef database update
-
Lancer l’application
dotnet run
- Inscription : Créez un compte via l’écran d’inscription.
- Connexion : Connectez-vous avec vos identifiants.
- Fil d’actualité : Consultez les posts, likez, commentez, ajoutez vos propres messages.
- Like : Un clic sur "Like" ajoute un like, un second clic le retire.
- Commentaires : Ajoutez des commentaires à chaque post.
- L’application utilise le pattern MVVM pour séparer la logique métier de l’interface.
- Les likes sont gérés via une table de liaison
PostLikepour garantir qu’un utilisateur ne peut liker qu’une seule fois. - Les convertisseurs WPF permettent d’améliorer l’expérience utilisateur (placeholder, visibilité conditionnelle, etc).
- Le code est prêt à être étendu (ajout d’images, notifications, etc).