-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
bbe4cf8
commit a9f7d7b
Showing
30 changed files
with
498 additions
and
146 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
name: GitHub Pages deploy | ||
|
||
on: | ||
push: | ||
branches: [main] | ||
|
||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- name: Checkout 🛎️ | ||
uses: actions/[email protected] | ||
- name: Use Node.js 18.x | ||
uses: actions/setup-node@v1 | ||
with: | ||
node-version: "18.x" | ||
|
||
- name: Installing my packages | ||
run: npm ci | ||
|
||
- name: Extract repository name | ||
run: echo "BASE_PATH=/$(echo $GITHUB_REPOSITORY | cut -d '/' -f 2)" >> $GITHUB_ENV | ||
|
||
- name: Build my App | ||
run: npm run build && touch ./out/.nojekyll | ||
|
||
- name: Deploy 🚀 | ||
uses: JamesIves/[email protected] | ||
with: | ||
token: ${{ secrets.GITHUB_TOKEN }} | ||
branch: public # The branch the action should deploy to. | ||
folder: out # The folder the action should deploy to. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,35 +1,175 @@ | ||
import type { Metadata } from "next"; | ||
import localFont from "next/font/local"; | ||
"use client"; | ||
import { Hubballi } from "@next/font/google"; | ||
import React, { ReactNode } from "react"; | ||
import "./globals.css"; | ||
import Link from "next/link"; | ||
import { usePathname } from "next/navigation"; | ||
import { GoogleAnalytics } from "@next/third-parties/google"; | ||
import { useState } from "react"; | ||
|
||
const geistSans = localFont({ | ||
src: "./fonts/GeistVF.woff", | ||
variable: "--font-geist-sans", | ||
weight: "100 900", | ||
}); | ||
const geistMono = localFont({ | ||
src: "./fonts/GeistMonoVF.woff", | ||
variable: "--font-geist-mono", | ||
weight: "100 900", | ||
import SocialMediaButton from "../components/SocialMediaButton"; | ||
|
||
import { links } from '../data/links'; | ||
|
||
interface RootLayoutProps { | ||
children: ReactNode; | ||
} | ||
|
||
|
||
const hubballi = Hubballi({ | ||
weight: ["400"], | ||
subsets: ["latin"], | ||
}); | ||
|
||
export const metadata: Metadata = { | ||
title: "Create Next App", | ||
description: "Generated by create next app", | ||
}; | ||
|
||
export default function RootLayout({ | ||
children, | ||
}: Readonly<{ | ||
children: React.ReactNode; | ||
}>) { | ||
return ( | ||
<html lang="en"> | ||
<body | ||
className={`${geistSans.variable} ${geistMono.variable} antialiased`} | ||
> | ||
{children} | ||
</body> | ||
</html> | ||
); | ||
export default function RootLayout({ children }: RootLayoutProps) { | ||
const pathname = usePathname(); | ||
const [isOpen, setIsOpen] = useState(false); | ||
|
||
const toggleDropdown = () => { | ||
setIsOpen(!isOpen); | ||
}; | ||
|
||
const isHomePage = pathname === "/"; | ||
|
||
return ( | ||
<html lang="en"> | ||
<body className={`${hubballi.className}`}> | ||
<GoogleAnalytics gaId="G-B1TRQFQPF3" /> | ||
<div className="max-w-screen-xl w-full flex lg:flex-row md:flex-row flex-col items-center mx-auto gap-y-10 gap-x-5 mt-12 px-5"> | ||
<img | ||
src="/img/github_photo.png" | ||
width={400} | ||
height={419} | ||
alt="Haries' Profile Picture" | ||
style={{ borderRadius: "50%" }} | ||
/> | ||
<div className="flex flex-col"> | ||
<p style={{ fontSize: 50 }} className="leading-10 mb-4"> | ||
Hi! I am{" "} | ||
<span className="text-gray-300">Muhamad</span>{" "} | ||
Haries{" "} | ||
<span className="text-gray-300">Ramdhani</span> | ||
</p> | ||
<div className="flex flex-row gap-x-2 mb-8"> | ||
{links.map((link) => ( | ||
<SocialMediaButton | ||
key={link.image_filename} | ||
url={link.url} | ||
image_filename={link.image_filename} | ||
/> | ||
))} | ||
</div> | ||
<p | ||
style={{ fontSize: 24 }} | ||
className="leading-7 text-justify" | ||
> | ||
I am a first-year PhD Student in Medical Sciences at | ||
the Institute of Medical Sciences, University of | ||
Aberdeen in Morgan Lab, supervised by{" "} | ||
<Link | ||
href="https://www.abdn.ac.uk/people/michael.morgan" | ||
className="text-indigo-400" | ||
> | ||
Dr. Michael Morgan | ||
</Link>{" "} | ||
and{" "} | ||
<Link | ||
href="https://www.abdn.ac.uk/ims/profiles/c.debari" | ||
className="text-indigo-400" | ||
> | ||
Prof. Casimo de Bari | ||
</Link> | ||
. My research interests are in bioinformatics | ||
software and algorithm development, also the | ||
utilization of omics data to understand the | ||
complexity of biological systems through data | ||
visualization and machine learning. | ||
<br /> | ||
<br /> | ||
Prior to my PhD, I received my BSc in Molecular | ||
Biology and Genetics from{" "} | ||
<Link | ||
href="https://www.gtu.edu.tr/?languageId=2" | ||
className="text-indigo-400" | ||
> | ||
Gebze Technical University | ||
</Link> | ||
, Turkey{" "} | ||
<Link | ||
href="https://www.turkiyeburslari.gov.tr/" | ||
className="text-indigo-400" | ||
> | ||
(Turkish scholarship) | ||
</Link>{" "} | ||
and after that worked as a Data Scientist for{" "} | ||
<Link | ||
href="https://www.linkedin.com/company/homecreditindonesia/" | ||
className="text-indigo-400" | ||
> | ||
Home Credit | ||
</Link> | ||
. | ||
<br /> | ||
<br /> | ||
Currently as part of my PhD, I'm working on the | ||
development of robust and scalable computational and | ||
statistical methods for differential cell crosstalk | ||
analysis, funded by{" "} | ||
<Link | ||
href="https://www.abdn.ac.uk/smmsn/" | ||
className="text-indigo-400" | ||
> | ||
The School of Medicine, Medical Sciences and | ||
Nutrition | ||
</Link>{" "} | ||
through the IMS studentship. | ||
</p> | ||
</div> | ||
</div> | ||
<div className="max-w-screen-xl w-full flex flex-col items-start gap-x-5 mt-12 mx-auto px-5"> | ||
<div className="flex flex-wrap gap-x-8"> | ||
<Link href="/"> | ||
<h1 | ||
style={{ fontSize: 24 }} | ||
className="mb-5 px-2 bg-gray-200 rounded-lg" | ||
> | ||
Side Projects | ||
</h1> | ||
</Link> | ||
<h1 | ||
style={{ fontSize: 24 }} | ||
className="mb-5 text-gray-400" | ||
> | ||
Blog | ||
</h1> | ||
<h1 | ||
style={{ fontSize: 24 }} | ||
className="mb-5 text-gray-400" | ||
> | ||
Research | ||
</h1> | ||
<h1 | ||
style={{ fontSize: 24 }} | ||
className="mb-5 text-gray-400" | ||
> | ||
Presentation | ||
</h1> | ||
<h1 | ||
style={{ fontSize: 24 }} | ||
className="mb-5 text-gray-400" | ||
> | ||
Teaching | ||
</h1> | ||
</div> | ||
|
||
<div className="w-full grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-x-10 gap-y-4"> | ||
{children} | ||
</div> | ||
</div> | ||
<div className="max-w-screen-xl w-full flex flex-col items-center gap-x-5 mt-12 mx-auto px-5"> | ||
<p>Haries Ramdhani © 2024.</p> | ||
</div> | ||
</body> | ||
</html> | ||
); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,101 +1,19 @@ | ||
import Image from "next/image"; | ||
import ProjectCard from "@/components/ProjectCard"; | ||
|
||
export const metadata = { | ||
title: "Haries Ramdhani", | ||
description: | ||
"Github Page of Haries Ramdhani", | ||
viewport: "width=device-width, initial-scale=1", | ||
icons: { | ||
icon: "/img/icon.png", | ||
}, | ||
}; | ||
|
||
export default function Home() { | ||
return ( | ||
<div className="grid grid-rows-[20px_1fr_20px] items-center justify-items-center min-h-screen p-8 pb-20 gap-16 sm:p-20 font-[family-name:var(--font-geist-sans)]"> | ||
<main className="flex flex-col gap-8 row-start-2 items-center sm:items-start"> | ||
<Image | ||
className="dark:invert" | ||
src="https://nextjs.org/icons/next.svg" | ||
alt="Next.js logo" | ||
width={180} | ||
height={38} | ||
priority | ||
/> | ||
<ol className="list-inside list-decimal text-sm text-center sm:text-left font-[family-name:var(--font-geist-mono)]"> | ||
<li className="mb-2"> | ||
Get started by editing{" "} | ||
<code className="bg-black/[.05] dark:bg-white/[.06] px-1 py-0.5 rounded font-semibold"> | ||
app/page.tsx | ||
</code> | ||
. | ||
</li> | ||
<li>Save and see your changes instantly.</li> | ||
</ol> | ||
|
||
<div className="flex gap-4 items-center flex-col sm:flex-row"> | ||
<a | ||
className="rounded-full border border-solid border-transparent transition-colors flex items-center justify-center bg-foreground text-background gap-2 hover:bg-[#383838] dark:hover:bg-[#ccc] text-sm sm:text-base h-10 sm:h-12 px-4 sm:px-5" | ||
href="https://vercel.com/new?utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app" | ||
target="_blank" | ||
rel="noopener noreferrer" | ||
> | ||
<Image | ||
className="dark:invert" | ||
src="https://nextjs.org/icons/vercel.svg" | ||
alt="Vercel logomark" | ||
width={20} | ||
height={20} | ||
/> | ||
Deploy now | ||
</a> | ||
<a | ||
className="rounded-full border border-solid border-black/[.08] dark:border-white/[.145] transition-colors flex items-center justify-center hover:bg-[#f2f2f2] dark:hover:bg-[#1a1a1a] hover:border-transparent text-sm sm:text-base h-10 sm:h-12 px-4 sm:px-5 sm:min-w-44" | ||
href="https://nextjs.org/docs?utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app" | ||
target="_blank" | ||
rel="noopener noreferrer" | ||
> | ||
Read our docs | ||
</a> | ||
</div> | ||
</main> | ||
<footer className="row-start-3 flex gap-6 flex-wrap items-center justify-center"> | ||
<a | ||
className="flex items-center gap-2 hover:underline hover:underline-offset-4" | ||
href="https://nextjs.org/learn?utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app" | ||
target="_blank" | ||
rel="noopener noreferrer" | ||
> | ||
<Image | ||
aria-hidden | ||
src="https://nextjs.org/icons/file.svg" | ||
alt="File icon" | ||
width={16} | ||
height={16} | ||
/> | ||
Learn | ||
</a> | ||
<a | ||
className="flex items-center gap-2 hover:underline hover:underline-offset-4" | ||
href="https://vercel.com/templates?framework=next.js&utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app" | ||
target="_blank" | ||
rel="noopener noreferrer" | ||
> | ||
<Image | ||
aria-hidden | ||
src="https://nextjs.org/icons/window.svg" | ||
alt="Window icon" | ||
width={16} | ||
height={16} | ||
/> | ||
Examples | ||
</a> | ||
<a | ||
className="flex items-center gap-2 hover:underline hover:underline-offset-4" | ||
href="https://nextjs.org?utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app" | ||
target="_blank" | ||
rel="noopener noreferrer" | ||
> | ||
<Image | ||
aria-hidden | ||
src="https://nextjs.org/icons/globe.svg" | ||
alt="Globe icon" | ||
width={16} | ||
height={16} | ||
/> | ||
Go to nextjs.org → | ||
</a> | ||
</footer> | ||
</div> | ||
<> | ||
<ProjectCard /> | ||
</> | ||
); | ||
} | ||
} |
Oops, something went wrong.