Skip to content

Commit f94bed7

Browse files
committed
feat: migrate homepage
1 parent 7402020 commit f94bed7

File tree

12 files changed

+535
-98
lines changed

12 files changed

+535
-98
lines changed

.github/workflows/build.yml

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
name: Deploy Github Pages
2+
3+
on:
4+
push:
5+
branches: ["master"]
6+
workflow_dispatch:
7+
8+
permissions:
9+
contents: read
10+
pages: write
11+
id-token: write
12+
13+
concurrency:
14+
group: "pages"
15+
cancel-in-progress: false
16+
17+
jobs:
18+
build:
19+
environment:
20+
name: github-pages
21+
url: ${{ steps.deployment.outputs.page_url }}
22+
23+
runs-on: ubuntu-latest
24+
25+
steps:
26+
- uses: actions/checkout@v4
27+
- name: Use Node.js
28+
uses: actions/setup-node@v4
29+
with:
30+
node-version: 20
31+
- name: Build
32+
run: |
33+
npm ci
34+
npm run build
35+
- name: Upload artifact
36+
uses: actions/upload-pages-artifact@v2
37+
with:
38+
path: "./out"
39+
- name: Deploy to GitHub Pages
40+
id: deployment
41+
uses: actions/deploy-pages@v2

next.config.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,15 @@ import type { NextConfig } from "next";
22

33
const nextConfig: NextConfig = {
44
/* config options here */
5+
output: "export",
6+
images: {
7+
remotePatterns: [
8+
{
9+
protocol: "https",
10+
hostname: "**",
11+
},
12+
],
13+
},
514
};
615

716
export default nextConfig;

public/cover.jpg

381 KB
Loading

public/file.svg

Lines changed: 0 additions & 1 deletion
This file was deleted.

public/globe.svg

Lines changed: 0 additions & 1 deletion
This file was deleted.

public/next.svg

Lines changed: 0 additions & 1 deletion
This file was deleted.

public/vercel.svg

Lines changed: 0 additions & 1 deletion
This file was deleted.

public/window.svg

Lines changed: 0 additions & 1 deletion
This file was deleted.

src/app/components/Footer.tsx

Lines changed: 145 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,145 @@
1+
import Image from "next/image";
2+
3+
export default function Footer() {
4+
return (
5+
<footer className="bg-white dark:bg-gray-900">
6+
<div className="mx-auto w-full max-w-screen-xl p-4 py-6 lg:py-8">
7+
<div className="md:flex md:justify-between">
8+
<div className="mb-6 md:mb-0">
9+
<a
10+
href="https://hallofcodes.github.io/"
11+
className="flex items-center"
12+
>
13+
<Image
14+
src="https://avatars.githubusercontent.com/u/93744673?s=200&v=4"
15+
className="rounded-full h-8 me-3"
16+
width={32}
17+
height={32}
18+
alt="Hall of Codes Logo"
19+
/>
20+
<span className="self-center text-2xl font-semibold whitespace-nowrap dark:text-white">
21+
Hall of Codes
22+
</span>
23+
</a>
24+
</div>
25+
<div className="grid grid-cols-2 gap-8 sm:gap-6 sm:grid-cols-3">
26+
<div>
27+
<h2 className="mb-6 text-sm font-semibold text-gray-900 uppercase dark:text-white">
28+
Follow us
29+
</h2>
30+
<ul className="text-gray-500 dark:text-gray-400 font-medium">
31+
<li className="mb-4">
32+
<a
33+
href="https://github.com/hallofcodes"
34+
className="hover:underline "
35+
>
36+
Github
37+
</a>
38+
</li>
39+
<li className="mb-4">
40+
<a
41+
href="https://facebook.com/hallofcodes"
42+
className="hover:underline"
43+
>
44+
Facebook
45+
</a>
46+
</li>
47+
</ul>
48+
</div>
49+
<div>
50+
<h2 className="mb-6 text-sm font-semibold text-gray-900 uppercase dark:text-white">
51+
Legal
52+
</h2>
53+
<ul className="text-gray-500 dark:text-gray-400 font-medium">
54+
<li className="mb-4">
55+
<a href="/privacy" className="hover:underline">
56+
Privacy Policy
57+
</a>
58+
</li>
59+
<li>
60+
<a href="/terms" className="hover:underline">
61+
Terms &amp; Conditions
62+
</a>
63+
</li>
64+
<a
65+
href="/community-guidelines"
66+
className="hover:underline"
67+
>
68+
Community Guidelines
69+
</a>
70+
</ul>
71+
</div>
72+
</div>
73+
</div>
74+
<hr className="my-6 border-gray-200 sm:mx-auto dark:border-gray-700 lg:my-8" />
75+
<div className="sm:flex sm:items-center sm:justify-between">
76+
<span className="text-sm text-gray-500 sm:text-center dark:text-gray-400">
77+
© 2024{" "}
78+
<a
79+
href="https://hallofcodes.github.io/"
80+
className="hover:underline"
81+
>
82+
Hall of Codes
83+
</a>
84+
. All Rights Reserved.
85+
</span>
86+
<div className="flex mt-4 sm:justify-center sm:mt-0">
87+
<a
88+
href="https://facebook.com/hallofcodes"
89+
className="text-gray-500 hover:text-gray-900 dark:hover:text-white"
90+
>
91+
<svg
92+
className="w-4 h-4"
93+
aria-hidden="true"
94+
xmlns="http://www.w3.org/2000/svg"
95+
fill="currentColor"
96+
viewBox="0 0 8 19"
97+
>
98+
<path
99+
fill-rule="evenodd"
100+
d="M6.135 3H8V0H6.135a4.147 4.147 0 0 0-4.142 4.142V6H0v3h2v9.938h3V9h2.021l.592-3H5V3.591A.6.6 0 0 1 5.592 3h.543Z"
101+
clip-rule="evenodd"
102+
/>
103+
</svg>
104+
<span className="sr-only">Facebook page</span>
105+
</a>
106+
<a
107+
href="https://discord.gg/u8JnWbaFgK"
108+
className="text-gray-500 hover:text-gray-900 dark:hover:text-white ms-5"
109+
>
110+
<svg
111+
className="w-4 h-4"
112+
aria-hidden="true"
113+
xmlns="http://www.w3.org/2000/svg"
114+
fill="currentColor"
115+
viewBox="0 0 21 16"
116+
>
117+
<path d="M16.942 1.556a16.3 16.3 0 0 0-4.126-1.3 12.04 12.04 0 0 0-.529 1.1 15.175 15.175 0 0 0-4.573 0 11.585 11.585 0 0 0-.535-1.1 16.274 16.274 0 0 0-4.129 1.3A17.392 17.392 0 0 0 .182 13.218a15.785 15.785 0 0 0 4.963 2.521c.41-.564.773-1.16 1.084-1.785a10.63 10.63 0 0 1-1.706-.83c.143-.106.283-.217.418-.33a11.664 11.664 0 0 0 10.118 0c.137.113.277.224.418.33-.544.328-1.116.606-1.71.832a12.52 12.52 0 0 0 1.084 1.785 16.46 16.46 0 0 0 5.064-2.595 17.286 17.286 0 0 0-2.973-11.59ZM6.678 10.813a1.941 1.941 0 0 1-1.8-2.045 1.93 1.93 0 0 1 1.8-2.047 1.919 1.919 0 0 1 1.8 2.047 1.93 1.93 0 0 1-1.8 2.045Zm6.644 0a1.94 1.94 0 0 1-1.8-2.045 1.93 1.93 0 0 1 1.8-2.047 1.918 1.918 0 0 1 1.8 2.047 1.93 1.93 0 0 1-1.8 2.045Z" />
118+
</svg>
119+
<span className="sr-only">Discord community</span>
120+
</a>
121+
<a
122+
href="https://github.com/hallofcodes"
123+
className="text-gray-500 hover:text-gray-900 dark:hover:text-white ms-5"
124+
>
125+
<svg
126+
className="w-4 h-4"
127+
aria-hidden="true"
128+
xmlns="http://www.w3.org/2000/svg"
129+
fill="currentColor"
130+
viewBox="0 0 20 20"
131+
>
132+
<path
133+
fill-rule="evenodd"
134+
d="M10 .333A9.911 9.911 0 0 0 6.866 19.65c.5.092.678-.215.678-.477 0-.237-.01-1.017-.014-1.845-2.757.6-3.338-1.169-3.338-1.169a2.627 2.627 0 0 0-1.1-1.451c-.9-.615.07-.6.07-.6a2.084 2.084 0 0 1 1.518 1.021 2.11 2.11 0 0 0 2.884.823c.044-.503.268-.973.63-1.325-2.2-.25-4.516-1.1-4.516-4.9A3.832 3.832 0 0 1 4.7 7.068a3.56 3.56 0 0 1 .095-2.623s.832-.266 2.726 1.016a9.409 9.409 0 0 1 4.962 0c1.89-1.282 2.717-1.016 2.717-1.016.366.83.402 1.768.1 2.623a3.827 3.827 0 0 1 1.02 2.659c0 3.807-2.319 4.644-4.525 4.889a2.366 2.366 0 0 1 .673 1.834c0 1.326-.012 2.394-.012 2.72 0 .263.18.572.681.475A9.911 9.911 0 0 0 10 .333Z"
135+
clip-rule="evenodd"
136+
/>
137+
</svg>
138+
<span className="sr-only">GitHub account</span>
139+
</a>
140+
</div>
141+
</div>
142+
</div>
143+
</footer>
144+
);
145+
}

src/app/components/Nav.tsx

Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,128 @@
1+
import Image from "next/image";
2+
import Link from "next/link";
3+
4+
export default function Nav() {
5+
return (
6+
<nav className="bg-white dark:bg-gray-900 max-w-full z-20 top-0 start-0">
7+
<div className="flex flex-wrap items-center justify-between mx-auto pt-5 pb-5 pl-4 pr-4">
8+
<Link
9+
href="/"
10+
className="flex items-center space-x-3 rtl:space-x-reverse"
11+
>
12+
<Image
13+
src="https://avatars.githubusercontent.com/u/93744673?s=200&v=4"
14+
className="rounded-full h-7"
15+
alt="Hall of Codes Logo"
16+
width={28}
17+
height={28}
18+
/>
19+
<span className="self-center text-2xl font-semibold whitespace-nowrap dark:text-white">
20+
hallofcodes
21+
</span>
22+
</Link>
23+
<div className="flex md:order-2 space-x-3 md:space-x-0 rtl:space-x-reverse">
24+
<button
25+
id="theme-toggle"
26+
type="button"
27+
className="text-gray-500 dark:text-gray-400 hover:bg-gray-100 dark:hover:bg-gray-700 focus:outline-none focus:ring-4 focus:ring-gray-200 dark:focus:ring-gray-700 rounded-lg text-sm p-2.5"
28+
>
29+
<svg
30+
id="theme-toggle-dark-icon"
31+
className="hidden w-5 h-5"
32+
fill="currentColor"
33+
viewBox="0 0 20 20"
34+
xmlns="http://www.w3.org/2000/svg"
35+
>
36+
<path d="M17.293 13.293A8 8 0 016.707 2.707a8.001 8.001 0 1010.586 10.586z"></path>
37+
</svg>
38+
<svg
39+
id="theme-toggle-light-icon"
40+
className="hidden w-5 h-5"
41+
fill="currentColor"
42+
viewBox="0 0 20 20"
43+
xmlns="http://www.w3.org/2000/svg"
44+
>
45+
<path
46+
d="M10 2a1 1 0 011 1v1a1 1 0 11-2 0V3a1 1 0 011-1zm4 8a4 4 0 11-8 0 4 4 0 018 0zm-.464 4.95l.707.707a1 1 0 001.414-1.414l-.707-.707a1 1 0 00-1.414 1.414zm2.12-10.607a1 1 0 010 1.414l-.706.707a1 1 0 11-1.414-1.414l.707-.707a1 1 0 011.414 0zM17 11a1 1 0 100-2h-1a1 1 0 100 2h1zm-7 4a1 1 0 011 1v1a1 1 0 11-2 0v-1a1 1 0 011-1zM5.05 6.464A1 1 0 106.465 5.05l-.708-.707a1 1 0 00-1.414 1.414l.707.707zm1.414 8.486l-.707.707a1 1 0 01-1.414-1.414l.707-.707a1 1 0 011.414 1.414zM4 11a1 1 0 100-2H3a1 1 0 000 2h1z"
47+
fillRule="evenodd"
48+
clipRule="evenodd"
49+
></path>
50+
</svg>
51+
</button>
52+
53+
<button
54+
data-collapse-toggle="navbar-sticky"
55+
type="button"
56+
className="inline-flex items-center p-2 w-10 h-10 justify-center text-sm text-gray-500 rounded-lg md:hidden hover:bg-gray-100 focus:outline-none focus:ring-2 focus:ring-gray-200 dark:text-gray-400 dark:hover:bg-gray-900 dark:focus:ring-gray-600"
57+
aria-controls="navbar-sticky"
58+
aria-expanded="false"
59+
>
60+
<span className="sr-only">Open main menu</span>
61+
<svg
62+
className="w-5 h-5"
63+
aria-hidden="true"
64+
xmlns="http://www.w3.org/2000/svg"
65+
fill="none"
66+
viewBox="0 0 17 14"
67+
>
68+
<path
69+
stroke="currentColor"
70+
strokeLinecap="round"
71+
strokeLinejoin="round"
72+
strokeWidth="2"
73+
d="M1 1h15M1 7h15M1 13h15"
74+
/>
75+
</svg>
76+
</button>
77+
</div>
78+
<div
79+
className="items-center justify-between w-full md:flex md:w-auto md:order-1"
80+
id="navbar-sticky"
81+
>
82+
<ul className="flex flex-col w-full p-4 md:p-0 mt-4 font-medium border border-gray-100 rounded-lg bg-gray-50 md:space-x-8 rtl:space-x-reverse md:flex-row md:mt-0 md:border-0 md:bg-white dark:bg-gray-900 md:bg-gray-900 dark:border-gray-700">
83+
<li>
84+
<Link
85+
href="/"
86+
className="block py-2 px-3 text-gray-900 rounded hover:bg-gray-100 md:hover:bg-transparent md:hover:text-blue-700 md:p-0 md:dark:hover:text-blue-500 dark:text-white dark:hover:bg-gray-900 dark:hover:text-white md:dark:hover:bg-transparent dark:border-gray-700"
87+
>
88+
Home
89+
</Link>
90+
</li>
91+
<li>
92+
<Link
93+
href="/about"
94+
className="block py-2 px-3 text-gray-900 rounded hover:bg-gray-100 md:hover:bg-transparent md:hover:text-blue-700 md:p-0 md:dark:hover:text-blue-500 dark:text-white dark:hover:bg-gray-900 dark:hover:text-white md:dark:hover:bg-transparent dark:border-gray-700"
95+
>
96+
About
97+
</Link>
98+
</li>
99+
<li>
100+
<Link
101+
href="/events"
102+
className="block py-2 px-3 text-gray-900 rounded hover:bg-gray-100 md:hover:bg-transparent md:hover:text-blue-700 md:p-0 md:dark:hover:text-blue-500 dark:text-white dark:hover:bg-gray-900 dark:hover:text-white md:dark:hover:bg-transparent dark:border-gray-700"
103+
>
104+
Events
105+
</Link>
106+
</li>
107+
<li>
108+
<Link
109+
href="/projects"
110+
className="block py-2 px-3 text-gray-900 rounded hover:bg-gray-100 md:hover:bg-transparent md:hover:text-blue-700 md:p-0 md:dark:hover:text-blue-500 dark:text-white dark:hover:bg-gray-900 dark:hover:text-white md:dark:hover:bg-transparent dark:border-gray-700"
111+
>
112+
Projects
113+
</Link>
114+
</li>
115+
<li>
116+
<Link
117+
href="/contact"
118+
className="block py-2 px-3 text-gray-900 rounded hover:bg-gray-100 md:hover:bg-transparent md:hover:text-blue-700 md:p-0 md:dark:hover:text-blue-500 dark:text-white dark:hover:bg-gray-900 dark:hover:text-white md:dark:hover:bg-transparent dark:border-gray-700"
119+
>
120+
Contact
121+
</Link>
122+
</li>
123+
</ul>
124+
</div>
125+
</div>
126+
</nav>
127+
);
128+
}

0 commit comments

Comments
 (0)