diff --git a/apps/site/.eslintrc.json b/apps/site/.eslintrc.json
index 5640d70a..fc32a217 100644
--- a/apps/site/.eslintrc.json
+++ b/apps/site/.eslintrc.json
@@ -1,3 +1,3 @@
{
- "extends": ["next/babel", "next/core-web-vitals"]
+ "extends": ["next/core-web-vitals"]
}
diff --git a/apps/site/src/assets/icons/google-cloud-logo.png b/apps/site/src/assets/icons/google-cloud-logo.png
new file mode 100644
index 00000000..846407cd
Binary files /dev/null and b/apps/site/src/assets/icons/google-cloud-logo.png differ
diff --git a/apps/site/src/assets/icons/spotify-logo.png b/apps/site/src/assets/icons/spotify-logo.png
new file mode 100644
index 00000000..8a601f5e
Binary files /dev/null and b/apps/site/src/assets/icons/spotify-logo.png differ
diff --git a/apps/site/src/assets/icons/twitter-logo.png b/apps/site/src/assets/icons/twitter-logo.png
new file mode 100644
index 00000000..075b6289
Binary files /dev/null and b/apps/site/src/assets/icons/twitter-logo.png differ
diff --git a/apps/site/src/assets/images/api-reference-tag.png b/apps/site/src/assets/images/api-reference-tag.png
new file mode 100644
index 00000000..0cf6b136
Binary files /dev/null and b/apps/site/src/assets/images/api-reference-tag.png differ
diff --git a/apps/site/src/assets/images/clear_tape_left.svg b/apps/site/src/assets/images/clear_tape_left.svg
new file mode 100644
index 00000000..c0334c9a
--- /dev/null
+++ b/apps/site/src/assets/images/clear_tape_left.svg
@@ -0,0 +1,3 @@
+
+
+
diff --git a/apps/site/src/assets/images/clear_tape_right.svg b/apps/site/src/assets/images/clear_tape_right.svg
new file mode 100644
index 00000000..7d90ba0f
--- /dev/null
+++ b/apps/site/src/assets/images/clear_tape_right.svg
@@ -0,0 +1,3 @@
+
+
+
diff --git a/apps/site/src/assets/images/flask_documentation_button.png b/apps/site/src/assets/images/flask_documentation_button.png
new file mode 100644
index 00000000..cbb0585d
Binary files /dev/null and b/apps/site/src/assets/images/flask_documentation_button.png differ
diff --git a/apps/site/src/assets/images/flask_project_button.png b/apps/site/src/assets/images/flask_project_button.png
new file mode 100644
index 00000000..f7047c30
Binary files /dev/null and b/apps/site/src/assets/images/flask_project_button.png differ
diff --git a/apps/site/src/assets/images/flask_tutorial_button.png b/apps/site/src/assets/images/flask_tutorial_button.png
new file mode 100644
index 00000000..4ede6a11
Binary files /dev/null and b/apps/site/src/assets/images/flask_tutorial_button.png differ
diff --git a/apps/site/src/assets/images/lined_paper.png b/apps/site/src/assets/images/lined-paper.png
similarity index 100%
rename from apps/site/src/assets/images/lined_paper.png
rename to apps/site/src/assets/images/lined-paper.png
diff --git a/apps/site/src/assets/images/tape.png b/apps/site/src/assets/images/tape.png
new file mode 100644
index 00000000..c309f384
Binary files /dev/null and b/apps/site/src/assets/images/tape.png differ
diff --git a/apps/site/src/assets/index_cards/api-description-card.png b/apps/site/src/assets/index_cards/api-description-card.png
new file mode 100644
index 00000000..66e8950a
Binary files /dev/null and b/apps/site/src/assets/index_cards/api-description-card.png differ
diff --git a/apps/site/src/assets/index_cards/backend-description-card.png b/apps/site/src/assets/index_cards/backend-description-card.png
new file mode 100644
index 00000000..72fdee88
Binary files /dev/null and b/apps/site/src/assets/index_cards/backend-description-card.png differ
diff --git a/apps/site/src/components/NavBar/NavBar.module.scss b/apps/site/src/components/NavBar/NavBar.module.scss
index 91c9b04d..f110c1f2 100644
--- a/apps/site/src/components/NavBar/NavBar.module.scss
+++ b/apps/site/src/components/NavBar/NavBar.module.scss
@@ -8,7 +8,7 @@
}
.navbar {
- background-image: url("~@/assets/images/lined_paper.png");
+ background-image: url("~@/assets/images/lined-paper.png");
background-size: cover;
background-position: left bottom;
background-repeat: no-repeat;
diff --git a/apps/site/src/components/Sticker/BaseSticker.tsx b/apps/site/src/components/Sticker/BaseSticker.tsx
index 160bf597..10f4d7c6 100644
--- a/apps/site/src/components/Sticker/BaseSticker.tsx
+++ b/apps/site/src/components/Sticker/BaseSticker.tsx
@@ -1,6 +1,5 @@
"use client";
-import Image from "next/image";
import { motion } from "framer-motion";
import styles from "./BaseSticker.module.scss";
import { MutableRefObject, useRef } from "react";
@@ -28,10 +27,9 @@ export default function Sticker({
transition = {},
}: StickerProps) {
// prevent next from throwing error involving DOM API
- const pageRef =
- typeof document !== "undefined"
- ? useRef(document.documentElement)
- : undefined;
+ const pageRef = useRef(
+ typeof document !== "undefined" ? document.documentElement : undefined,
+ );
let transitionProps = { ...transition };
let animateProps = {
@@ -48,15 +46,11 @@ export default function Sticker({
? {
whileTap: {
scale: 1.1,
- filter: `drop-shadow(${0.08 * width}px ${0.1 * height}px ${
- 0.1 * height
- }px rgba(0, 0, 0, 0.15))`,
+ filter: `drop-shadow(16px 20px 20px rgba(0, 0, 0, 0.15))`,
},
whileHover: {
scale: 1.025,
- filter: `drop-shadow(${0.05 * width}px ${0.07 * height}px ${
- 0.05 * height
- }px rgba(0, 0, 0, 0.2))`,
+ filter: `drop-shadow(10px 14px 10px rgba(0, 0, 0, 0.2))`,
},
drag: true,
dragMomentum: false,
@@ -67,22 +61,14 @@ export default function Sticker({
: {};
return (
-
-
-
+ />
);
}
diff --git a/apps/site/src/components/Sticker/Stickers/HeartSticker/HeartSticker.tsx b/apps/site/src/components/Sticker/Stickers/HeartSticker/HeartSticker.tsx
index 7d9dd148..223456e9 100644
--- a/apps/site/src/components/Sticker/Stickers/HeartSticker/HeartSticker.tsx
+++ b/apps/site/src/components/Sticker/Stickers/HeartSticker/HeartSticker.tsx
@@ -12,8 +12,8 @@ export default function HeartSticker({
diff --git a/apps/site/src/views/Home/components/StickerLayout/StickerLayout.tsx b/apps/site/src/views/Home/components/StickerLayout/StickerLayout.tsx
index cbe09610..917f759b 100644
--- a/apps/site/src/views/Home/components/StickerLayout/StickerLayout.tsx
+++ b/apps/site/src/views/Home/components/StickerLayout/StickerLayout.tsx
@@ -2,15 +2,13 @@ import { HackSticker, HeartSticker } from "@/components/Sticker/Stickers";
export default function StickerLayout() {
return (
-
-
-
+
);
}
diff --git a/apps/site/src/views/Home/sections/FAQ/getQuestions.ts b/apps/site/src/views/Home/sections/FAQ/getQuestions.ts
index a3e15f00..455d140f 100644
--- a/apps/site/src/views/Home/sections/FAQ/getQuestions.ts
+++ b/apps/site/src/views/Home/sections/FAQ/getQuestions.ts
@@ -30,7 +30,6 @@ const Questions = z.array(
})
);
-
export const getQuestions = cache(async () => {
return Questions.parse(
await client.fetch(
diff --git a/apps/site/src/views/Resources/Resources.module.scss b/apps/site/src/views/Resources/Resources.module.scss
index e69de29b..e5a14166 100644
--- a/apps/site/src/views/Resources/Resources.module.scss
+++ b/apps/site/src/views/Resources/Resources.module.scss
@@ -0,0 +1,17 @@
+@use "bootstrap-utils" as bootstrap;
+
+$container-padding: 6rem;
+
+.resources {
+ h2 {
+ text-align: center;
+ }
+
+ :global {
+ section {
+ // responsive padding
+ @include bootstrap.padding-top($container-padding);
+ @include bootstrap.padding-bottom($container-padding);
+ }
+ }
+}
diff --git a/apps/site/src/views/Resources/Resources.tsx b/apps/site/src/views/Resources/Resources.tsx
index 76b2c111..0a310812 100644
--- a/apps/site/src/views/Resources/Resources.tsx
+++ b/apps/site/src/views/Resources/Resources.tsx
@@ -1,5 +1,15 @@
-import "./Resources.module.scss";
+"use client";
+import styles from "./Resources.module.scss";
+import Landing from "./sections/Landing/Landing";
+import ApiResources from "./sections/ApiResources/ApiResources";
+import BackendResources from "./sections/BackendResources/BackendResources";
export default function Resources() {
- return Resources ;
+ return (
+
+ );
}
diff --git a/apps/site/src/views/Resources/components/ApiGroup/ApiGroup.module.scss b/apps/site/src/views/Resources/components/ApiGroup/ApiGroup.module.scss
new file mode 100644
index 00000000..a8da378e
--- /dev/null
+++ b/apps/site/src/views/Resources/components/ApiGroup/ApiGroup.module.scss
@@ -0,0 +1,46 @@
+.group {
+ margin-top: 50px;
+ width: 344px;
+ height: 500px;
+ position: relative;
+ box-shadow: 0 6px 5px -2px rgba(gray, 0.5);
+}
+
+.tape {
+ background-image: url("~@/assets/images/tape.png");
+ width: 238px;
+ height: 60px;
+ position: absolute;
+ top: -5%;
+}
+
+.container {
+ position: relative;
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+ align-items: center;
+ gap: 10px;
+ height: 450px;
+}
+
+.tag {
+ position: absolute;
+ left: -5%;
+ bottom: 5%;
+ transition:
+ filter 0.13s ease,
+ transform 0.13s ease,
+ filter 0.13s ease;
+
+ &:hover {
+ transform: translateX(-5px);
+ filter: drop-shadow(1px 0px 0px black) drop-shadow(-2px 0px 0px black)
+ drop-shadow(0px 2px 0px black) drop-shadow(0px -2px 0px black);
+ }
+}
+
+.text {
+ width: 90%;
+ text-align: center;
+}
diff --git a/apps/site/src/views/Resources/components/ApiGroup/ApiGroup.tsx b/apps/site/src/views/Resources/components/ApiGroup/ApiGroup.tsx
new file mode 100644
index 00000000..511aa525
--- /dev/null
+++ b/apps/site/src/views/Resources/components/ApiGroup/ApiGroup.tsx
@@ -0,0 +1,38 @@
+import styles from "./ApiGroup.module.scss";
+
+export interface APIGroupProps {
+ title: string;
+ description: string;
+ stickerSrc: string;
+ tagSrc: string;
+ tagLink: string;
+ stickyNoteColor: string;
+}
+
+export function ApiGroup({
+ title,
+ description,
+ stickerSrc,
+ tagSrc,
+ tagLink,
+ stickyNoteColor,
+}: APIGroupProps) {
+ return (
+
+
+
+
+
{title}
+
{description}
+
+
+
+
+
+ );
+}
diff --git a/apps/site/src/views/Resources/components/BackendGroup/BackendGroup.module.scss b/apps/site/src/views/Resources/components/BackendGroup/BackendGroup.module.scss
new file mode 100644
index 00000000..7fb98b84
--- /dev/null
+++ b/apps/site/src/views/Resources/components/BackendGroup/BackendGroup.module.scss
@@ -0,0 +1,79 @@
+@use "bootstrap-utils" as utils;
+
+.wrapper {
+ width: 495px;
+ height: 510px;
+ position: relative;
+ margin-top: 50px;
+ box-shadow: 0 6px 5px -2px rgba(gray, 0.5);
+}
+
+.text_flexbox {
+ position: absolute;
+ top: 8%;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: flex-start;
+}
+
+.description {
+ width: 90%;
+ font-size: 23px;
+}
+
+.tag {
+ width: 100%;
+ transition:
+ filter 0.13s ease,
+ transform 0.13s ease,
+ filter 0.13s ease;
+
+ &:hover {
+ transform: translateX(-5px);
+ filter: drop-shadow(1px 0px 0px black) drop-shadow(-1px 0px 0px black)
+ drop-shadow(0px 1px 0px black) drop-shadow(0px -2px 0px black);
+ }
+}
+
+.tag_flexbox {
+ position: absolute;
+ bottom: 5%;
+ left: -3%;
+ display: flex;
+ flex-direction: column;
+ align-items: flex-start;
+ justify-content: flex-end;
+}
+
+.tape {
+ position: absolute;
+ width: 60%;
+}
+
+.left_tape {
+ @extend .tape;
+ top: -10%;
+ left: -10%;
+}
+
+.right_tape {
+ @extend .tape;
+ top: -10%;
+ right: -10%;
+}
+
+@include utils.media-breakpoint-down(md) {
+ .description {
+ font-size: 20px;
+ }
+
+ .left_tape {
+ top: -6%;
+ }
+ // adjustments to prevent right tape from extending beyond page in mobile view
+ .right_tape {
+ top: -6%;
+ right: -2%;
+ }
+}
diff --git a/apps/site/src/views/Resources/components/BackendGroup/BackendGroup.tsx b/apps/site/src/views/Resources/components/BackendGroup/BackendGroup.tsx
new file mode 100644
index 00000000..96a22fd4
--- /dev/null
+++ b/apps/site/src/views/Resources/components/BackendGroup/BackendGroup.tsx
@@ -0,0 +1,82 @@
+import Link from "next/link";
+
+import styles from "./BackendGroup.module.scss";
+import Clear_Tape_Left from "@/assets/images/clear_tape_left.svg";
+import Clear_Tape_Right from "@/assets/images/clear_tape_right.svg";
+
+export interface tag {
+ link: string;
+ src: string;
+ alt: string;
+ className?: string;
+}
+
+export interface BackendGroupProps {
+ stickyNoteColor: string;
+ title: string;
+ description: string;
+ tags: tag[];
+ tapeOrientation: string;
+ className?: string | undefined;
+}
+
+export function BackendGroup({
+ stickyNoteColor,
+ title,
+ description,
+ tags,
+ tapeOrientation,
+ className,
+}: BackendGroupProps) {
+ let tapePosition;
+ switch (tapeOrientation) {
+ case "left":
+ tapePosition = (
+
+ );
+ break;
+ case "right":
+ tapePosition = (
+
+ );
+ break;
+ }
+
+ return (
+ <>
+ {/* height hardcoded for 3 tags */}
+
+ {tapePosition}
+
+
{title}
+
{description}
+
+
+ {tags?.map((tag) => (
+
+ ))}
+
+
+ >
+ );
+}
+
+function Resource_Tag({ link, className, src, alt }: tag) {
+ return (
+
+
+
+
+
+ );
+}
diff --git a/apps/site/src/views/Resources/sections/ApiResources/ApiResources.module.scss b/apps/site/src/views/Resources/sections/ApiResources/ApiResources.module.scss
new file mode 100644
index 00000000..82863e83
--- /dev/null
+++ b/apps/site/src/views/Resources/sections/ApiResources/ApiResources.module.scss
@@ -0,0 +1,62 @@
+@use "bootstrap-utils" as utils;
+
+.row {
+ margin-bottom: 50px;
+}
+
+.column {
+ display: flex;
+ flex-direction: row;
+ justify-content: center;
+ align-items: center;
+}
+
+.card {
+ background-image: url("~@/assets/index_cards/api-description-card.png");
+ background-repeat: no-repeat;
+ background-position: center;
+ height: 343px;
+ width: 80vw;
+ position: relative;
+ display: flex;
+ justify-content: center;
+ margin-bottom: 30px;
+}
+
+.text {
+ font-size: 24px;
+ height: 60%;
+ width: 80%;
+ margin: auto;
+ position: relative;
+ top: 10%;
+}
+
+.title {
+ top: 8%;
+ position: absolute;
+}
+
+@include utils.media-breakpoint-down(xl) {
+ .text {
+ font-size: 22px;
+ }
+}
+
+@include utils.media-breakpoint-down(lg) {
+ .text {
+ font-size: 18px;
+ }
+}
+
+@include utils.media-breakpoint-down(md) {
+ .text {
+ font-size: 15px;
+ }
+}
+
+@include utils.media-breakpoint-down(sm) {
+ .text {
+ font-size: 13px;
+ }
+}
diff --git a/apps/site/src/views/Resources/sections/ApiResources/ApiResources.tsx b/apps/site/src/views/Resources/sections/ApiResources/ApiResources.tsx
new file mode 100644
index 00000000..dc439284
--- /dev/null
+++ b/apps/site/src/views/Resources/sections/ApiResources/ApiResources.tsx
@@ -0,0 +1,45 @@
+import Container from "react-bootstrap/Container";
+import Row from "react-bootstrap/Row";
+import Col from "react-bootstrap/Col";
+
+import styles from "./ApiResources.module.scss";
+
+import { ApiGroup, APIGroupProps } from "../../components/ApiGroup/ApiGroup";
+import ApiResourcesList from "./config";
+
+function ApiResources() {
+ return (
+
+
+ {/* Card Component */}
+
+
+
API Resources
+
+ Application Programming Interface (API) are interfaces or
+ communication protocol that simplifies implementation and
+ maintenance of software. In order to access most API's, many
+ languages use HTTP protocol to communicate with the servers that
+ host the API and retrieve data.
+
+
+
+ {/* Sticky Notes */}
+ {ApiResourcesList.map((resource: APIGroupProps) => (
+
+
+
+ ))}
+
+
+ );
+}
+
+export default ApiResources;
diff --git a/apps/site/src/views/Resources/sections/ApiResources/config.ts b/apps/site/src/views/Resources/sections/ApiResources/config.ts
new file mode 100644
index 00000000..7544fbf9
--- /dev/null
+++ b/apps/site/src/views/Resources/sections/ApiResources/config.ts
@@ -0,0 +1,36 @@
+import google_cloud_sticker from "@/assets/icons/google-cloud-logo.png";
+import twitter_sticker from "@/assets/icons/twitter-logo.png";
+import spotify_sticker from "@/assets/icons/spotify-logo.png";
+import api_tag from "@/assets/images/api-reference-tag.png";
+
+const ApiResourcesList = [
+ {
+ title: "Google Cloud API",
+ description:
+ "API that allows users to access Google services such as storage access and machine-learning",
+ stickerSrc: google_cloud_sticker.src,
+ tagSrc: api_tag.src,
+ tagLink: "https://hack.ics.uci.edu/",
+ stickyNoteColor: "#FFFFA9",
+ },
+ {
+ title: "Twitter API",
+ description:
+ "API that retrieves data on tweets, direct messages, trends, users, and many more of Twitter's features",
+ stickerSrc: twitter_sticker.src,
+ tagSrc: api_tag.src,
+ tagLink: "https://hack.ics.uci.edu/",
+ stickyNoteColor: "#DFFFFD",
+ },
+ {
+ title: "Spotify API",
+ description:
+ "API that retrieves data on Spotify music, playlists, artists, users for your software applications",
+ stickerSrc: spotify_sticker.src,
+ tagSrc: api_tag.src,
+ tagLink: "https://hack.ics.uci.edu/",
+ stickyNoteColor: "#D8FFA6",
+ },
+];
+
+export default ApiResourcesList;
diff --git a/apps/site/src/views/Resources/sections/BackendResources/BackendResources.module.scss b/apps/site/src/views/Resources/sections/BackendResources/BackendResources.module.scss
new file mode 100644
index 00000000..fd43dccb
--- /dev/null
+++ b/apps/site/src/views/Resources/sections/BackendResources/BackendResources.module.scss
@@ -0,0 +1,60 @@
+@use "bootstrap-utils" as utils;
+
+.row {
+ margin-bottom: 50px;
+}
+
+.column {
+ display: flex;
+ flex-direction: row;
+ justify-content: center;
+ margin-bottom: 20px;
+ gap: 60px;
+}
+
+.card {
+ background-image: url("~@/assets/index_cards/backend-description-card.png");
+ background-repeat: no-repeat;
+ background-position: center;
+ background-size: cover;
+ width: 80vw;
+ height: 230px;
+ position: relative;
+ display: flex;
+ justify-content: center;
+}
+
+.title {
+ position: absolute;
+ top: 10%;
+}
+
+.text {
+ position: absolute;
+ bottom: 10%;
+ width: 90%;
+ height: 40%;
+ font-size: 24px;
+}
+
+@include utils.media-breakpoint-down(lg) {
+ .title {
+ font-size: 28px;
+ top: 20%;
+ }
+
+ .text {
+ font-size: 20px;
+ }
+}
+
+@include utils.media-breakpoint-down(sm) {
+ .title {
+ font-size: 18px;
+ top: 20%;
+ }
+
+ .text {
+ font-size: 14px;
+ }
+}
diff --git a/apps/site/src/views/Resources/sections/BackendResources/BackendResources.tsx b/apps/site/src/views/Resources/sections/BackendResources/BackendResources.tsx
new file mode 100644
index 00000000..2d38847f
--- /dev/null
+++ b/apps/site/src/views/Resources/sections/BackendResources/BackendResources.tsx
@@ -0,0 +1,44 @@
+import Container from "react-bootstrap/Container";
+import Row from "react-bootstrap/Row";
+import Col from "react-bootstrap/Col";
+import styles from "./BackendResources.module.scss";
+import {
+ BackendGroup,
+ BackendGroupProps,
+} from "../../components/BackendGroup/BackendGroup";
+import BackendResourcesList from "./config";
+
+function BackendResources() {
+ return (
+
+
+ {/* Card Component */}
+
+
+
Backend Framework Resources
+
+ Backend Frameworks are a variety of middleware services used to
+ connect to other API and database vendors to fit your
+ project's needs.
+
+
+
+ {/* Sticky Notes */}
+ {BackendResourcesList.map((resource: BackendGroupProps) => (
+
+
+
+ ))}
+
+
+ );
+}
+
+export default BackendResources;
diff --git a/apps/site/src/views/Resources/sections/BackendResources/config.ts b/apps/site/src/views/Resources/sections/BackendResources/config.ts
new file mode 100644
index 00000000..b5cedd60
--- /dev/null
+++ b/apps/site/src/views/Resources/sections/BackendResources/config.ts
@@ -0,0 +1,56 @@
+import flask_tutorial_tag from "@/assets/images/flask_tutorial_button.png";
+import flask_documentation_tag from "@/assets/images/flask_documentation_button.png";
+import flask_project_tag from "@/assets/images/flask_project_button.png";
+
+const BackendResourcesList = [
+ {
+ stickyNoteColor: "#FFDAF7",
+ title: "Flask",
+ description:
+ "Lorem ipsum is placeholder text commonly used in the graphic, print, and publishing industries for previewing layouts and visual mockups.",
+ tapeOrientation: "left",
+ tags: [
+ {
+ link: "https://hack.ics.uci.edu/",
+ src: flask_tutorial_tag.src,
+ alt: "Flask Tutorial Tag Link",
+ },
+ {
+ link: "https://hack.ics.uci.edu/",
+ src: flask_documentation_tag.src,
+ alt: "Flask Documentation Tag Link",
+ },
+ {
+ link: "https://hack.ics.uci.edu/",
+ src: flask_project_tag.src,
+ alt: "Flask Project Tag Link",
+ },
+ ],
+ },
+ {
+ stickyNoteColor: "#FFE7A9",
+ title: "Flask",
+ description:
+ "Lorem ipsum is placeholder text commonly used in the graphic, print, and publishing industries for previewing layouts and visual mockups.",
+ tapeOrientation: "right",
+ tags: [
+ {
+ link: "https://hack.ics.uci.edu/",
+ src: flask_tutorial_tag.src,
+ alt: "Flask Tutorial Tag Link",
+ },
+ {
+ link: "https://hack.ics.uci.edu/",
+ src: flask_documentation_tag.src,
+ alt: "Flask Documentation Tag Link",
+ },
+ {
+ link: "https://hack.ics.uci.edu/",
+ src: flask_project_tag.src,
+ alt: "Flask Project Tag Link",
+ },
+ ],
+ },
+];
+
+export default BackendResourcesList;
diff --git a/apps/site/src/views/Resources/sections/Landing/Landing.module.scss b/apps/site/src/views/Resources/sections/Landing/Landing.module.scss
new file mode 100644
index 00000000..1e19c5b8
--- /dev/null
+++ b/apps/site/src/views/Resources/sections/Landing/Landing.module.scss
@@ -0,0 +1,10 @@
+.landing {
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+ align-items: center;
+ text-align: center;
+ margin-top: 15vh;
+ margin-bottom: 5vh;
+ text-align: left;
+}
diff --git a/apps/site/src/views/Resources/sections/Landing/Landing.tsx b/apps/site/src/views/Resources/sections/Landing/Landing.tsx
new file mode 100644
index 00000000..62dffce7
--- /dev/null
+++ b/apps/site/src/views/Resources/sections/Landing/Landing.tsx
@@ -0,0 +1,11 @@
+import styles from "./Landing.module.scss";
+
+function Landing() {
+ return (
+
+
Resources
+
+ );
+}
+
+export default Landing;
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index f7a714fd..fe3e3cc8 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -19,7 +19,7 @@ importers:
version: 3.0.1
turbo:
specifier: latest
- version: 1.10.14
+ version: 1.10.15
apps/sanity:
dependencies:
@@ -119,7 +119,7 @@ importers:
version: 5.1.6
zod:
specifier: ^3.22.2
- version: 3.22.3
+ version: 3.22.2
packages:
@@ -1495,20 +1495,6 @@ packages:
'@lezer/common': 1.0.3
dev: false
- /@codemirror/autocomplete@6.9.0(@codemirror/language@6.8.0)(@codemirror/state@6.2.1)(@codemirror/view@6.16.0)(@lezer/common@1.0.4):
- resolution: {integrity: sha512-Fbwm0V/Wn3BkEJZRhr0hi5BhCo5a7eBL6LYaliPjOSwCyfOpnjXY59HruSxOUNV+1OYer0Tgx1zRNQttjXyDog==}
- peerDependencies:
- '@codemirror/language': ^6.0.0
- '@codemirror/state': ^6.0.0
- '@codemirror/view': ^6.0.0
- '@lezer/common': ^1.0.0
- dependencies:
- '@codemirror/language': 6.8.0
- '@codemirror/state': 6.2.1
- '@codemirror/view': 6.16.0
- '@lezer/common': 1.0.4
- dev: false
-
/@codemirror/autocomplete@6.9.0(@codemirror/language@6.9.0)(@codemirror/state@6.2.1)(@codemirror/view@6.16.0)(@lezer/common@1.0.4):
resolution: {integrity: sha512-Fbwm0V/Wn3BkEJZRhr0hi5BhCo5a7eBL6LYaliPjOSwCyfOpnjXY59HruSxOUNV+1OYer0Tgx1zRNQttjXyDog==}
peerDependencies:
@@ -2762,7 +2748,7 @@ packages:
react: ^18
styled-components: ^5.2
dependencies:
- '@codemirror/autocomplete': 6.9.0(@codemirror/language@6.8.0)(@codemirror/state@6.2.1)(@codemirror/view@6.16.0)(@lezer/common@1.0.4)
+ '@codemirror/autocomplete': 6.9.0(@codemirror/language@6.9.0)(@codemirror/state@6.2.1)(@codemirror/view@6.16.0)(@lezer/common@1.0.4)
'@codemirror/commands': 6.2.4
'@codemirror/lang-javascript': 6.1.9
'@codemirror/language': 6.8.0
@@ -3264,7 +3250,7 @@ packages:
'@codemirror/state': '>=6.0.0'
'@codemirror/view': '>=6.0.0'
dependencies:
- '@codemirror/autocomplete': 6.9.0(@codemirror/language@6.8.0)(@codemirror/state@6.2.1)(@codemirror/view@6.16.0)(@lezer/common@1.0.4)
+ '@codemirror/autocomplete': 6.9.0(@codemirror/language@6.9.0)(@codemirror/state@6.2.1)(@codemirror/view@6.16.0)(@lezer/common@1.0.4)
'@codemirror/commands': 6.2.4
'@codemirror/language': 6.8.0
'@codemirror/lint': 6.4.0
@@ -8620,64 +8606,65 @@ packages:
safe-buffer: 5.2.1
dev: false
- /turbo-darwin-64@1.10.14:
- resolution: {integrity: sha512-I8RtFk1b9UILAExPdG/XRgGQz95nmXPE7OiGb6ytjtNIR5/UZBS/xVX/7HYpCdmfriKdVwBKhalCoV4oDvAGEg==}
+ /turbo-darwin-64@1.10.15:
+ resolution: {integrity: sha512-Sik5uogjkRTe1XVP9TC2GryEMOJCaKE2pM/O9uLn4koQDnWKGcLQv+mDU+H+9DXvKLnJnKCD18OVRkwK5tdpoA==}
cpu: [x64]
os: [darwin]
requiresBuild: true
dev: true
optional: true
- /turbo-darwin-arm64@1.10.14:
- resolution: {integrity: sha512-KAdUWryJi/XX7OD0alOuOa0aJ5TLyd4DNIYkHPHYcM6/d7YAovYvxRNwmx9iv6Vx6IkzTnLeTiUB8zy69QkG9Q==}
+ /turbo-darwin-arm64@1.10.15:
+ resolution: {integrity: sha512-xwqyFDYUcl2xwXyGPmHkmgnNm4Cy0oNzMpMOBGRr5x64SErS7QQLR4VHb0ubiR+VAb8M+ECPklU6vD1Gm+wekg==}
cpu: [arm64]
os: [darwin]
requiresBuild: true
dev: true
optional: true
- /turbo-linux-64@1.10.14:
- resolution: {integrity: sha512-BOBzoREC2u4Vgpap/WDxM6wETVqVMRcM8OZw4hWzqCj2bqbQ6L0wxs1LCLWVrghQf93JBQtIGAdFFLyCSBXjWQ==}
+ /turbo-linux-64@1.10.15:
+ resolution: {integrity: sha512-dM07SiO3RMAJ09Z+uB2LNUSkPp3I1IMF8goH5eLj+d8Kkwoxd/+qbUZOj9RvInyxU/IhlnO9w3PGd3Hp14m/nA==}
cpu: [x64]
os: [linux]
requiresBuild: true
dev: true
optional: true
- /turbo-linux-arm64@1.10.14:
- resolution: {integrity: sha512-D8T6XxoTdN5D4V5qE2VZG+/lbZX/89BkAEHzXcsSUTRjrwfMepT3d2z8aT6hxv4yu8EDdooZq/2Bn/vjMI32xw==}
+ /turbo-linux-arm64@1.10.15:
+ resolution: {integrity: sha512-MkzKLkKYKyrz4lwfjNXH8aTny5+Hmiu4SFBZbx+5C0vOlyp6fV5jZANDBvLXWiDDL4DSEAuCEK/2cmN6FVH1ow==}
cpu: [arm64]
os: [linux]
requiresBuild: true
dev: true
optional: true
- /turbo-windows-64@1.10.14:
- resolution: {integrity: sha512-zKNS3c1w4i6432N0cexZ20r/aIhV62g69opUn82FLVs/zk3Ie0GVkSB6h0rqIvMalCp7enIR87LkPSDGz9K4UA==}
+ /turbo-windows-64@1.10.15:
+ resolution: {integrity: sha512-3TdVU+WEH9ThvQGwV3ieX/XHebtYNHv9HARHauPwmVj3kakoALkpGxLclkHFBLdLKkqDvmHmXtcsfs6cXXRHJg==}
cpu: [x64]
os: [win32]
requiresBuild: true
dev: true
optional: true
- /turbo-windows-arm64@1.10.14:
- resolution: {integrity: sha512-rkBwrTPTxNSOUF7of8eVvvM+BkfkhA2OvpHM94if8tVsU+khrjglilp8MTVPHlyS9byfemPAmFN90oRIPB05BA==}
+ /turbo-windows-arm64@1.10.15:
+ resolution: {integrity: sha512-l+7UOBCbfadvPMYsX08hyLD+UIoAkg6ojfH+E8aud3gcA1padpjCJTh9gMpm3QdMbKwZteT5uUM+wyi6Rbbyww==}
cpu: [arm64]
os: [win32]
requiresBuild: true
dev: true
optional: true
- /turbo@1.10.14:
- resolution: {integrity: sha512-hr9wDNYcsee+vLkCDIm8qTtwhJ6+UAMJc3nIY6+PNgUTtXcQgHxCq8BGoL7gbABvNWv76CNbK5qL4Lp9G3ZYRA==}
+ /turbo@1.10.15:
+ resolution: {integrity: sha512-mKKkqsuDAQy1wCCIjCdG+jOCwUflhckDMSRoeBPcIL/CnCl7c5yRDFe7SyaXloUUkt4tUR0rvNIhVCcT7YeQpg==}
hasBin: true
+ requiresBuild: true
optionalDependencies:
- turbo-darwin-64: 1.10.14
- turbo-darwin-arm64: 1.10.14
- turbo-linux-64: 1.10.14
- turbo-linux-arm64: 1.10.14
- turbo-windows-64: 1.10.14
- turbo-windows-arm64: 1.10.14
+ turbo-darwin-64: 1.10.15
+ turbo-darwin-arm64: 1.10.15
+ turbo-linux-64: 1.10.15
+ turbo-linux-arm64: 1.10.15
+ turbo-windows-64: 1.10.15
+ turbo-windows-arm64: 1.10.15
dev: true
/type-check@0.4.0:
@@ -9220,6 +9207,6 @@ packages:
resolution: {integrity: sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==}
dev: false
- /zod@3.22.3:
- resolution: {integrity: sha512-EjIevzuJRiRPbVH4mGc8nApb/lVLKVpmUhAaR5R5doKGfAnGJ6Gr3CViAVjP+4FWSxCsybeWQdcgCtbX+7oZug==}
+ /zod@3.22.2:
+ resolution: {integrity: sha512-wvWkphh5WQsJbVk1tbx1l1Ly4yg+XecD+Mq280uBGt9wa5BKSWf4Mhp6GmrkPixhMxmabYY7RbzlwVP32pbGCg==}
dev: false