### Nova
- to Help developers practice and pass technical interviews with the help of our professional interviewers.
- We have developers for many specialities.
### Tempaltes:
- https://www.pramp.com/#/
- https://blog.preplaced.in/top-mock-interview-websites/
- https://www.techmockinterview.com/
- https://mockmate.com/
- https://myinterviewpractice.com/
- https://www.mymockinterview.com/
- https://www.interviewbit.com/mock-interview/
- https://www.makeuseof.com/tag/mock-interview-websites/
- https://interviewing.io/
- http://www.gainlo.co/#!/
- https://interviewbuddy.in/#App
Landing:




![Uploading file..._l9ugqlln5]()
color => https://mockmate.com/about/
-
### Technologies :
- Node.js
- React
- Express
- TypeScript
## User Stories
### Homepage
- Sign up as a user()
- Log in as a interviewee/interviewer
- Log in as an admin
- Logout
### During Sign up
- Create account with personal information (Full Name, Email, Password)
- Fill up a form related to the interview I want to be asked in (Interview Experience (0 - 5)
#### 0 -> No Experience
#### 5 -> Professional
- About the user. (Input)
- CV Link (optional)
- Image Link (optional)
### Finished registering the user
After Sign up, before Assigning an interview.
#### Specializtion (One Option) :
- Frontend.
- Backend.
- Full Stack.
- Data Structure & Algorithm.
- Testing Automation.
- Security.
- Dev Ops.
#### Questions (Multiple Checks):
- Technical.
- Analytical.
- Algorithms.
- System Design.
#### Language to be interviewed with (One Option):
- JavaScript
- PHP
- C++
- C#
- Java
- C
- Go
- Python
- Ruby
#### Available Slots to schedule (One Option)
- Get the Time/Date where intervieweres are available based on user inputs.
- User Can only pick one at a time.
## Users Settings
### As a User
- Update User info.
- Schedule an interview with video chat (zoom/meet)
- Cancel, edit date (limit frame time) intreview details.
- View interviews history (general info about interview and interviewer reviews and feedback)
- Add review about user Satisfaction with the interview
### As an Interviewer
- Fill up a form related to the interview (Interview Experience, Specializtion, Categories (ex/ technical, non technical ), Available Slots to schedule)
- Update user info
- Cancel intreview details
- View interviews history
- Add review or rating after finish interview
### As an Admin
- Dashboard Page.
- Add Interviewer.
- Get and Delete all users.
### interviewee(user)
- Sign up
- Sign in
- Landing page
- about
- interviewers
- resourses
- start interview
- upcoming interviews
- review (testimonials)
- Profile
- history with reviews
- coming interview
- setting(info section)
- logout
- start interview
### interviewer:
- Sign in
- Landing page
- about/steps
- interviewers
- resourses
- Profile
- history with reviews
- coming interview
- setting(info section)
- Interviews date
- logout
### Admin:
- sign in
- create interviewer/delete/list
- users delete/list
### Routes
#### Frontend
- Nova.com/
- **/** , Homepage, Signup/Login Modal for users.
- **/login** , Login for interviewer.
- **/'username'/dashboard** , User Dashboard, Protected
- **/'username'/profile** , User Profile Settings, Protected
- **/'username'/history** , Interview History, Protected
- **/'username'/reviews** , Interview Reviews, Protected
- **/admin/dashboard** , Admin Dashboard, Protected
#### Backend
**/api/v1/** :
1. Figma Design (Decide pages)
2. Routes.
3. Database Schema.
### Hacker Rank API
https://www.hackerrank.com/work/apidocs#!/Introduction/options_intro_api
### Codewars api
https://dev.codewars.com/#get-code-challenge
-------------------------
* Back-End
- Login
- POST api/login
- POST api/admin/login
- Signup
- POST /api/signup
- Interviewers Profile
- Interviewee Profile
- GET /api/interviewees/intervieweeId(name, image, about, )
- POST api/interview (+ send an email)
- GET api/interview?status
- PATCH api/interview (+ send an email)
- DELETE api/interview (+ send an email)
- GET /api/interview/review?page=?&favorite
- PATCH /api/interview/review/interviewId (edit saved)
- PATCH api/interviewee
- PATCH api/interviewer
- POST api/interviewer/schedule
- Landing page
-
- Dashboard
- POST /api/logout
- GET /api/interviewers?page=&status=
- DELETE api/interviewers/interviewerId
- PATCH api/interviwers/interviewerId (send update status)
- POST api/interviewers (send data)
- GET api/interviewees?page=
- DELETE api/interviewees/intervieweeId
* Front-End
- Login
- form component
- admin login page
- Signup
- form component
- update profile popup
- Interviewers Profile
- Interviewee Profile
- users nav
- user info section (without btn in interviewe profile)
- interview component (without edit in interviewe profile)
- review component
- setting component
- profile tabs section
- start interview form
- add Interviwer form step 2
- add Interviwer form step 3
- add Interviwer form step 4 (calender)
- add Interviwer form step 5 (info + about + about the edit or the cancel)
- Interviewer available date section
- Landing page
- header component
- Interviwers component
- How Nova Practicing Works component
- We Provide section
- Join our team section
- resources section
- review about us
- companies section
- challenge section
- Dashboard
- Admin nav
- Footer
- table
- table section (title + table + pagination)
- Interviwer page
- Interviwer form
- add Interviwer form step 1
- add Interviwer form step 2
- add Interviwer form step 3
- Interviewee page
Landing Page:
- [ ] resources section
- [ ] review about us
- [ ] companies section
- [ ] challenge section
- [ ] add review from interviewer(from history)
---------------------------
Database Schema
Admin :
- Full Name
- Email
- Password
Interviewee :
- full_name
- email
- password
- about (optional)
- cv_url (optional)
- img_url (optional)
- is_verified (default: false)
- experience
- interviews = [
{
- interviewerId
- date
- time
- review
}
]
Interviewer :
- full_name
- email
- password
- about (optional)
- cv_url (optional)
- img_url (optional)
- status ['Pending', 'Accepted', 'Rejected'] default: 'Pending'
- experience
Week-1: figma + setup + database + Auth proccess(
sign up front + back
sign in front + back
user middleware + admin middleware
checkUser front (fetch user data in cookie )
fetch('/api/checkUser', check cookie + send its token )
)
- [ ] setup the project (file strucure + eslint + packages + server setup) --Abed
- [ ] setup database ---Mahmoud
- [ ] fake data --Abed
- [ ] sign up back + send verify email --Mahmoud
- [ ] verify back (update the state)
- [ ] login back POST() ---Abed
- [ ] user middleware --Manar
- [ ] admin middleware ---Manar
- [ ] checkUser route GET /api/checkUser Manar
- [ ]
- [ ] checkUSER FRONT --Abed /api/checkUser
- [ ] login user front --- Mahmoud
- [ ] login admin front --- Mahmoud
- [ ] Sign up front ---Manar
- [ ]
Week-2 interviewer profile
Week-3 interviewee profile
Week-4 landing page
-----------------------------
## Rules
### Work time & daily standup
- Manar
- Abed
- Mahmoud
- Raghad Mezied => `- 6 PM`
#### Daily standup
10:00
### Style Guide
- async/await, axios
- {message: , data:},
- {error: }
- TESTS
- Branch
- [ ] every branch relates to specific issue
- [ ] every branch linked to its issue.
- [ ] issueNumber-feature (ex: 2-login)
- [ ] commit changes early
- [ ] commit should be descriptive and not too short neither too long.
- [ ] create branch from main
- [ ] pull main frequentally
- PR
- [ ] while work not done open it with label `in progress`
- [ ] when work is done change label to `awaiting review`
- [ ] While PR approved change label to `done`, merge, close related-issue and delete branch.
- [ ] change issue label to `done`
- [ ] the one whose open the PR should merge it
- [ ] 3 approved requires to merge PR.
- [ ] PR should have suffecient, descriptive details.
(image of front component)
- [ ] git fetch `branch-name` locally, then check everything works as should it be.
- [ ] add comments to PR, So changes will be documented, change label to `request changes`.
- [ ] the one who request changes should resolve it.
- [ ] pre-commit to check tests and linting.
- labels
- awaiting-review
- to-do
- done
- front
- back
- route
- in-progress
- request changes
- files naming, variables: camelCase
- General rules
- all our folders should have `index.js`, every modules exported from.
- add comments to explan complex code.
- test every backend route. (supertest, unit test)
- destructre your vars.
- What to do early morning
- Review pending PR.
- share your updates, what are you working on, time you will spend on.
### Our UI
### colors and fonts type
**Font:**
**font-family:
**Colors:**
--------------------------------------
## **Issues template** :
## Backend issue:
Title should be: METHOD /full-route with labels Back, Route
### Description:
what route should do
### Protected: Yes/No
### Required middleWares:
### Request body:
```js
{
x: 'y'
}
```
### Validation:
```js
{
x: string.min(19)
}
```
### Response:
- Success - status code 200
```js
{
data: [{
id,
name ,
description,
...
}],
message:
}
```
- Failed - status code 400
```js
{
message: ''
}
```
### Tests:
200
400
401
----------------
## Front-end Issues
title should be: Name of the page with labels front, Route
### Description
`description`
* Route: ``'/'``
* Signed in only: `false`
* Admin only: `false`
### Screenshot:
Screenshot from figma
### Component:
### Props:### Nova
- to Help developers practice and pass technical interviews with the help of our professional interviewers.
- We have developers for many specialities.
### Tempaltes:
- https://www.pramp.com/#/
- https://blog.preplaced.in/top-mock-interview-websites/
- https://www.techmockinterview.com/
- https://mockmate.com/
- https://myinterviewpractice.com/
- https://www.mymockinterview.com/
- https://www.interviewbit.com/mock-interview/
- https://www.makeuseof.com/tag/mock-interview-websites/
- https://interviewing.io/
- http://www.gainlo.co/#!/
- https://interviewbuddy.in/#App
Landing:




![Uploading file..._l9ugqlln5]()
color => https://mockmate.com/about/
-
### Technologies :
- Node.js
- React
- Express
- TypeScript
## User Stories
### Homepage
- Sign up as a user()
- Log in as a interviewee/interviewer
- Log in as an admin
- Logout
### During Sign up
- Create account with personal information (Full Name, Email, Password)
- Fill up a form related to the interview I want to be asked in (Interview Experience (0 - 5)
#### 0 -> No Experience
#### 5 -> Professional
- About the user. (Input)
- CV Link (optional)
- Image Link (optional)
### Finished registering the user
After Sign up, before Assigning an interview.
#### Specializtion (One Option) :
- Frontend.
- Backend.
- Full Stack.
- Data Structure & Algorithm.
- Testing Automation.
- Security.
- Dev Ops.
#### Questions (Multiple Checks):
- Technical.
- Analytical.
- Algorithms.
- System Design.
#### Language to be interviewed with (One Option):
- JavaScript
- PHP
- C++
- C#
- Java
- C
- Go
- Python
- Ruby
#### Available Slots to schedule (One Option)
- Get the Time/Date where intervieweres are available based on user inputs.
- User Can only pick one at a time.
## Users Settings
### As a User
- Update User info.
- Schedule an interview with video chat (zoom/meet)
- Cancel, edit date (limit frame time) intreview details.
- View interviews history (general info about interview and interviewer reviews and feedback)
- Add review about user Satisfaction with the interview
### As an Interviewer
- Fill up a form related to the interview (Interview Experience, Specializtion, Categories (ex/ technical, non technical ), Available Slots to schedule)
- Update user info
- Cancel intreview details
- View interviews history
- Add review or rating after finish interview
### As an Admin
- Dashboard Page.
- Add Interviewer.
- Get and Delete all users.
### interviewee(user)
- Sign up
- Sign in
- Landing page
- about
- interviewers
- resourses
- start interview
- upcoming interviews
- review (testimonials)
- Profile
- history with reviews
- coming interview
- setting(info section)
- logout
- start interview
### interviewer:
- Sign in
- Landing page
- about/steps
- interviewers
- resourses
- Profile
- history with reviews
- coming interview
- setting(info section)
- Interviews date
- logout
### Admin:
- sign in
- create interviewer/delete/list
- users delete/list
### Routes
#### Frontend
- Nova.com/
- **/** , Homepage, Signup/Login Modal for users.
- **/login** , Login for interviewer.
- **/'username'/dashboard** , User Dashboard, Protected
- **/'username'/profile** , User Profile Settings, Protected
- **/'username'/history** , Interview History, Protected
- **/'username'/reviews** , Interview Reviews, Protected
- **/admin/dashboard** , Admin Dashboard, Protected
#### Backend
**/api/v1/** :
1. Figma Design (Decide pages)
2. Routes.
3. Database Schema.
### Hacker Rank API
https://www.hackerrank.com/work/apidocs#!/Introduction/options_intro_api
### Codewars api
https://dev.codewars.com/#get-code-challenge
-------------------------
* Back-End
- Login
- POST api/login
- POST api/admin/login
- Signup
- POST /api/signup
- Interviewers Profile
- Interviewee Profile
- GET /api/interviewees/intervieweeId(name, image, about, )
- POST api/interview (+ send an email)
- GET api/interview?status
- PATCH api/interview (+ send an email)
- DELETE api/interview (+ send an email)
- GET /api/interview/review?page=?&favorite
- PATCH /api/interview/review/interviewId (edit saved)
- PATCH api/interviewee
- PATCH api/interviewer
- POST api/interviewer/schedule
- Landing page
-
- Dashboard
- POST /api/logout
- GET /api/interviewers?page=&status=
- DELETE api/interviewers/interviewerId
- PATCH api/interviwers/interviewerId (send update status)
- POST api/interviewers (send data)
- GET api/interviewees?page=
- DELETE api/interviewees/intervieweeId
* Front-End
- Login
- form component
- admin login page
- Signup
- form component
- update profile popup
- Interviewers Profile
- Interviewee Profile
- users nav
- user info section (without btn in interviewe profile)
- interview component (without edit in interviewe profile)
- review component
- setting component
- profile tabs section
- start interview form
- add Interviwer form step 2
- add Interviwer form step 3
- add Interviwer form step 4 (calender)
- add Interviwer form step 5 (info + about + about the edit or the cancel)
- Interviewer available date section
- Landing page
- header component
- Interviwers component
- How Nova Practicing Works component
- We Provide section
- Join our team section
- resources section
- review about us
- companies section
- challenge section
- Dashboard
- Admin nav
- Footer
- table
- table section (title + table + pagination)
- Interviwer page
- Interviwer form
- add Interviwer form step 1
- add Interviwer form step 2
- add Interviwer form step 3
- Interviewee page
Landing Page:
- [ ] resources section
- [ ] review about us
- [ ] companies section
- [ ] challenge section
- [ ] add review from interviewer(from history)
---------------------------
Database Schema
Admin :
- Full Name
- Email
- Password
Interviewee :
- full_name
- email
- password
- about (optional)
- cv_url (optional)
- img_url (optional)
- is_verified (default: false)
- experience
- interviews = [
{
- interviewerId
- date
- time
- review
}
]
Interviewer :
- full_name
- email
- password
- about (optional)
- cv_url (optional)
- img_url (optional)
- status ['Pending', 'Accepted', 'Rejected'] default: 'Pending'
- experience
Week-1: figma + setup + database + Auth proccess(
sign up front + back
sign in front + back
user middleware + admin middleware
checkUser front (fetch user data in cookie )
fetch('/api/checkUser', check cookie + send its token )
)
- [ ] setup the project (file strucure + eslint + packages + server setup) --Abed
- [ ] setup database ---Mahmoud
- [ ] fake data --Abed
- [ ] sign up back + send verify email --Mahmoud
- [ ] verify back (update the state)
- [ ] login back POST() ---Abed
- [ ] user middleware --Manar
- [ ] admin middleware ---Manar
- [ ] checkUser route GET /api/checkUser Manar
- [ ]
- [ ] checkUSER FRONT --Abed /api/checkUser
- [ ] login user front --- Mahmoud
- [ ] login admin front --- Mahmoud
- [ ] Sign up front ---Manar
- [ ]
Week-2 interviewer profile
Week-3 interviewee profile
Week-4 landing page
-----------------------------
## Rules
### Work time & daily standup
- Manar
- Abed
- Mahmoud
- Raghad Mezied => `- 6 PM`
#### Daily standup
10:00
### Style Guide
- async/await, axios
- {message: , data:},
- {error: }
- TESTS
- Branch
- [ ] every branch relates to specific issue
- [ ] every branch linked to its issue.
- [ ] issueNumber-feature (ex: 2-login)
- [ ] commit changes early
- [ ] commit should be descriptive and not too short neither too long.
- [ ] create branch from main
- [ ] pull main frequentally
- PR
- [ ] while work not done open it with label `in progress`
- [ ] when work is done change label to `awaiting review`
- [ ] While PR approved change label to `done`, merge, close related-issue and delete branch.
- [ ] change issue label to `done`
- [ ] the one whose open the PR should merge it
- [ ] 3 approved requires to merge PR.
- [ ] PR should have suffecient, descriptive details.
(image of front component)
- [ ] git fetch `branch-name` locally, then check everything works as should it be.
- [ ] add comments to PR, So changes will be documented, change label to `request changes`.
- [ ] the one who request changes should resolve it.
- [ ] pre-commit to check tests and linting.
- labels
- awaiting-review
- to-do
- done
- front
- back
- route
- in-progress
- request changes
- files naming, variables: camelCase
- General rules
- all our folders should have `index.js`, every modules exported from.
- add comments to explan complex code.
- test every backend route. (supertest, unit test)
- destructre your vars.
- What to do early morning
- Review pending PR.
- share your updates, what are you working on, time you will spend on.
### Our UI
### colors and fonts type
**Font:**
**font-family:
**Colors:**
--------------------------------------
## **Issues template** :
## Backend issue:
Title should be: METHOD /full-route with labels Back, Route
### Description:
what route should do
### Protected: Yes/No
### Required middleWares:
### Request body:
```js
{
x: 'y'
}
```
### Validation:
```js
{
x: string.min(19)
}
```
### Response:
- Success - status code 200
```js
{
data: [{
id,
name ,
description,
...
}],
message:
}
```
- Failed - status code 400
```js
{
message: ''
}
```
### Tests:
200
400
401
----------------
## Front-end Issues
title should be: Name of the page with labels front, Route
### Description
`description`
* Route: ``'/'``
* Signed in only: `false`
* Admin only: `false`
### Screenshot:
Screenshot from figma
### Component:
### Props:### Nova
- to Help developers practice and pass technical interviews with the help of our professional interviewers.
- We have developers for many specialities.
### Tempaltes:
- https://www.pramp.com/#/
- https://blog.preplaced.in/top-mock-interview-websites/
- https://www.techmockinterview.com/
- https://mockmate.com/
- https://myinterviewpractice.com/
- https://www.mymockinterview.com/
- https://www.interviewbit.com/mock-interview/
- https://www.makeuseof.com/tag/mock-interview-websites/
- https://interviewing.io/
- http://www.gainlo.co/#!/
- https://interviewbuddy.in/#App
Landing:




![Uploading file..._l9ugqlln5]()
color => https://mockmate.com/about/
-
### Technologies :
- Node.js
- React
- Express
- TypeScript
## User Stories
### Homepage
- Sign up as a user()
- Log in as a interviewee/interviewer
- Log in as an admin
- Logout
### During Sign up
- Create account with personal information (Full Name, Email, Password)
- Fill up a form related to the interview I want to be asked in (Interview Experience (0 - 5)
#### 0 -> No Experience
#### 5 -> Professional
- About the user. (Input)
- CV Link (optional)
- Image Link (optional)
### Finished registering the user
After Sign up, before Assigning an interview.
#### Specializtion (One Option) :
- Frontend.
- Backend.
- Full Stack.
- Data Structure & Algorithm.
- Testing Automation.
- Security.
- Dev Ops.
#### Questions (Multiple Checks):
- Technical.
- Analytical.
- Algorithms.
- System Design.
#### Language to be interviewed with (One Option):
- JavaScript
- PHP
- C++
- C#
- Java
- C
- Go
- Python
- Ruby
#### Available Slots to schedule (One Option)
- Get the Time/Date where intervieweres are available based on user inputs.
- User Can only pick one at a time.
## Users Settings
### As a User
- Update User info.
- Schedule an interview with video chat (zoom/meet)
- Cancel, edit date (limit frame time) intreview details.
- View interviews history (general info about interview and interviewer reviews and feedback)
- Add review about user Satisfaction with the interview
### As an Interviewer
- Fill up a form related to the interview (Interview Experience, Specializtion, Categories (ex/ technical, non technical ), Available Slots to schedule)
- Update user info
- Cancel intreview details
- View interviews history
- Add review or rating after finish interview
### As an Admin
- Dashboard Page.
- Add Interviewer.
- Get and Delete all users.
### interviewee(user)
- Sign up
- Sign in
- Landing page
- about
- interviewers
- resourses
- start interview
- upcoming interviews
- review (testimonials)
- Profile
- history with reviews
- coming interview
- setting(info section)
- logout
- start interview
### interviewer:
- Sign in
- Landing page
- about/steps
- interviewers
- resourses
- Profile
- history with reviews
- coming interview
- setting(info section)
- Interviews date
- logout
### Admin:
- sign in
- create interviewer/delete/list
- users delete/list
### Routes
#### Frontend
- Nova.com/
- **/** , Homepage, Signup/Login Modal for users.
- **/login** , Login for interviewer.
- **/'username'/dashboard** , User Dashboard, Protected
- **/'username'/profile** , User Profile Settings, Protected
- **/'username'/history** , Interview History, Protected
- **/'username'/reviews** , Interview Reviews, Protected
- **/admin/dashboard** , Admin Dashboard, Protected
#### Backend
**/api/v1/** :
1. Figma Design (Decide pages)
2. Routes.
3. Database Schema.
### Hacker Rank API
https://www.hackerrank.com/work/apidocs#!/Introduction/options_intro_api
### Codewars api
https://dev.codewars.com/#get-code-challenge
-------------------------
* Back-End
- Login
- POST api/login
- POST api/admin/login
- Signup
- POST /api/signup
- Interviewers Profile
- Interviewee Profile
- GET /api/interviewees/intervieweeId(name, image, about, )
- POST api/interview (+ send an email)
- GET api/interview?status
- PATCH api/interview (+ send an email)
- DELETE api/interview (+ send an email)
- GET /api/interview/review?page=?&favorite
- PATCH /api/interview/review/interviewId (edit saved)
- PATCH api/interviewee
- PATCH api/interviewer
- POST api/interviewer/schedule
- Landing page
-
- Dashboard
- POST /api/logout
- GET /api/interviewers?page=&status=
- DELETE api/interviewers/interviewerId
- PATCH api/interviwers/interviewerId (send update status)
- POST api/interviewers (send data)
- GET api/interviewees?page=
- DELETE api/interviewees/intervieweeId
* Front-End
- Login
- form component
- admin login page
- Signup
- form component
- update profile popup
- Interviewers Profile
- Interviewee Profile
- users nav
- user info section (without btn in interviewe profile)
- interview component (without edit in interviewe profile)
- review component
- setting component
- profile tabs section
- start interview form
- add Interviwer form step 2
- add Interviwer form step 3
- add Interviwer form step 4 (calender)
- add Interviwer form step 5 (info + about + about the edit or the cancel)
- Interviewer available date section
- Landing page
- header component
- Interviwers component
- How Nova Practicing Works component
- We Provide section
- Join our team section
- resources section
- review about us
- companies section
- challenge section
- Dashboard
- Admin nav
- Footer
- table
- table section (title + table + pagination)
- Interviwer page
- Interviwer form
- add Interviwer form step 1
- add Interviwer form step 2
- add Interviwer form step 3
- Interviewee page
Landing Page:
- [ ] resources section
- [ ] review about us
- [ ] companies section
- [ ] challenge section
- [ ] add review from interviewer(from history)
---------------------------
Database Schema
Admin :
- Full Name
- Email
- Password
Interviewee :
- full_name
- email
- password
- about (optional)
- cv_url (optional)
- img_url (optional)
- is_verified (default: false)
- experience
- interviews = [
{
- interviewerId
- date
- time
- review
}
]
Interviewer :
- full_name
- email
- password
- about (optional)
- cv_url (optional)
- img_url (optional)
- status ['Pending', 'Accepted', 'Rejected'] default: 'Pending'
- experience
Week-1: figma + setup + database + Auth proccess(
sign up front + back
sign in front + back
user middleware + admin middleware
checkUser front (fetch user data in cookie )
fetch('/api/checkUser', check cookie + send its token )
)
- [ ] setup the project (file strucure + eslint + packages + server setup) --Abed
- [ ] setup database ---Mahmoud
- [ ] fake data --Abed
- [ ] sign up back + send verify email --Mahmoud
- [ ] verify back (update the state)
- [ ] login back POST() ---Abed
- [ ] user middleware --Manar
- [ ] admin middleware ---Manar
- [ ] checkUser route GET /api/checkUser Manar
- [ ]
- [ ] checkUSER FRONT --Abed /api/checkUser
- [ ] login user front --- Mahmoud
- [ ] login admin front --- Mahmoud
- [ ] Sign up front ---Manar
- [ ]
Week-2 interviewer profile
Week-3 interviewee profile
Week-4 landing page
-----------------------------
## Rules
### Work time & daily standup
- Manar
- Abed
- Mahmoud
- Raghad Mezied => `- 6 PM`
#### Daily standup
10:00
### Style Guide
- async/await, axios
- {message: , data:},
- {error: }
- TESTS
- Branch
- [ ] every branch relates to specific issue
- [ ] every branch linked to its issue.
- [ ] issueNumber-feature (ex: 2-login)
- [ ] commit changes early
- [ ] commit should be descriptive and not too short neither too long.
- [ ] create branch from main
- [ ] pull main frequentally
- PR
- [ ] while work not done open it with label `in progress`
- [ ] when work is done change label to `awaiting review`
- [ ] While PR approved change label to `done`, merge, close related-issue and delete branch.
- [ ] change issue label to `done`
- [ ] the one whose open the PR should merge it
- [ ] 3 approved requires to merge PR.
- [ ] PR should have suffecient, descriptive details.
(image of front component)
- [ ] git fetch `branch-name` locally, then check everything works as should it be.
- [ ] add comments to PR, So changes will be documented, change label to `request changes`.
- [ ] the one who request changes should resolve it.
- [ ] pre-commit to check tests and linting.
- labels
- awaiting-review
- to-do
- done
- front
- back
- route
- in-progress
- request changes
- files naming, variables: camelCase
- General rules
- all our folders should have `index.js`, every modules exported from.
- add comments to explan complex code.
- test every backend route. (supertest, unit test)
- destructre your vars.
- What to do early morning
- Review pending PR.
- share your updates, what are you working on, time you will spend on.
### Our UI
### colors and fonts type
**Font:**
**font-family:
**Colors:**
--------------------------------------
## **Issues template** :
## Backend issue:
Title should be: METHOD /full-route with labels Back, Route
### Description:
what route should do
### Protected: Yes/No
### Required middleWares:
### Request body:
```js
{
x: 'y'
}
```
### Validation:
```js
{
x: string.min(19)
}
```
### Response:
- Success - status code 200
```js
{
data: [{
id,
name ,
description,
...
}],
message:
}
```
- Failed - status code 400
```js
{
message: ''
}
```
### Tests:
200
400
401
----------------
## Front-end Issues
title should be: Name of the page with labels front, Route
### Description
`description`
* Route: ``'/'``
* Signed in only: `false`
* Admin only: `false`
### Screenshot:
Screenshot from figma
### Component:
### Props: