Commit c95bf690 authored by Nicolas Richard Walter Boeckh's avatar Nicolas Richard Walter Boeckh 💬
Browse files

README | CAHIER CHARGES

parent 9d84ea4e
# Cahier des Charges pour Projet Transverse I
## Authors
| Nom | Profil GitLab | Email |
|:--- |:---:|:---:|
| Clément Jeannet | [Link](https://gitlab.unige.ch/Clement.Jeannet) | [Mailto](mailto:clement.jeannet@etu.unige.ch) |
| Nicolas Boeckh | [Link](https://gitlab.unige.ch/Nicolas.Boeckh) | [Mailto](mailto:nicolas.boeckh@etu.unige.ch) |
## Navigation
- [Sommaire](#sommaire)
- [Fonctionnalités Désirées](#fonctionnalités-désirées)
- [Compte Utilisateur](#compte-utilisateur)
- [Création de post](#création-de-post)
- [Gestion de post](#gestion-de-post)
- [Création de commentaire](#création-de-commentaire)
- [Gestion de commentaire](#gestion-de-commentaire)
- [Création de groupe](#création-de-groupe)
- [Visualisation post / comment](#visualisation-post-/-comment)
___
## Sommaire
([Back to top](#navigation))
Le projet consiste à réaliser un forum de discussion similaire à [reddit.com](https://reddit.com) ou [inilab.ch](https://inilab.ch).
Il faut pouvoir initier des discussions, regrouper dynamiquement les sujets de discussion démarrés de manière indépendante selon leur similarité, permettre de commenter plus une discussion ou un commentaire sur une discussion, visualiser le tout.
Possibilité de voter les commentaires. Lister les discussions selon leur popularité (nombre de commentaires ou nombre de personnes qui font des commentaires). Pour une discussion donnée, montrer tous les commentaires votés positivement et négativement.
___
## Fonctionnalités désirées
([Back to top](#navigation))
### Compte Utilisateur
- Permettre à l'utiliseur de créer un compte ;
- Permettre à l'utilisateur de se logger/délogger de son compte ;
- Supprimer son compte (prompt danger);
- Changer nom d'utilisateur et/ou email et/ou mot de passe ;¨
- Donner image ;
- (Fonctionnalité Optionelle) Gérer les paramètres de son compte ;
### Création de post
- Entrer un sujet ;
- Définir un groupe ;
- Définir du contenu ;
- Définir les thèmes ;
- Mettre en ligne ;
### Gestion de post
- (Fonctionnalité Optionnelle) Éditer un post ;
- Supprimer un post (prompt danger);
### Création de commentaire
- Choix du parent (post ou commentaire) ;
- Définir du contenu ;
### Gestion de commentaire
- Supprimer un commentaire (prompt danger);
- (Fonctionnalité Optionnelle) Éditer un commentaires ;
### Création de groupe
- Donner un titre ;
- Donner une description ;
- Donner image ;
### Gestion du groupe
- Supprimer groupe (prompt danger | uniquement propriétaire) ;
- Modifier description ;
- Modifier image ;
### Visualisation post / comment
- Upvote / Downvote ;
- Share ;
- Report ;
# README for `pti`
## Authors
| Nom | Profil GitLab | Email |
|:--- |:---:|:---:|
| Clément Jeannet | [Link](https://gitlab.unige.ch/Clement.Jeannet) | [Mailto](mailto:clement.jeannet@etu.unige.ch) |
| Nicolas Boeckh | [Link](https://gitlab.unige.ch/Nicolas.Boeckh) | [Mailto](mailto:nicolas.boeckh@etu.unige.ch) |
## Navigation
- [Instruction](#instruction)
- [Idée](#idée)
- [Algorithme](#algorithme)
- [Données](#données)
- [Fonctionnalités Désirées](#fonctionnalités-désirées)
- [DB Elements](#db-elements)
- [Scenarii](#scenarii)
- [Sign up](#sign-up)
___
## Instruction
([Back to top](#navigation))
### Idée
Le projet consiste à réaliser un forum de discussion similaire à [reddit.com](https://reddit.com) ou [inilab.ch](https://inilab.ch).
Il faut pouvoir initier des discussions, regrouper dynamiquement les sujets de discussion démarrés de manière indépendante selon leur similarité, permettre de commenter plus une discussion ou un commentaire sur une discussion, visualiser le tout.
Possibilité de voter les commentaires. Lister les discussions selon leur popularité (nombre de commentaires ou nombre de personnes qui font des commentaires). Pour une discussion donnée, montrer tous les commentaires votés positivement et négativement.
Possibilité de voter les commentaires. Lister les discussions selon leur popularité (nombre de commentaires ou nombre de personnes qui font des commentaires). Pour une discussion donnée, montrer tous les commentaires votés positivement et négativement.
### Algorithme
### Algorithme
Similarité des discussions, analyse sémantique, ré-organiser les postes par thèmes (e.g. arguments liés à la finance, …)
Similarité des discussions, analyse sémantique, ré-organiser les postes par thèmes (e.g. arguments liés à la finance, …)
Diff implementation
......@@ -20,7 +42,11 @@ Diff implementation
Générer/collecter des données à partir des forums
## Desired Functionalities
___
## Fonctionnalités désirées
([Back to top](#navigation))
- Login (username || email, password)
- Sign up form (Captcha)
......@@ -29,8 +55,12 @@ Générer/collecter des données à partir des forums
- Timeline () : Sortable by Hot, by New, by Controversial, only certain groups
- Search for group
___
## DB Elements
([Back to top](#navigation))
- `USER` : username, email, password SHA_256 + salt, description, follows (`FOLLOWS*`), miniature (image), preferences (`PREFERENCES`), confirmed
- `POST` : poster (`USER`), upvotes (`UPVOTE*`), content, since, comments (`COMMENT*`)
- `POST_INIT` (`instance:POST`) : title, flavor (`FLAVOR*`), group (`GROUP`),
......@@ -38,10 +68,14 @@ Générer/collecter des données à partir des forums
- `GROUP` : image, description, followers (`FOLLOWS*`), since, moderators (`USER*`)
- `FOLLOWS` : user (`USER`), follow (`GROUP`), since
- `UPVOTE` : user (`USER`), post (`POST`)
- `PREFERENCES` : theme, (lang),
- `PREFERENCES` : theme, (lang),
___
## Scenarii
([Back to top](#navigation))
### Sign Up
Actors : John Doe
......@@ -61,10 +95,3 @@ He will need to enter a 6 digit code sent to him by email (he can go back and fi
After this he can submit the form and the account is created.
He receives a confirmation email *without* the password.
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment