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

Readme

parent e3d94288
# README for `pti`
## Instruction
### 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.
### Algorithme
Similarité des discussions, analyse sémantique, ré-organiser les postes par thèmes (e.g. arguments liés à la finance, …)
Diff implementation
### Données
Générer/collecter des données à partir des forums
## Desired Functionalities
- Login (username || email, password)
- Sign up form (Captcha)
- Template (Post) [type: text || image || video, title, flavor: tags, upvotes, user, (group)]
- Template (Comment) [type: text || image, title, upvotes, user]
- Timeline () : Sortable by Hot, by New, by Controversial, only certain groups
- Search for group
## DB Elements
- `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`),
- `COMMENT` (`instance:POST`) : depth
- `GROUP` : image, description, followers (`FOLLOWS*`), since, moderators (`USER*`)
- `FOLLOWS` : user (`USER`), follow (`GROUP`), since
- `UPVOTE` : user (`USER`), post (`POST`)
- `PREFERENCES` : theme, (lang),
## Scenarii
### Sign Up
Actors : John Doe
John Doe wishes to sign up to the platform.
Since he is not signed in, he can only see the sign up button in the header.
He presses it, and is redirected to the sign up page.
There he enters his username, email, password, password confirm and confirms he is not a robot, he also accepts the SLA (/sells his soul to the devil), then presses confirm.
If any of the previous conditions generate errors, he has to complete it with non-error generating things.
He will need to enter a 6 digit code sent to him by email (he can go back and fill in a real email if not real), option to resend, becomes invalid after 5 minutes.
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