Open this directory in your favorite editor (VS code, Atom...)
Write these commands in the terminal :
go get github.com/mattn/go-sqlite3
go get github.com/satori/go.uuid
go get golang.org/x/crypto/bcrypt
go get golang.org/x/oauth2
go get golang.org/x/oauth2/facebook
go get golang.org/x/oauth2/google
go run ./main.go
Open your browser and go to "localhost:8000"
/!\ facebook and google registration are probably down due to expired token. /!\
This project was about making a forum where only registered users can post, comment posts, like and dislike. Non-registered users (Guests) can see those posts and comments but cannot reply nor like.
Everything is stored in a database (Sqlite3).
- Such as users and their informations : email address, username, profile picture, id...
- Posts with the original writer, id, categories, date of publication, number of like/dislike...
- Comments with the id of the original post, the writer of the comment..
- Categories with their name and color
- And more...
There is four roles : Guests, Users, Moderators and Admins.
By default, the first created user become an Admin. Be careful, only Admins can change the role of others Users, so if you delete the first one, you will have to clear the database and restart the app.
Guests can only read posts
Users can post, comment posts change their profile, delete and modify their own posts
Moderators can delete or modify, report an abusive user to the admins and accept the pending posts before publishing
Admins can delete, promote or demote any users, delete or create new categories ...
Code writted by PEYRE Brian, DOCKX Sven, BOUQUIER Baptiste, MORACCHINI Florian