diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index eaa6882..0b88303 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -1,31 +1,41 @@ name: Build and Deploy + env: CI: false GITHUB_USERNAME: ${{ github.repository_owner }} - REACT_APP_GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This is automatically set by Github Actions + REACT_APP_GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} USE_GITHUB_DATA: "true" + on: push: branches: - - master + - main schedule: - - cron: "0 12 * * 1" # see https://docs.github.com/en/actions/reference/events-that-trigger-workflows#scheduled-events + - cron: "0 12 * * 1" + jobs: build-and-deploy: runs-on: ubuntu-latest + permissions: + contents: write steps: - - name: Checkout ๐๏ธ - uses: actions/checkout@v2 # If you're using actions/checkout@v2 you must set persist-credentials to false in most cases for the deployment to work correctly. + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup Node + uses: actions/setup-node@v4 with: - persist-credentials: false + node-version: "20" + cache: "npm" + + - name: Install dependencies + run: npm ci + + - name: Build + run: npm run build - - name: Install and Build ๐ง # Build the Project - run: | - npm install - npm run build - - name: Deploy ๐ - uses: JamesIves/github-pages-deploy-action@releases/v3 + - name: Deploy + uses: JamesIves/github-pages-deploy-action@v4 with: - GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }} # This is provided by GitHub. - BRANCH: gh-pages # The branch the action should deploy to. - FOLDER: build # The folder the action should deploy. + folder: dist + branch: gh-pages \ No newline at end of file diff --git a/.github/workflows/prettier.yml b/.github/workflows/prettier.yml index d5052f5..fa609f3 100644 --- a/.github/workflows/prettier.yml +++ b/.github/workflows/prettier.yml @@ -1,26 +1,26 @@ name: Check Format + on: push: pull_request: - branches: - - master + branches: + - main + jobs: check-format: runs-on: ubuntu-latest steps: - - name: Checkout ๐๏ธ - uses: actions/checkout@v2 - with: - persist-credentials: false + - name: Checkout + uses: actions/checkout@v4 - - uses: actions/setup-node@v2-beta + - name: Setup Node + uses: actions/setup-node@v4 with: - node-version: '12' - - - name: Install Prettier - run: npm install -g prettier + node-version: "20" + cache: "npm" - - name: Check Format - run: | - prettier -c "./**/*.{js,css,json}" + - name: Install dependencies + run: npm ci + - name: Check format + run: npm run check-format \ No newline at end of file diff --git a/.gitignore b/.gitignore index 3b3d6c4..0bd6513 100644 --- a/.gitignore +++ b/.gitignore @@ -8,8 +8,7 @@ # testing /coverage /build - - +/dist # misc .DS_Store .env diff --git a/index.html b/index.html new file mode 100644 index 0000000..4b83570 --- /dev/null +++ b/index.html @@ -0,0 +1,54 @@ + + +
+ + + + + + + + + + + + + + + + +- {emoji("Made by Saad Pasta | Modified by Axhar")} + {emoji("Built by Azhar Arshad")}
Theme by{" "}
diff --git a/src/components/githubProfileCard/GithubProfileCard.js b/src/components/githubProfileCard/GithubProfileCard.js
index 343b6ae..242e06c 100644
--- a/src/components/githubProfileCard/GithubProfileCard.js
+++ b/src/components/githubProfileCard/GithubProfileCard.js
@@ -3,7 +3,7 @@ import "./GithubProfileCard.scss";
import SocialMedia from "../../components/socialMedia/SocialMedia";
import {contactInfo} from "../../portfolio";
import emoji from "react-easy-emoji";
-import {Fade} from "react-reveal";
+import {Fade} from "../animation/Reveal";
export default function GithubProfileCard({prof}) {
if (prof.isHireable) {
diff --git a/src/components/githubRepoCard/GithubRepoCard.js b/src/components/githubRepoCard/GithubRepoCard.js
index 47ab368..52106ac 100644
--- a/src/components/githubRepoCard/GithubRepoCard.js
+++ b/src/components/githubRepoCard/GithubRepoCard.js
@@ -1,6 +1,6 @@
import React from "react";
import "./GithubRepoCard.scss";
-import {Fade} from "react-reveal";
+import {Fade} from "../animation/Reveal";
export default function GithubRepoCard({repo, isDark}) {
function openRepoinNewTab(url) {
diff --git a/src/containers/StartupProjects/StartupProject.js b/src/containers/StartupProjects/StartupProject.js
index cbda4ed..4650122 100644
--- a/src/containers/StartupProjects/StartupProject.js
+++ b/src/containers/StartupProjects/StartupProject.js
@@ -1,11 +1,14 @@
import React, {useContext} from "react";
import "./StartupProjects.scss";
import {bigProjects} from "../../portfolio";
-import {Fade} from "react-reveal";
+import {Fade} from "../../components/animation/Reveal";
import StyleContext from "../../contexts/StyleContext";
export default function StartupProject() {
function openProjectInNewWindow(url) {
+ if (!url) {
+ return;
+ }
var win = window.open(url, "_blank");
win.focus();
}
diff --git a/src/containers/StartupProjects/StartupProjects.scss b/src/containers/StartupProjects/StartupProjects.scss
index ece3ecf..84d9243 100644
--- a/src/containers/StartupProjects/StartupProjects.scss
+++ b/src/containers/StartupProjects/StartupProjects.scss
@@ -4,7 +4,6 @@
max-width: 100%;
height: auto;
width: 250px;
-
}
.card-title {
color: $titleColor;
diff --git a/src/containers/achievement/Achievement.js b/src/containers/achievement/Achievement.js
index 70249a4..2071aaf 100644
--- a/src/containers/achievement/Achievement.js
+++ b/src/containers/achievement/Achievement.js
@@ -2,7 +2,7 @@ import React, {useContext} from "react";
import "./Achievement.scss";
import AchievementCard from "../../components/achievementCard/AchievementCard";
import {achievementSection} from "../../portfolio";
-import {Fade} from "react-reveal";
+import {Fade} from "../../components/animation/Reveal";
import StyleContext from "../../contexts/StyleContext";
export default function Achievement() {
const {isDark} = useContext(StyleContext);
diff --git a/src/containers/blogs/Blogs.js b/src/containers/blogs/Blogs.js
index c25298a..1d85e16 100644
--- a/src/containers/blogs/Blogs.js
+++ b/src/containers/blogs/Blogs.js
@@ -2,7 +2,7 @@ import React, {useContext} from "react";
import "./Blog.scss";
import BlogCard from "../../components/blogCard/BlogCard";
import {blogSection} from "../../portfolio";
-import {Fade} from "react-reveal";
+import {Fade} from "../../components/animation/Reveal";
import StyleContext from "../../contexts/StyleContext";
export default function Blogs() {
const {isDark} = useContext(StyleContext);
diff --git a/src/containers/contact/Contact.js b/src/containers/contact/Contact.js
index b5885f4..a193a21 100644
--- a/src/containers/contact/Contact.js
+++ b/src/containers/contact/Contact.js
@@ -2,10 +2,11 @@ import React, {useContext} from "react";
import "./Contact.scss";
import SocialMedia from "../../components/socialMedia/SocialMedia";
import {illustration, contactInfo} from "../../portfolio";
-import {Fade} from "react-reveal";
+import {Fade} from "../../components/animation/Reveal";
import email from "../../assets/lottie/email";
import DisplayLottie from "../../components/displayLottie/DisplayLottie";
import StyleContext from "../../contexts/StyleContext";
+import contactMailDark from "../../assets/images/contactMailDark.svg";
export default function Contact() {
const {isDark} = useContext(StyleContext);
@@ -49,10 +50,7 @@ export default function Contact() {
{illustration.animated ? (
+
)}