diff --git a/ui/public/images/image_1.jpg b/ui/public/images/image_1.jpg new file mode 100644 index 0000000..ab8e9d2 Binary files /dev/null and b/ui/public/images/image_1.jpg differ diff --git a/ui/public/images/image_2.jpg b/ui/public/images/image_2.jpg new file mode 100644 index 0000000..65a7cba Binary files /dev/null and b/ui/public/images/image_2.jpg differ diff --git a/ui/public/images/image_3.jpg b/ui/public/images/image_3.jpg new file mode 100644 index 0000000..59778f7 Binary files /dev/null and b/ui/public/images/image_3.jpg differ diff --git a/ui/public/images/image_4.jpg b/ui/public/images/image_4.jpg new file mode 100644 index 0000000..789c7ba Binary files /dev/null and b/ui/public/images/image_4.jpg differ diff --git a/ui/public/images/showcase.jpg b/ui/public/images/showcase.jpg new file mode 100644 index 0000000..f23d4fc Binary files /dev/null and b/ui/public/images/showcase.jpg differ diff --git a/ui/src/App.js b/ui/src/App.js index a21dbfe..712c517 100644 --- a/ui/src/App.js +++ b/ui/src/App.js @@ -1,12 +1,26 @@ import { BrowserRouter as Router, Route, Routes } from 'react-router-dom'; import Layout from './components/Layout'; + import HomePage from './pages/HomePage'; -import LoginPage from './pages/LoginPage'; -import RegisterPage from './pages/RegisterPage'; import AboutPage from './pages/AboutPage'; -import BootcampsPage from './pages/BootcampsPage'; -import AddBootcampPage from './pages/AddBootcampPage'; -import AddReviewPage from './pages/AddReviewPage'; +import NotFoundPage from './pages/NotFoundPage'; + +import LoginPage from './pages/user/LoginPage'; +import RegisterPage from './pages/user/RegisterPage'; +import UserDetailsPage from './pages/user/UserDetailsPage'; + +import BootcampsPage from './pages/bootcamps/BootcampsPage'; +import BootcampDetailsPage from './pages/bootcamps/BootcampDetailsPage'; + +import ManageBootcampPage from './pages/bootcamps/ManageBootcampPage'; +import AddBootcampPage from './pages/bootcamps/AddBootcampPage'; + +import ManageCoursesPage from './pages/bootcamps/ManageCoursesPage'; +import AddCoursePage from './pages/bootcamps/AddCoursePage'; + +import BootcampReviewsPage from './pages/bootcamps/BootcampReviewsPage'; +import ManageReviewsPage from './pages/bootcamps/ManageReviewsPage'; +import AddReviewPage from './pages/bootcamps/AddReviewPage'; function App() { return ( @@ -14,13 +28,21 @@ function App() {
- } /> - } /> - } /> + } /> } /> + } /> + } /> + } /> } /> + } /> } /> + } /> + } /> + } /> + } /> + } />{' '} } /> + } />
diff --git a/ui/src/components/Bootcamp.jsx b/ui/src/components/Bootcamp.jsx new file mode 100644 index 0000000..f35fbec --- /dev/null +++ b/ui/src/components/Bootcamp.jsx @@ -0,0 +1,30 @@ +import { Link } from 'react-router-dom'; +import { Image } from 'react-bootstrap'; + +const Bootcamp = (props) => { + const { image, name, rating, location, careers, id } = props.bootcamp; + + return ( +
+
+
+ {name} +
+
+
+
+ + {name} + {rating} + +
+ {location} +

{careers.join(', ')}

+
+
+
+
+ ); +}; + +export default Bootcamp; diff --git a/ui/src/components/Pagination.jsx b/ui/src/components/Pagination.jsx new file mode 100644 index 0000000..811b1a1 --- /dev/null +++ b/ui/src/components/Pagination.jsx @@ -0,0 +1,35 @@ +const Pagination = () => { + return ( + + ); +}; + +export default Pagination; diff --git a/ui/src/pages/BootcampsPage.jsx b/ui/src/pages/BootcampsPage.jsx deleted file mode 100644 index 905103d..0000000 --- a/ui/src/pages/BootcampsPage.jsx +++ /dev/null @@ -1,196 +0,0 @@ -const BrowseBootcampsPage = () => { - return ( -
-
-
- {/* */} -
-
-

By Location

-
-
-
-
- -
-
-
-
- -
-
-
- -
-
- -

Filter

-
- {/* */} - -
- - -
- -
- - -
- -
-
- {/* */} -
- {/* */} -
-
-
- ... -
-
-
-
- - Devworks Bootcamp - 8.8 - -
- Boston, MA -

Web Development, UI/UX, Mobile Development

-
-
-
-
- -
-
-
- ... -
-
-
-
- - ModernTech Bootcamp - 7.5 - -
- Boston, MA -

Web Development, UI/UX, Mobile Development

-
-
-
-
-
-
-
- ... -
-
-
-
- - Codemasters - 9.2 - -
- Burlington, VT -

Web Development, Data Science, Marketing

-
-
-
-
- -
-
-
- ... -
-
-
-
- - DevCentral Bootcamp - 6.4 - -
- Kingston, RI -

Web Development, UI/UX, Mobile Development, Marketing

-
-
-
-
- - {/* */} - -
-
-
-
- ); -}; - -export default BrowseBootcampsPage; diff --git a/ui/src/pages/NotFoundPage.jsx b/ui/src/pages/NotFoundPage.jsx new file mode 100644 index 0000000..2a396ef --- /dev/null +++ b/ui/src/pages/NotFoundPage.jsx @@ -0,0 +1,5 @@ +const NotFoundPage = () => { + return
Not Found Page
; +}; + +export default NotFoundPage; diff --git a/ui/src/pages/AddBootcampPage.jsx b/ui/src/pages/bootcamps/AddBootcampPage.jsx similarity index 100% rename from ui/src/pages/AddBootcampPage.jsx rename to ui/src/pages/bootcamps/AddBootcampPage.jsx diff --git a/ui/src/pages/bootcamps/AddCoursePage.jsx b/ui/src/pages/bootcamps/AddCoursePage.jsx new file mode 100644 index 0000000..9d69b10 --- /dev/null +++ b/ui/src/pages/bootcamps/AddCoursePage.jsx @@ -0,0 +1,5 @@ +const AddCoursePage = () => { + return
Add Course Page
; +}; + +export default AddCoursePage; diff --git a/ui/src/pages/AddReviewPage.jsx b/ui/src/pages/bootcamps/AddReviewPage.jsx similarity index 100% rename from ui/src/pages/AddReviewPage.jsx rename to ui/src/pages/bootcamps/AddReviewPage.jsx diff --git a/ui/src/pages/bootcamps/BootcampDetailsPage.jsx b/ui/src/pages/bootcamps/BootcampDetailsPage.jsx new file mode 100644 index 0000000..828e554 --- /dev/null +++ b/ui/src/pages/bootcamps/BootcampDetailsPage.jsx @@ -0,0 +1,5 @@ +const BootcampDetailsPage = () => { + return
Bootcamp Details Page
; +}; + +export default BootcampDetailsPage; diff --git a/ui/src/pages/bootcamps/BootcampReviewsPage.jsx b/ui/src/pages/bootcamps/BootcampReviewsPage.jsx new file mode 100644 index 0000000..625332a --- /dev/null +++ b/ui/src/pages/bootcamps/BootcampReviewsPage.jsx @@ -0,0 +1,5 @@ +const BootcampReviewsPage = () => { + return
Bootcamp Reviews Page
; +}; + +export default BootcampReviewsPage; diff --git a/ui/src/pages/bootcamps/BootcampsPage.jsx b/ui/src/pages/bootcamps/BootcampsPage.jsx new file mode 100644 index 0000000..738b333 --- /dev/null +++ b/ui/src/pages/bootcamps/BootcampsPage.jsx @@ -0,0 +1,116 @@ +import Bootcamp from '../../components/Bootcamp'; +import Pagination from '../../components/Pagination'; + +const bootcamps = [ + { + id: 1, + image: '/images/image_1.jpg', + name: 'Bootcamp 1', + rating: 4.5, + location: 'Location 1', + careers: ['Web Development', 'Data Science'], + }, + { + id: 2, + image: '/images/image_2.jpg', + name: 'Bootcamp 2', + rating: 4.0, + location: 'Location 2', + careers: ['Web Development', 'UI/UX'], + }, + // Add more bootcamp data as needed +]; + +const BootcampsPage = () => { + return ( +
+
+
+ {/* */} +
+
+

By Location

+
+
+
+
+ +
+
+
+
+ +
+
+
+ +
+
+ +

Filter

+
+ {/* */} + +
+ + +
+ +
+ + +
+ +
+
+ + {/* */} +
+ {bootcamps.map((bootcamp) => ( + + ))} + + {/* */} + +
+
+
+
+ ); +}; + +export default BootcampsPage; diff --git a/ui/src/pages/bootcamps/ManageBootcampPage.jsx b/ui/src/pages/bootcamps/ManageBootcampPage.jsx new file mode 100644 index 0000000..3d0f7b1 --- /dev/null +++ b/ui/src/pages/bootcamps/ManageBootcampPage.jsx @@ -0,0 +1,5 @@ +const ManageBootcampPage = () => { + return
Manage Bootcamp Page
; +}; + +export default ManageBootcampPage; diff --git a/ui/src/pages/bootcamps/ManageCoursesPage.jsx b/ui/src/pages/bootcamps/ManageCoursesPage.jsx new file mode 100644 index 0000000..9f0ef61 --- /dev/null +++ b/ui/src/pages/bootcamps/ManageCoursesPage.jsx @@ -0,0 +1,5 @@ +const ManageCoursesPage = () => { + return
Manage Courses Page
; +}; + +export default ManageCoursesPage; diff --git a/ui/src/pages/bootcamps/ManageReviewsPage.jsx b/ui/src/pages/bootcamps/ManageReviewsPage.jsx new file mode 100644 index 0000000..90e9340 --- /dev/null +++ b/ui/src/pages/bootcamps/ManageReviewsPage.jsx @@ -0,0 +1,5 @@ +const ManageReviewsPage = () => { + return
Manage Reviews Page
; +}; + +export default ManageReviewsPage; diff --git a/ui/src/pages/LoginPage.jsx b/ui/src/pages/user/LoginPage.jsx similarity index 100% rename from ui/src/pages/LoginPage.jsx rename to ui/src/pages/user/LoginPage.jsx diff --git a/ui/src/pages/RegisterPage.jsx b/ui/src/pages/user/RegisterPage.jsx similarity index 100% rename from ui/src/pages/RegisterPage.jsx rename to ui/src/pages/user/RegisterPage.jsx diff --git a/ui/src/pages/user/UserDetailsPage.jsx b/ui/src/pages/user/UserDetailsPage.jsx new file mode 100644 index 0000000..19c76a4 --- /dev/null +++ b/ui/src/pages/user/UserDetailsPage.jsx @@ -0,0 +1,10 @@ +const UserDetailsPage = () => { + return ( +
+

User Details Page

+

Add Update password functionality here

+
+ ); +}; + +export default UserDetailsPage;