diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..dcb3cf8 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +*/.DS_STORE +/frontend/node_modules +/frontend/.next \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..3b66410 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "git.ignoreLimitWarning": true +} \ No newline at end of file diff --git a/frontend/components/Navbar.js b/frontend/components/Navbar.js new file mode 100644 index 0000000..5999c20 --- /dev/null +++ b/frontend/components/Navbar.js @@ -0,0 +1,12 @@ +function Navbar() { + return ( +
+
Camp.Dev
+
+ +
+
+ ); +} + +export default Navbar; \ No newline at end of file diff --git a/frontend/components/categories.js b/frontend/components/categories.js new file mode 100644 index 0000000..e69de29 diff --git a/frontend/components/courses.js b/frontend/components/courses.js new file mode 100644 index 0000000..e69de29 diff --git a/frontend/components/header.js b/frontend/components/header.js index ed2c1e3..f00e603 100644 --- a/frontend/components/header.js +++ b/frontend/components/header.js @@ -7,7 +7,7 @@ export default function Header() { const [mobileMenuIsOpen, setMobileMenuIsOpen] = useState(false); return ( -
+
- - Daniel and Shreya do it + + Daniel, Shreya and Pachi do it
- -
- + /* might wanna add
*/ +
+
+
+

+ Learn how to write code with collaboratively with Github and VSCode +

+
+
+ +
); diff --git a/frontend/components/utils/course.js b/frontend/components/utils/course.js new file mode 100644 index 0000000..f24323c --- /dev/null +++ b/frontend/components/utils/course.js @@ -0,0 +1,14 @@ +export default function Course(){ + return ( +
+
+ +
+
+

FRONTEND

+

Learn how to write code with collaboratively with Github and VSCode

+
+ +
+ ); +} \ No newline at end of file diff --git a/frontend/components/utils/coursewindow.js b/frontend/components/utils/coursewindow.js new file mode 100644 index 0000000..72ed3f0 --- /dev/null +++ b/frontend/components/utils/coursewindow.js @@ -0,0 +1,9 @@ +import Course from '@components/utils/course' + +export default function CourseWindow() { + return ( +
+ +
+ ); +} \ No newline at end of file diff --git a/frontend/components/utils/event.js b/frontend/components/utils/event.js new file mode 100644 index 0000000..eaeea5b --- /dev/null +++ b/frontend/components/utils/event.js @@ -0,0 +1,9 @@ +export default function Event() { + return ( +
+

FRIDAY

+

Serverless Functions w/ Emily and Chloe

+

Feb 4th @ 4PM EST

+
+ ); + } \ No newline at end of file diff --git a/frontend/components/utils/schedule.js b/frontend/components/utils/schedule.js new file mode 100644 index 0000000..a88905d --- /dev/null +++ b/frontend/components/utils/schedule.js @@ -0,0 +1,21 @@ +import Event from '@components/utils/event' + +export default function Schedule() { + return ( +
+
+
+ {/*image size needs to be*/} + +

Livestreams

+
+

Practice step-by-step guides to help you achieve a specific goal.

+
+ + + +
+
+
+ ); +} \ No newline at end of file diff --git a/frontend/components/utils/sidebarsection.js b/frontend/components/utils/sidebarsection.js index 445be06..775e6d2 100644 --- a/frontend/components/utils/sidebarsection.js +++ b/frontend/components/utils/sidebarsection.js @@ -1,15 +1,13 @@ +import { data } from "autoprefixer"; - -export default function SideBarSection() { +export default function SideBarSection({ data }) { return ( -
-
GETTING STARTED
+
+
GETTING STARTED
    -
  • Getting Started
  • -
  • Getting Started
  • -
  • Getting Started
  • -
  • Getting Started
  • -
  • Getting Started
  • + {data.menuoption.map((menuoptions) => ( +
  • {menuoptions}
  • + ))}
); diff --git a/frontend/components/window.js b/frontend/components/window.js new file mode 100644 index 0000000..3a1dfb1 --- /dev/null +++ b/frontend/components/window.js @@ -0,0 +1,11 @@ +import Schedule from '@components/utils/schedule' +import CourseWindow from '@components/utils/coursewindow' + +export default function Window() { + return ( +
+ + +
+ ); +} \ No newline at end of file diff --git a/frontend/css/index.css b/frontend/css/index.css new file mode 100644 index 0000000..b5c61c9 --- /dev/null +++ b/frontend/css/index.css @@ -0,0 +1,3 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; diff --git a/frontend/jsconfig.json b/frontend/jsconfig.json new file mode 100644 index 0000000..b502eba --- /dev/null +++ b/frontend/jsconfig.json @@ -0,0 +1,9 @@ +{ + "compilerOptions": { + "baseUrl": ".", + "paths": { + "@components/*": ["components/*"] + } + } + } + \ No newline at end of file diff --git a/frontend/pages/_app.js b/frontend/pages/_app.js index 15a23b3..9776a02 100644 --- a/frontend/pages/_app.js +++ b/frontend/pages/_app.js @@ -1,10 +1,10 @@ -import "../css/index.css"; import Head from "next/head"; import Layout from "@components/layout"; +import "../css/index.css"; function MyApp({ Component, pageProps }) { return ( - + <> Next.js Starter Tailwind - + ); } diff --git a/frontend/pages/api/menu.js b/frontend/pages/api/menu.js new file mode 100644 index 0000000..e1a7d5f --- /dev/null +++ b/frontend/pages/api/menu.js @@ -0,0 +1,6 @@ +export default function handler(req, res) { + res.status(200).json( + { menuoption: + ['Intro to JavaScript', 'Intro to Serverless', 'Building Slackbots', 'Intro to GameDev'] + }) + } \ No newline at end of file diff --git a/frontend/pages/index.js b/frontend/pages/index.js index 1e23c70..39f960f 100644 --- a/frontend/pages/index.js +++ b/frontend/pages/index.js @@ -1,22 +1,25 @@ -import Image from "next/image"; -import Button from "@components/utils/button.js"; -import Box from "@components/utils/box" -import About from "@components/utils/about" -import Layout from "@components/layout" +import Navbar from "@components/Navbar" +import Hero from "@components/Hero" -export default function IndexPage() { +function IndexPage({ data }) { + console.log(data) return ( - //Use flex-1 to allow a flex item to grow and shrink as needed, ignoring its initial size: - //Use items-stretch to stretch items to fill the container's cross axis: - //Use flex-col to position flex items vertically: - -
- -
- - -
+
+ +
- ); } + +export async function getStaticProps(context) { + const res = await fetch(`http://localhost:3000/api/menu`) + const data = await res.json() + + return { + props: { + data, + }, // will be passed to the page component as props + } +} + +export default IndexPage; \ No newline at end of file diff --git a/frontend/pages/test.js b/frontend/pages/test.js new file mode 100644 index 0000000..b6f4c0a --- /dev/null +++ b/frontend/pages/test.js @@ -0,0 +1,21 @@ +import Image from "next/image"; +import Button from "@components/utils/button.js"; +import Box from "@components/utils/box" +import About from "@components/utils/about" +import Layout from "@components/layout" +import Window from "@components/window" + +export default function IndexPage() { + return ( + //Use flex-1 to allow a flex item to grow and shrink as needed, ignoring its initial size: + //Use items-stretch to stretch items to fill the container's cross axis: + //Use flex-col to position flex items vertically: +
+
+
+ +
+
+
+ ); +} diff --git a/frontend/public/flag.png b/frontend/public/flag.png new file mode 100644 index 0000000..54c5a89 Binary files /dev/null and b/frontend/public/flag.png differ diff --git a/frontend/public/github.png b/frontend/public/github.png new file mode 100644 index 0000000..4fb5331 Binary files /dev/null and b/frontend/public/github.png differ diff --git a/frontend/public/hamburger.svg b/frontend/public/hamburger.svg new file mode 100644 index 0000000..e04f727 --- /dev/null +++ b/frontend/public/hamburger.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/frontend/public/livestream_icon.png b/frontend/public/livestream_icon.png new file mode 100644 index 0000000..6f54afe Binary files /dev/null and b/frontend/public/livestream_icon.png differ diff --git a/frontend/structure.md b/frontend/structure.md new file mode 100644 index 0000000..2762d53 --- /dev/null +++ b/frontend/structure.md @@ -0,0 +1,7 @@ +Components: +- navbar +- menu +- hero (masthead): make it ✨pop✨ +- category list/button (list of buttons) +- list of courses (redirect to page on website) +- scrollable list of livestreams (redirect to calendar) \ No newline at end of file