### 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: ![](https://i.imgur.com/jJS0xjJ.png) ![](https://i.imgur.com/4iBELoy.png) ![](https://i.imgur.com/1Xxm1DQ.png) ![](https://i.imgur.com/bq2lSsD.png) ![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: ![](https://i.imgur.com/jJS0xjJ.png) ![](https://i.imgur.com/4iBELoy.png) ![](https://i.imgur.com/1Xxm1DQ.png) ![](https://i.imgur.com/bq2lSsD.png) ![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: ![](https://i.imgur.com/jJS0xjJ.png) ![](https://i.imgur.com/4iBELoy.png) ![](https://i.imgur.com/1Xxm1DQ.png) ![](https://i.imgur.com/bq2lSsD.png) ![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: