diff --git a/components/nav.jsx b/components/nav.jsx
index 83e1ffb..d5fd083 100644
--- a/components/nav.jsx
+++ b/components/nav.jsx
@@ -1,7 +1,11 @@
-import React from "react";
+import React, { useState } from "react";
import NavStyle from "./nav.style";
import Link from "next/link";
import { useLanyard } from "react-use-lanyard";
+import IconButton from "@mui/material/IconButton";
+import Menu from "@mui/material/Menu";
+import MenuItem from "@mui/material/MenuItem";
+import MenuIcon from "@mui/icons-material/Menu";
const LINKS = [
{
@@ -23,6 +27,16 @@ function Nav() {
userId: "457039372009865226",
socket: true,
});
+
+ const [anchorEl, setAnchorEl] = useState(null);
+ const open = Boolean(anchorEl);
+ const handleClick = (event) => {
+ setAnchorEl(event.currentTarget);
+ };
+ const handleClose = () => {
+ setAnchorEl(null);
+ };
+
return (
@@ -50,6 +64,33 @@ function Nav() {
))}
+ {/* Mobile Menu */}
+
+
+
+
);
}
diff --git a/components/nav.style.js b/components/nav.style.js
index 03003cd..83aa066 100644
--- a/components/nav.style.js
+++ b/components/nav.style.js
@@ -25,6 +25,17 @@ export default styled.nav`
/* padding: 20px; */
margin-left: 10px;
}
+ @media (max-width: 900px) {
+ display: none;
+ }
+ }
+ .menu {
+ button {
+ color: white !important;
+ }
+ @media (min-width: 901px) {
+ display: none;
+ }
}
.indicator {
.circle {
diff --git a/components/skills.jsx b/components/skills.jsx
index afd308b..c556546 100644
--- a/components/skills.jsx
+++ b/components/skills.jsx
@@ -1,29 +1,55 @@
import React, { useEffect, useState } from "react";
import Skill from "./skillCard";
import SkillsStyle from "./skills.style";
-import axios from "axios";
+import axios from "handlers/axios";
+import { APISDK } from "handlers/sdk";
function Skills() {
const [skills, setSkills] = useState({});
+ const [loading, setLoading] = useState(true);
+
useEffect(() => {
- axios.get("").then((res) => {
- setSkills(res.data);
- });
- }, []);
+ // axios
+ // .get("/portfolio/api")
+ // .then((res) => {
+ // setSkills(res.data);
+ // console.log(res.data);
+ // setLoading(false);
+ // })
+ // .catch((err) => {
+ // console.log(err);
+ // });
+
+ const interval = setInterval(() => {
+ let [valid, skill] = APISDK.req();
+ if (valid) {
+ setSkills(skill);
+ setLoading(false);
+ console.log(skill);
+ } else {
+ console.error(skill);
+ setLoading(true);
+ }
+ }, 5000);
+ }, [loading, APISDK]);
return (
-
-
-
-
-
-
-
-
-
+ <>
+ {!loading && (
+
+
+
+
+
+
+
+
+
+ )}
+ >
);
}
diff --git a/handlers/axios.js b/handlers/axios.js
index d378720..6f9fdc2 100644
--- a/handlers/axios.js
+++ b/handlers/axios.js
@@ -1 +1,5 @@
import axios from "axios";
+
+export default axios.create({
+ baseURL: "https://api.b68dev.xyz",
+});
diff --git a/handlers/requester.js b/handlers/requester.js
new file mode 100644
index 0000000..559250b
--- /dev/null
+++ b/handlers/requester.js
@@ -0,0 +1,18 @@
+import axios from "./axios";
+
+export const tempEndpoint = (endpoint) => {
+ let response = [false, { error: "Error" }];
+ var reqPromise = axios
+ .get(endpoint)
+ .then((res) => {
+ console.log(res.data);
+ response = [true, res.data];
+ })
+ .catch((err) => {
+ console.log(err);
+ response = [false, err];
+ });
+ Promise.all(reqPromise).then(() => {
+ return response;
+ });
+};
diff --git a/handlers/sdk.js b/handlers/sdk.js
new file mode 100644
index 0000000..ec0ec8f
--- /dev/null
+++ b/handlers/sdk.js
@@ -0,0 +1,18 @@
+import { tempEndpoint } from "./requester";
+// gh_user,
+// discord_activity,
+// osu_recent,
+// osu_user,
+// osu_bestScores,
+// spotify_top_songs,
+// wakatime_user,
+// wakatime_stats,
+// hn_user,
+// twitter_user,
+// twitter_tweets,
+
+export const APISDK = {
+ req() {
+ return tempEndpoint("/me/github/userdata");
+ },
+};