Epitech project about creating a fullstack application using javascript
General
-
- You should have a server and a client in 2 separate git repository
- The design and responsive capability of your site will be scored
-
- You should have a user management system (login, register, ...)
-
- You should have a room and lobby system
-
- You should have a direct connexion with the server (websocket)
-
- Your project must be functional
-
- Your project must be accessible online at all time
Code
- Your code and your architecture will be reviewed
-
- Each of your git repositories must have a Readme describing how to deploy and connect to your project
-
- Your app should be ready to have multi lang
-
- The command “npm run lint” should verify the linter
FrontEnd
-
- You must use the linter eslint-config-airbnb
-
- Your code must be at least in react 16.13
-
- Your front-end must be in React and have a global state managing system (Redux, Apollo, new Context Api + hooks…)
-
- You should have multi pages with navigation (eg: react-router, ….)
-
- You must use the new React (no “extends Component” (only Functional or PureComponent), no “UNSAFE_componentWillMount()”, ...)
-
- You must use the new Javascript (no “.bind(this)”, ...)
BackEnd
-
- You must use the linter eslint-config-airbnb-base
-
- Your server must be in nodeJS (or a framework using nodeJs: koa, express, hapi)
-
- You should manage access to all “routes” / “Query, Mutations”
-
- You should check all parameters received
-
- You should care about status code return by your api (eg: 200, 201, 400, 404, …)
-
- You should add a migration system to the database
-
- You should manage multi environment (dev, test, prod, ...)