diff --git a/client/package-lock.json b/client/package-lock.json index 4a701afb..fbb2ff6c 100644 --- a/client/package-lock.json +++ b/client/package-lock.json @@ -8,6 +8,7 @@ "name": "client", "version": "0.0.0", "dependencies": { + "@heroicons/react": "^2.0.18", "axios": "^1.6.2", "normalize.css": "^8.0.1", "react": "^18.2.0", @@ -444,6 +445,14 @@ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, + "node_modules/@heroicons/react": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/@heroicons/react/-/react-2.0.18.tgz", + "integrity": "sha512-7TyMjRrZZMBPa+/5Y8lN0iyvUU/01PeMGX2+RE7cQWpEUIcb4QotzUObFkJDejj/HUH4qjP/eQ0gzzKs2f+6Yw==", + "peerDependencies": { + "react": ">= 16" + } + }, "node_modules/@humanwhocodes/config-array": { "version": "0.11.13", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.13.tgz", diff --git a/client/package.json b/client/package.json index 027042e4..a3aa8a16 100644 --- a/client/package.json +++ b/client/package.json @@ -10,6 +10,7 @@ "preview": "vite preview" }, "dependencies": { + "@heroicons/react": "^2.0.18", "axios": "^1.6.2", "normalize.css": "^8.0.1", "react": "^18.2.0", diff --git a/client/src/assets/images/ DELETEME.svg b/client/src/assets/images/ DELETEME.svg deleted file mode 100644 index e7b8dfb1..00000000 --- a/client/src/assets/images/ DELETEME.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/client/src/assets/images/logo.svg b/client/src/assets/images/logo.svg new file mode 100644 index 00000000..e47d98e1 --- /dev/null +++ b/client/src/assets/images/logo.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/client/src/assets/styles/components/DELETEME.txt b/client/src/assets/styles/components/DELETEME.txt deleted file mode 100644 index e69de29b..00000000 diff --git a/client/src/assets/styles/components/Nav.scss b/client/src/assets/styles/components/Nav.scss new file mode 100644 index 00000000..b8b7140a --- /dev/null +++ b/client/src/assets/styles/components/Nav.scss @@ -0,0 +1,34 @@ +.Nav { + padding: var(--side-spacing); + + .container { + display: flex; + justify-content: space-between; + align-items: center; + flex-direction: row-reverse; + } + + &__logo a { + display: flex; + flex-direction: row-reverse; + gap: 5px; + align-items: center; + + h2 { + font-size: 1.875rem; + font-style: normal; + font-weight: 800; + margin: 0; + } + } + + &__icons { + display: flex; + gap: 1rem; + align-items: center; + } + + &__icon { + width: 24px; + } +} diff --git a/client/src/assets/styles/global/DELETEME.txt b/client/src/assets/styles/global/DELETEME.txt deleted file mode 100644 index e69de29b..00000000 diff --git a/client/src/assets/styles/global/_layout.scss b/client/src/assets/styles/global/_layout.scss new file mode 100644 index 00000000..8a7e7a7e --- /dev/null +++ b/client/src/assets/styles/global/_layout.scss @@ -0,0 +1,36 @@ +// _layout.scss +// Classes or the layout of the app + +section, +.section { + padding: var(--section-spacing) 0; +} + +.container { + max-width: 700px; + margin: 0 auto; + padding: 0 var(--side-spacing); +} + +.row { + display: flex; + flex-wrap: wrap; + margin: 0 -var(--side-spacing); + gap: var(--side-spacing); + + .col-1 { + flex: 0 1 calc(25% - var(--side-spacing) * 2); + } + + .col-2 { + flex: 0 1 calc(50% - var(--side-spacing) * 2); + } + + .col-3 { + flex: 0 1 calc(75% - var(--side-spacing) * 2); + } + + .col-4 { + flex: 0 1 calc(100% - var(--side-spacing) * 2); + } +} diff --git a/client/src/assets/styles/global/global.scss b/client/src/assets/styles/global/global.scss index 849c13ad..7fee132f 100644 --- a/client/src/assets/styles/global/global.scss +++ b/client/src/assets/styles/global/global.scss @@ -1,5 +1,6 @@ @import "normalize.css"; @import "typography"; +@import "layout"; *, *::before, diff --git a/client/src/components/common/DELETME.txt b/client/src/components/common/DELETME.txt deleted file mode 100644 index e69de29b..00000000 diff --git a/client/src/components/common/nav.jsx b/client/src/components/common/nav.jsx new file mode 100644 index 00000000..901b78ad --- /dev/null +++ b/client/src/components/common/nav.jsx @@ -0,0 +1,43 @@ +import { Link } from "react-router-dom"; +import PropTypes from "prop-types"; + +// icons +import { UserCircleIcon } from "@heroicons/react/24/outline"; +import { BellIcon } from "@heroicons/react/24/outline"; +// logo +import logo from "../../assets/images/logo.svg"; +// styles +import "../../assets/styles/components/Nav.scss"; + +export default function Nav(props) { + const { showIcons } = props; + + return ( + + ); +} + +Nav.propTypes = { + showIcons: PropTypes.bool.isRequired, +}; diff --git a/client/src/components/landingpage/LandingPage.jsx b/client/src/components/landingpage/LandingPage.jsx new file mode 100644 index 00000000..f0c006e6 --- /dev/null +++ b/client/src/components/landingpage/LandingPage.jsx @@ -0,0 +1,9 @@ +import Nav from "../common/nav"; + +export default function LandingPage() { + return ( + <> +