diff --git a/src/App.tsx b/src/App.tsx
index 801d8e3a0e8309cf87d3a0c5f54c226dc5920831..facca47bdc9ca174ecee01b589b483096b197f1c 100644
--- a/src/App.tsx
+++ b/src/App.tsx
@@ -1,26 +1,26 @@
-import React, { FC, useEffect, useState } from 'react';
+import React, { FC } from 'react';
 import { ThemeProvider } from '@material-ui/core/styles';
 import { BrowserRouter as Router, Switch, Route } from 'react-router-dom';
-import { AuthUser } from 'components/AuthUser/AuthUser';
-import { LandingPage } from 'components/NonAuthUser/LandingPage/LandingPage';
-import { PrivateRoute } from 'components/PrivateRoute/PrivateRoute';
 import { AuthRoutes, NonAuthRoutes } from 'api/routes';
-import { NotFound } from 'components/NonAuthUser/NotFound/NotFound';
-import { ProfilePage } from 'components/AuthUser/Dashboard/ProfilePage/ProfilePage';
 import { Roles } from 'api/userRoles';
-import { Unauthorized } from 'components/NonAuthUser/Unauthorized/Unauthorized';
-import { HomePage } from 'components/AuthUser/Dashboard/HomePage/HomePage';
-import { AuthContext } from 'components/AuthUser/AuthContext';
 import { configDjangoCookieName } from 'api/configDjangoCookieName';
-import { Dashboard } from 'components/AuthUser/Dashboard/Dashboard';
-import { isAuthenticated } from 'api/isAuthenticated';
 import { muiTheme } from 'App.style';
-import { getRole } from 'api/getRole';
 import { withAuthorization } from 'components/Authorization/Authorization';
 import { useRole } from 'hooks/useRole';
 import { useAuth } from 'hooks/useAuth';
+import { AuthUser } from 'components/Auth/Auth';
+import { AuthContext } from 'components/Auth/AuthContext';
+import { Dashboard } from 'components/Dashboard/Dashboard';
+import { NotFound } from 'components/NotFound/NotFound';
+import { Unauthorized } from 'components/Unauthorized/Unauthorized';
+import { LandingPage } from 'components/LandingPage/LandingPage';
 
-const Personal = withAuthorization(Dashboard);
+const All = withAuthorization([
+  Roles.admin,
+  Roles.operator,
+  Roles.senior,
+  Roles.driver,
+]);
 
 /**
  * Entry point of the app.
@@ -39,16 +39,8 @@ export const App: FC = () => {
           <Router>
             <Switch>
               <Route exact path={NonAuthRoutes.home} component={LandingPage} />
-
               <Route path={NonAuthRoutes.auth} component={AuthUser} />
-              <Route
-                path={AuthRoutes.dashboard}
-                render={() => (
-                  <Personal
-                    allowedRoles={['admin', 'driver', 'senior', 'operator']}
-                  />
-                )}
-              />
+              <Route path={AuthRoutes.dashboard} component={All(Dashboard)} />
               <Route
                 path={NonAuthRoutes.unauthorized}
                 component={Unauthorized}
diff --git a/src/api/userRoles.ts b/src/api/userRoles.ts
index 1f7b30dbdd7631fbb0bd0eb1cc2642fe893b6635..77e66434cebfbba2299eafd90a537960766934c1 100644
--- a/src/api/userRoles.ts
+++ b/src/api/userRoles.ts
@@ -1,8 +1,9 @@
 export enum Roles {
   /** Website visitor, is not logged. Can access to NonAuthRoutes */
   visitor = '',
-  /** Can access to private and restricted routes depending on their permissions level. */
+  /** Can access to routes wrapped by withAuthorization. */
   senior = 'senior',
   admin = 'admin',
   operator = 'operator',
+  driver = 'driver',
 }
diff --git a/src/components/AuthUser/AuthUser.tsx b/src/components/Auth/Auth.tsx
similarity index 69%
rename from src/components/AuthUser/AuthUser.tsx
rename to src/components/Auth/Auth.tsx
index 2206e221488202e33fad82d0c84258812c9355f9..bd5dd6d8f45438dd7cc6eac1628953f7812e4360 100644
--- a/src/components/AuthUser/AuthUser.tsx
+++ b/src/components/Auth/Auth.tsx
@@ -2,10 +2,9 @@ import React, { FC } from 'react';
 import Container from '@material-ui/core/Container';
 import { Redirect, Route, useRouteMatch } from 'react-router-dom';
 import { AuthRoutes, NonAuthRoutes } from 'api/routes';
-import { SignInForm } from 'components/AuthUser/SignInForm/SignInForm';
-import { SignUpForm } from 'components/AuthUser/SignUpForm/SignUpForm';
-import { ChoseRole } from 'components/AuthUser/ChoseRole/ChoseRole';
-import { RestrictedRoute } from 'components/RestrictedRoute/RestrictedRoute';
+import { ChoseRole } from 'components/Auth/ChoseRole/ChoseRole';
+import { SignInForm } from 'components/Auth/SignInForm/SignInForm';
+import { SignUpForm } from 'components/Auth/SignUpForm/SignUpForm';
 
 /**
  * Keeps all components related to SignIn/SignOut logic.
diff --git a/src/components/AuthUser/AuthContext.tsx b/src/components/Auth/AuthContext.tsx
similarity index 100%
rename from src/components/AuthUser/AuthContext.tsx
rename to src/components/Auth/AuthContext.tsx
diff --git a/src/components/AuthUser/ChoseRole/ChoseRole.md b/src/components/Auth/ChoseRole/ChoseRole.md
similarity index 100%
rename from src/components/AuthUser/ChoseRole/ChoseRole.md
rename to src/components/Auth/ChoseRole/ChoseRole.md
diff --git a/src/components/AuthUser/ChoseRole/ChoseRole.test.tsx b/src/components/Auth/ChoseRole/ChoseRole.test.tsx
similarity index 100%
rename from src/components/AuthUser/ChoseRole/ChoseRole.test.tsx
rename to src/components/Auth/ChoseRole/ChoseRole.test.tsx
diff --git a/src/components/AuthUser/ChoseRole/ChoseRole.tsx b/src/components/Auth/ChoseRole/ChoseRole.tsx
similarity index 85%
rename from src/components/AuthUser/ChoseRole/ChoseRole.tsx
rename to src/components/Auth/ChoseRole/ChoseRole.tsx
index ce2688cef4be323d88f8f1377f84698f6924595f..334e2bbdf6582d738c62608511cfc49ff848b5f6 100644
--- a/src/components/AuthUser/ChoseRole/ChoseRole.tsx
+++ b/src/components/Auth/ChoseRole/ChoseRole.tsx
@@ -1,9 +1,10 @@
-import React, { FC, useEffect, useState } from 'react';
+import React, { FC, useContext, useEffect, useState } from 'react';
 import Button from '@material-ui/core/Button';
 import { getRoles } from 'api/getRoles';
 import { setRole } from 'api/setRole';
 import { useHistory } from 'react-router-dom';
 import { AuthRoutes } from 'api/routes';
+import { AuthContext } from 'components/Auth/AuthContext';
 
 /**
  * Page that let's users decide role between available roles.
@@ -13,10 +14,12 @@ import { AuthRoutes } from 'api/routes';
 export const ChoseRole: FC = () => {
   const history = useHistory();
   const [userRoles, setUserRoles] = useState<string[]>(['']);
+  const { setIsAuth } = useContext(AuthContext);
 
   const choseAndForward = (role: string): void => {
     // Set role in the server.
     setRole(role);
+    setIsAuth(true);
     // Push to homepage.
     history.push(`${AuthRoutes.dashboard}${AuthRoutes.home}`);
   };
diff --git a/src/components/AuthUser/InputField/InputField.md b/src/components/Auth/InputField/InputField.md
similarity index 100%
rename from src/components/AuthUser/InputField/InputField.md
rename to src/components/Auth/InputField/InputField.md
diff --git a/src/components/AuthUser/InputField/InputField.tsx b/src/components/Auth/InputField/InputField.tsx
similarity index 100%
rename from src/components/AuthUser/InputField/InputField.tsx
rename to src/components/Auth/InputField/InputField.tsx
diff --git a/src/components/AuthUser/SignInForm/CredentialsType.ts b/src/components/Auth/SignInForm/CredentialsType.ts
similarity index 100%
rename from src/components/AuthUser/SignInForm/CredentialsType.ts
rename to src/components/Auth/SignInForm/CredentialsType.ts
diff --git a/src/components/AuthUser/SignInForm/SignInForm.md b/src/components/Auth/SignInForm/SignInForm.md
similarity index 100%
rename from src/components/AuthUser/SignInForm/SignInForm.md
rename to src/components/Auth/SignInForm/SignInForm.md
diff --git a/src/components/AuthUser/SignInForm/SignInForm.test.tsx b/src/components/Auth/SignInForm/SignInForm.test.tsx
similarity index 100%
rename from src/components/AuthUser/SignInForm/SignInForm.test.tsx
rename to src/components/Auth/SignInForm/SignInForm.test.tsx
diff --git a/src/components/AuthUser/SignInForm/SignInForm.tsx b/src/components/Auth/SignInForm/SignInForm.tsx
similarity index 95%
rename from src/components/AuthUser/SignInForm/SignInForm.tsx
rename to src/components/Auth/SignInForm/SignInForm.tsx
index 8d9d8be38f17394c0182967a94ffea9639102b28..014067d7c675df9ccb60e8982fa18e44f5e04dcd 100644
--- a/src/components/AuthUser/SignInForm/SignInForm.tsx
+++ b/src/components/Auth/SignInForm/SignInForm.tsx
@@ -2,11 +2,11 @@ import React, { FC, useCallback, useContext, useState } from 'react';
 import axios from 'axios';
 import { SubmitHandler, useForm } from 'react-hook-form';
 import { Button } from '@material-ui/core';
-import { InputField } from 'components/AuthUser/InputField/InputField';
 import { useHistory } from 'react-router-dom';
 import { AuthRoutes, NonAuthRoutes } from 'api/routes';
-import { AuthContext } from 'components/AuthUser/AuthContext';
 import { fetchCookie } from 'api/fetchCookie';
+import { AuthContext } from 'components/Auth/AuthContext';
+import { InputField } from 'components/Auth/InputField/InputField';
 import { useStyles } from './useStyles';
 import { CredentialsType } from './CredentialsType';
 
diff --git a/src/components/AuthUser/SignInForm/postCredentials.ts b/src/components/Auth/SignInForm/postCredentials.ts
similarity index 100%
rename from src/components/AuthUser/SignInForm/postCredentials.ts
rename to src/components/Auth/SignInForm/postCredentials.ts
diff --git a/src/components/AuthUser/SignInForm/useStyles.ts b/src/components/Auth/SignInForm/useStyles.ts
similarity index 100%
rename from src/components/AuthUser/SignInForm/useStyles.ts
rename to src/components/Auth/SignInForm/useStyles.ts
diff --git a/src/components/AuthUser/SignUpForm/SignUpForm.md b/src/components/Auth/SignUpForm/SignUpForm.md
similarity index 100%
rename from src/components/AuthUser/SignUpForm/SignUpForm.md
rename to src/components/Auth/SignUpForm/SignUpForm.md
diff --git a/src/components/AuthUser/SignUpForm/SignUpForm.test.tsx b/src/components/Auth/SignUpForm/SignUpForm.test.tsx
similarity index 100%
rename from src/components/AuthUser/SignUpForm/SignUpForm.test.tsx
rename to src/components/Auth/SignUpForm/SignUpForm.test.tsx
diff --git a/src/components/AuthUser/SignUpForm/SignUpForm.tsx b/src/components/Auth/SignUpForm/SignUpForm.tsx
similarity index 97%
rename from src/components/AuthUser/SignUpForm/SignUpForm.tsx
rename to src/components/Auth/SignUpForm/SignUpForm.tsx
index 0cf10dcf6197041be8469483c4536807e9956ec7..055cb9dfd6a65782251a65b9cd08e28ab8b34e0c 100644
--- a/src/components/AuthUser/SignUpForm/SignUpForm.tsx
+++ b/src/components/Auth/SignUpForm/SignUpForm.tsx
@@ -1,9 +1,10 @@
 import React, { FC } from 'react';
 import { SubmitHandler, useForm } from 'react-hook-form';
 import { Button } from '@material-ui/core';
-import { InputField } from 'components/AuthUser/InputField/InputField';
-import { useStyles } from 'components/AuthUser/SignUpForm/useStyles';
+
 import axios from 'axios';
+import { InputField } from 'components/Auth/InputField/InputField';
+import { useStyles } from 'components/Auth/SignUpForm/useStyles';
 // TODO: Data validation
 // TODO: Replace notes with big input field
 export const SignUpForm: FC = () => {
diff --git a/src/components/AuthUser/SignUpForm/useStyles.ts b/src/components/Auth/SignUpForm/useStyles.ts
similarity index 100%
rename from src/components/AuthUser/SignUpForm/useStyles.ts
rename to src/components/Auth/SignUpForm/useStyles.ts
diff --git a/src/components/Authorization/Authorization.tsx b/src/components/Authorization/Authorization.tsx
index f00d076bf5d28f823a7c39740064483a75d13445..08db3cea5572ddc10184b44cece73f59e49e5ce7 100644
--- a/src/components/Authorization/Authorization.tsx
+++ b/src/components/Authorization/Authorization.tsx
@@ -1,12 +1,9 @@
 import React, { ComponentType, FC, useContext } from 'react';
 import { BlurCircular } from '@material-ui/icons';
 import { NonAuthRoutes } from 'api/routes';
-import { AuthContext } from 'components/AuthUser/AuthContext';
-import { Unauthorized } from 'components/NonAuthUser/Unauthorized/Unauthorized';
-import { useAuth } from 'hooks/useAuth';
-import { useRole } from 'hooks/useRole';
 import { Redirect } from 'react-router-dom';
-import { CircularProgressClassKey } from '@material-ui/core';
+import { Unauthorized } from 'components/Unauthorized/Unauthorized';
+import { AuthContext } from 'components/Auth/AuthContext';
 
 const HandleIsAuth: FC<{ isAuth: boolean }> = ({ isAuth }) =>
   isAuth ? (
@@ -21,10 +18,6 @@ interface WithAuthProps {
   allowedRoles: string[];
 }
 
-interface Props extends WithAuthProps {
-  children: React.ReactNode;
-}
-
 /* eslint-disable react/jsx-props-no-spreading */
 /**
  *
@@ -32,20 +25,21 @@ interface Props extends WithAuthProps {
  * This creates a "personal area" in the working implementation.
  * @returns {FC<T>} wrapped component.
  */
-export const withAuthorization = <T extends WithAuthProps = WithAuthProps>(
+
+export const withAuthorization = (allowedRoles: string[]) => <
+  T extends WithAuthProps = WithAuthProps
+>(
   WrappedComponent: React.ComponentType<T>,
 ): FC<T> => {
   // Creating the inner component. The calculated Props type here is the where the magic happens.
   const ComponentWithAuthorization: FC<T> = (
     props: Omit<T, keyof WithAuthProps>,
   ) => {
-    const { allowedRoles } = props as T;
-
     const { role, isAuth } = useContext(AuthContext);
     console.log(`ROLE ${role} AUTH ${isAuth}`);
 
     /* eslint-disable no-nested-ternary */
-    return typeof isAuth === null || role === null ? (
+    return typeof isAuth === null && role === null ? (
       <BlurCircular />
     ) : // props comes afterwards so the can override the default ones.
     allowedRoles.includes(role) && isAuth ? (
diff --git a/src/components/AuthUser/Dashboard/Dashboard.tsx b/src/components/Dashboard/Dashboard.tsx
similarity index 68%
rename from src/components/AuthUser/Dashboard/Dashboard.tsx
rename to src/components/Dashboard/Dashboard.tsx
index 5e0c5895bc303b31e5becefb0f61fa023d9bc9c3..4453cc5ef571c2c7d356fce1bf1579767f11c72a 100644
--- a/src/components/AuthUser/Dashboard/Dashboard.tsx
+++ b/src/components/Dashboard/Dashboard.tsx
@@ -2,9 +2,9 @@ import React, { FC } from 'react';
 import Container from '@material-ui/core/Container';
 import { Route, useRouteMatch } from 'react-router-dom';
 import { AuthRoutes } from 'api/routes';
-import { HomePage } from 'components/AuthUser/Dashboard/HomePage/HomePage';
-import { ProfilePage } from 'components/AuthUser/Dashboard/ProfilePage/ProfilePage';
-import { ReservationPage } from 'components/AuthUser/Dashboard/ReservationPage/ReservationPage';
+import { HomePage } from './HomePage/HomePage';
+import { ProfilePage } from './ProfilePage/ProfilePage';
+import { ReservationPage } from './ReservationPage/ReservationPage';
 
 export const Dashboard: FC = () => {
   const { path } = useRouteMatch();
diff --git a/src/components/AuthUser/Dashboard/HomePage/HomePage.tsx b/src/components/Dashboard/HomePage/HomePage.tsx
similarity index 85%
rename from src/components/AuthUser/Dashboard/HomePage/HomePage.tsx
rename to src/components/Dashboard/HomePage/HomePage.tsx
index 49e246d6dd5795cf7e1f523bf0d967eff06fc57a..f472faaa7462563dcbbe01f4af7492996a383fea 100644
--- a/src/components/AuthUser/Dashboard/HomePage/HomePage.tsx
+++ b/src/components/Dashboard/HomePage/HomePage.tsx
@@ -10,12 +10,11 @@ import {
   MuiThemeProvider,
   Container,
 } from '@material-ui/core';
-import { MapElement } from 'components/AuthUser/Dashboard/HomePage/MapElement';
-import { NavBarLogin } from 'components/AuthUser/Dashboard/HomePage/NavBarLogin';
-import { Numbers } from 'components/AuthUser/Dashboard/HomePage/Numbers';
-import { Steps } from 'components/AuthUser/Dashboard/HomePage/Steps';
-import { NavBar } from 'components/AuthUser/Dashboard/HomePage/NavBar';
-import { Reservation } from 'components/AuthUser/Dashboard/ReservationPage/Reservation/Reservation';
+import { MapElement } from 'components/Dashboard/HomePage/MapElement';
+import { NavBar } from 'components/Dashboard/HomePage/NavBar';
+import { Numbers } from 'components/Dashboard/HomePage/Numbers';
+import { Steps } from 'components/Dashboard/HomePage/Steps';
+import { Reservation } from '../ReservationPage/Reservation/Reservation';
 
 let themeResp = createMuiTheme();
 themeResp = responsiveFontSizes(themeResp);
diff --git a/src/components/AuthUser/Dashboard/HomePage/MapElement.tsx b/src/components/Dashboard/HomePage/MapElement.tsx
similarity index 100%
rename from src/components/AuthUser/Dashboard/HomePage/MapElement.tsx
rename to src/components/Dashboard/HomePage/MapElement.tsx
diff --git a/src/components/AuthUser/Dashboard/HomePage/NavBar.tsx b/src/components/Dashboard/HomePage/NavBar.tsx
similarity index 100%
rename from src/components/AuthUser/Dashboard/HomePage/NavBar.tsx
rename to src/components/Dashboard/HomePage/NavBar.tsx
diff --git a/src/components/AuthUser/Dashboard/HomePage/NavBarLogin.tsx b/src/components/Dashboard/HomePage/NavBarLogin.tsx
similarity index 89%
rename from src/components/AuthUser/Dashboard/HomePage/NavBarLogin.tsx
rename to src/components/Dashboard/HomePage/NavBarLogin.tsx
index b81244dc57a0854d76edbd50dd069e58e6286f93..e37413e0ddd4d1cd44a60f9eb517e09c0560ee5e 100644
--- a/src/components/AuthUser/Dashboard/HomePage/NavBarLogin.tsx
+++ b/src/components/Dashboard/HomePage/NavBarLogin.tsx
@@ -3,8 +3,8 @@ import { makeStyles } from '@material-ui/core/styles';
 import { Tabs, Tab } from '@material-ui/core';
 import LockIcon from '@material-ui/icons/Lock';
 
-import { Link, useHistory } from 'react-router-dom';
-import { NonAuthRoutes } from 'api/routes';
+import { useHistory } from 'react-router-dom';
+import { AuthRoutes } from 'api/routes';
 
 const useStyles = makeStyles(() => ({
   tabs: {
@@ -53,7 +53,7 @@ export const NavBarLogin: FC = () => {
       TabIndicatorProps={{ style: { display: 'none' } }}
     >
       <Tab
-        value={`/auth${NonAuthRoutes.signIn}`}
+        value={`${AuthRoutes.dashboard}${AuthRoutes.home}`}
         label="Login"
         icon={<LockIcon className={classes.tabIcon} />}
         className={`${classes.tabPan} ${classes.rightAlign}`}
diff --git a/src/components/AuthUser/Dashboard/HomePage/Numbers.tsx b/src/components/Dashboard/HomePage/Numbers.tsx
similarity index 100%
rename from src/components/AuthUser/Dashboard/HomePage/Numbers.tsx
rename to src/components/Dashboard/HomePage/Numbers.tsx
diff --git a/src/components/AuthUser/Dashboard/HomePage/Steps.tsx b/src/components/Dashboard/HomePage/Steps.tsx
similarity index 100%
rename from src/components/AuthUser/Dashboard/HomePage/Steps.tsx
rename to src/components/Dashboard/HomePage/Steps.tsx
diff --git a/src/components/AuthUser/Dashboard/ProfilePage/ProfilePage.md b/src/components/Dashboard/ProfilePage/ProfilePage.md
similarity index 100%
rename from src/components/AuthUser/Dashboard/ProfilePage/ProfilePage.md
rename to src/components/Dashboard/ProfilePage/ProfilePage.md
diff --git a/src/components/AuthUser/Dashboard/ProfilePage/ProfilePage.test.tsx b/src/components/Dashboard/ProfilePage/ProfilePage.test.tsx
similarity index 100%
rename from src/components/AuthUser/Dashboard/ProfilePage/ProfilePage.test.tsx
rename to src/components/Dashboard/ProfilePage/ProfilePage.test.tsx
diff --git a/src/components/AuthUser/Dashboard/ProfilePage/ProfilePage.tsx b/src/components/Dashboard/ProfilePage/ProfilePage.tsx
similarity index 60%
rename from src/components/AuthUser/Dashboard/ProfilePage/ProfilePage.tsx
rename to src/components/Dashboard/ProfilePage/ProfilePage.tsx
index 1f52c2442fb1a57c1f610d1348f6f32fa05fb228..2856a225f1f4fe806dece906f90bbd143a6f30a3 100644
--- a/src/components/AuthUser/Dashboard/ProfilePage/ProfilePage.tsx
+++ b/src/components/Dashboard/ProfilePage/ProfilePage.tsx
@@ -1,16 +1,18 @@
-import React, { FC } from 'react';
+import React, { FC, useContext } from 'react';
 import Button from '@material-ui/core/Button';
 import axios from 'axios';
 import { NonAuthRoutes } from 'api/routes';
 import { useHistory } from 'react-router-dom';
+import { AuthContext } from 'components/Auth/AuthContext';
 
 export const ProfilePage: FC = () => {
   const history = useHistory();
-
+  const { setIsAuth } = useContext(AuthContext);
   const logout = (): void => {
-    axios
-      .get('/api/web/login/logout')
-      .then(() => history.replace(NonAuthRoutes.home));
+    axios.get('/api/web/login/logout').then(() => {
+      setIsAuth(false);
+      history.replace(NonAuthRoutes.home);
+    });
   };
 
   return (
diff --git a/src/components/AuthUser/Dashboard/ReservationPage/Reservation/Reservation.tsx b/src/components/Dashboard/ReservationPage/Reservation/Reservation.tsx
similarity index 100%
rename from src/components/AuthUser/Dashboard/ReservationPage/Reservation/Reservation.tsx
rename to src/components/Dashboard/ReservationPage/Reservation/Reservation.tsx
diff --git a/src/components/AuthUser/Dashboard/ReservationPage/ReservationPage.test.tsx b/src/components/Dashboard/ReservationPage/ReservationPage.test.tsx
similarity index 100%
rename from src/components/AuthUser/Dashboard/ReservationPage/ReservationPage.test.tsx
rename to src/components/Dashboard/ReservationPage/ReservationPage.test.tsx
diff --git a/src/components/AuthUser/Dashboard/ReservationPage/ReservationPage.tsx b/src/components/Dashboard/ReservationPage/ReservationPage.tsx
similarity index 97%
rename from src/components/AuthUser/Dashboard/ReservationPage/ReservationPage.tsx
rename to src/components/Dashboard/ReservationPage/ReservationPage.tsx
index 9e176c0334e8f86cf95391893e51a7d4676c8a48..a1672f155d13655f89eda368246cdad5d29f34fe 100644
--- a/src/components/AuthUser/Dashboard/ReservationPage/ReservationPage.tsx
+++ b/src/components/Dashboard/ReservationPage/ReservationPage.tsx
@@ -19,8 +19,8 @@ import {
 import AddIcon from '@material-ui/icons/Add';
 import Fab from '@material-ui/core/Fab';
 
-import { Reservation } from 'components/AuthUser/Dashboard/ReservationPage/Reservation/Reservation';
-import { NavBar } from '../HomePage/NavBar';
+import { NavBar } from 'components/Dashboard/HomePage/NavBar';
+import { Reservation } from 'components/Dashboard/ReservationPage/Reservation/Reservation';
 
 let themeResp = createMuiTheme();
 themeResp = responsiveFontSizes(themeResp);
diff --git a/src/components/NonAuthUser/LandingPage/LandingPage.tsx b/src/components/LandingPage/LandingPage.tsx
similarity index 88%
rename from src/components/NonAuthUser/LandingPage/LandingPage.tsx
rename to src/components/LandingPage/LandingPage.tsx
index 2e7dc1da878f0f7f843f23ce9130b935d23c8319..1a07d866636cbadb0848e971b2cf94d64b090241 100644
--- a/src/components/NonAuthUser/LandingPage/LandingPage.tsx
+++ b/src/components/LandingPage/LandingPage.tsx
@@ -10,10 +10,10 @@ import {
   MuiThemeProvider,
   Container,
 } from '@material-ui/core';
-import { MapElement } from 'components/AuthUser/Dashboard/HomePage/MapElement';
-import { NavBarLogin } from 'components/AuthUser/Dashboard/HomePage/NavBarLogin';
-import { Numbers } from 'components/AuthUser/Dashboard/HomePage/Numbers';
-import { Steps } from 'components/AuthUser/Dashboard/HomePage/Steps';
+import { MapElement } from 'components/Dashboard/HomePage/MapElement';
+import { NavBarLogin } from 'components/Dashboard/HomePage/NavBarLogin';
+import { Numbers } from 'components/Dashboard/HomePage/Numbers';
+import { Steps } from 'components/Dashboard/HomePage/Steps';
 
 let themeResp = createMuiTheme();
 themeResp = responsiveFontSizes(themeResp);
diff --git a/src/components/NonAuthUser/LandingPage/TeamPage.tsx b/src/components/NonAuthUser/LandingPage/TeamPage.tsx
deleted file mode 100644
index b0a945e8347fdc1b4c1027ea1cf3a03df91eb95d..0000000000000000000000000000000000000000
--- a/src/components/NonAuthUser/LandingPage/TeamPage.tsx
+++ /dev/null
@@ -1,86 +0,0 @@
-import React, { FC } from 'react';
-
-export const TeamPage: FC = () => (
-  <>
-    <section>
-      <h2>These are the students of the MoveAid project</h2>
-
-      <div>
-        <h3>Alberto Defendi</h3>
-        <table>
-          <tr>
-            <td> </td>
-            <td>
-              <p>
-                Age: 19 <br />
-                Role: Front End Developer
-                <br />
-                Hobbys: Sports, maths
-                <br />
-              </p>
-            </td>
-          </tr>
-        </table>
-      </div>
-
-      <div>
-        <h3>Andrea Esposito</h3>
-        <table>
-          <tr>
-            <td> </td>
-            <td>
-              <p>
-                Age: 19 <br />
-                Role: xxxxx
-                <br />
-                Hobbys: xxxxxxxxx
-                <br />
-              </p>
-            </td>
-          </tr>
-        </table>
-      </div>
-
-      <div>
-        <h3>Marco Marinello</h3>
-        <table>
-          <tr>
-            <td> </td>
-            <td>
-              <p>
-                Age: 19 <br />
-                Role: xxxxx
-                <br />
-                Hobbys: xxxxxxxxx
-                <br />
-              </p>
-            </td>
-          </tr>
-        </table>
-      </div>
-
-      <div>
-        <h3>Francesco Mazzini</h3>
-        <table>
-          <tr>
-            <td> </td>
-            <td>
-              <p>
-                <strong>Age:</strong> 19 <br />
-                <br />
-                <strong>Role:</strong> Front End Developer
-                <br />
-                <br />
-                <strong>Hobbys:</strong> I like Graphic and Programing.
-                <br />
-                I also like playing videogames, hanging out <br />
-                with friends, watching tv series and <br />
-                training in gym!
-              </p>
-            </td>
-          </tr>
-        </table>
-      </div>
-    </section>
-  </>
-);
diff --git a/src/components/NonAuthUser/LandingPage/assets/alberto.png b/src/components/NonAuthUser/LandingPage/assets/alberto.png
deleted file mode 100644
index a4030b2bda405381ab60d5ba68b7ea7c057ebefe..0000000000000000000000000000000000000000
Binary files a/src/components/NonAuthUser/LandingPage/assets/alberto.png and /dev/null differ
diff --git a/src/components/NonAuthUser/LandingPage/assets/logo04Circle.png b/src/components/NonAuthUser/LandingPage/assets/logo04Circle.png
deleted file mode 100644
index 4e5a76b9f51d9580a7f6b6b78f076f0a4a821f48..0000000000000000000000000000000000000000
Binary files a/src/components/NonAuthUser/LandingPage/assets/logo04Circle.png and /dev/null differ
diff --git a/src/components/NonAuthUser/LandingPage/assets/pp.jpg b/src/components/NonAuthUser/LandingPage/assets/pp.jpg
deleted file mode 100644
index 593205f4d623a459904abdcfb13c8517e4ccf666..0000000000000000000000000000000000000000
Binary files a/src/components/NonAuthUser/LandingPage/assets/pp.jpg and /dev/null differ
diff --git a/src/components/NonAuthUser/NotFound/NotFound.md b/src/components/NotFound/NotFound.md
similarity index 100%
rename from src/components/NonAuthUser/NotFound/NotFound.md
rename to src/components/NotFound/NotFound.md
diff --git a/src/components/NonAuthUser/NotFound/NotFound.test.tsx b/src/components/NotFound/NotFound.test.tsx
similarity index 100%
rename from src/components/NonAuthUser/NotFound/NotFound.test.tsx
rename to src/components/NotFound/NotFound.test.tsx
diff --git a/src/components/NonAuthUser/NotFound/NotFound.tsx b/src/components/NotFound/NotFound.tsx
similarity index 100%
rename from src/components/NonAuthUser/NotFound/NotFound.tsx
rename to src/components/NotFound/NotFound.tsx
diff --git a/src/components/PrivateRoute/PrivateRoute.tsx b/src/components/PrivateRoute/PrivateRoute.tsx
deleted file mode 100644
index 6360e711b17e388405f7fec0a82d473278919ce0..0000000000000000000000000000000000000000
--- a/src/components/PrivateRoute/PrivateRoute.tsx
+++ /dev/null
@@ -1,54 +0,0 @@
-import React, { useContext } from 'react';
-import { Route, Redirect, RouteProps } from 'react-router-dom';
-import { NonAuthRoutes } from 'api/routes';
-import { AuthContext } from 'components/AuthUser/AuthContext';
-
-/**
- * A wrapper for <Route> that redirects to the login screen if you're not yet authenticated.
- * Every non-public route must be wrapped with this component.
- * */
-type Props = {
-  Component: React.FC<RouteProps>;
-  path: string;
-  requiredRoles: string[];
-};
-
-/* eslint-disable react/jsx-props-no-spreading */
-export const PrivateRoute = ({
-  Component,
-  path,
-  requiredRoles,
-}: Props): JSX.Element => {
-  const { role, isAuth } = useContext(AuthContext);
-
-  // Check if the role is contained in the roles array (passed as props).
-  const userHasRequiredRole = requiredRoles.includes(role);
-
-  const message = userHasRequiredRole
-    ? 'Please log in to view this page'
-    : 'Your role is not allowed';
-
-  return (
-    <Route
-      exact={false}
-      path={path}
-      render={(props: RouteProps) =>
-        isAuth && userHasRequiredRole ? (
-          <Component {...props} />
-        ) : (
-          <Redirect
-            to={{
-              pathname: !userHasRequiredRole
-                ? `${NonAuthRoutes.auth}${NonAuthRoutes.signIn}`
-                : NonAuthRoutes.unauthorized,
-              state: {
-                message,
-                requestedPath: path,
-              },
-            }}
-          />
-        )
-      }
-    />
-  );
-};
diff --git a/src/components/RestrictedRoute/RestrictedRoute.tsx b/src/components/RestrictedRoute/RestrictedRoute.tsx
deleted file mode 100644
index 2f10632cba2b63271465c060ef4758144e250ea0..0000000000000000000000000000000000000000
--- a/src/components/RestrictedRoute/RestrictedRoute.tsx
+++ /dev/null
@@ -1,51 +0,0 @@
-import React, { useState, useEffect } from 'react';
-import { Route, Redirect, RouteProps } from 'react-router-dom';
-import { AuthRoutes } from 'api/routes';
-import { isAuthenticated } from 'api/isAuthenticated';
-import { CircularProgress } from '@material-ui/core';
-
-type Props = {
-  /** Children where the authenticated user will be redirected. */
-  Component: React.FC<RouteProps>;
-  /** Path of the children. */
-  path: string;
-};
-
-/**
- * Wrapper for Route that basing on if the user is authenticated,
- * redirects to:
- * - Entry point of the private route (the homepage);
- * - Login page.
- */
-
-/* eslint-disable react/jsx-props-no-spreading */
-export const RestrictedRoute = ({ Component, path }: Props): JSX.Element => {
-  const [isAuth, setIsAuth] = useState<boolean>(false);
-  const [isLoading, setLoading] = useState<boolean>(false);
-
-  useEffect(() => {
-    isAuthenticated().then((res) => {
-      setIsAuth(res);
-      setLoading(true);
-    });
-  }, [isAuth, setLoading]);
-
-  return !isLoading ? (
-    <CircularProgress />
-  ) : (
-    <Route
-      path={path}
-      render={(props: RouteProps) =>
-        !isAuth ? (
-          // Redirect to component.
-          <Component {...props} />
-        ) : (
-          // Redirect to homepage.
-          <Redirect
-            to={{ pathname: `${AuthRoutes.dashboard}${AuthRoutes.home}` }}
-          />
-        )
-      }
-    />
-  );
-};
diff --git a/src/components/NonAuthUser/Unauthorized/Unauthorized.md b/src/components/Unauthorized/Unauthorized.md
similarity index 100%
rename from src/components/NonAuthUser/Unauthorized/Unauthorized.md
rename to src/components/Unauthorized/Unauthorized.md
diff --git a/src/components/NonAuthUser/Unauthorized/Unauthorized.test.tsx b/src/components/Unauthorized/Unauthorized.test.tsx
similarity index 100%
rename from src/components/NonAuthUser/Unauthorized/Unauthorized.test.tsx
rename to src/components/Unauthorized/Unauthorized.test.tsx
diff --git a/src/components/NonAuthUser/Unauthorized/Unauthorized.tsx b/src/components/Unauthorized/Unauthorized.tsx
similarity index 100%
rename from src/components/NonAuthUser/Unauthorized/Unauthorized.tsx
rename to src/components/Unauthorized/Unauthorized.tsx