Skip to content

Commit e2996af

Browse files
committed
Add projects to about page and contact methods
1 parent 2e69f95 commit e2996af

22 files changed

+350
-54
lines changed

package-lock.json

+23-11
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

+4-4
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,6 @@
1111
"@heroicons/react": "^2.0.16",
1212
"@hookform/error-message": "^2.0.1",
1313
"@hookform/resolvers": "^2.9.11",
14-
"@types/node": "18.15.0",
15-
"@types/react": "18.0.28",
16-
"@types/react-dom": "18.0.11",
1714
"class-variance-authority": "^0.4.0",
1815
"framer-motion": "^9.1.7",
1916
"next": "13.2.4",
@@ -29,6 +26,9 @@
2926
"zod": "^3.21.4"
3027
},
3128
"devDependencies": {
29+
"@types/node": "18.15.0",
30+
"@types/react": "18.0.28",
31+
"@types/react-dom": "18.0.11",
3232
"autoprefixer": "^10.4.14",
3333
"cross-env": "^7.0.3",
3434
"cssnano": "^5.1.15",
@@ -37,4 +37,4 @@
3737
"postcss": "^8.4.21",
3838
"tailwindcss": "^3.2.7"
3939
}
40-
}
40+
}
Binary file not shown.
Binary file not shown.

src/assets/images/icons/discord.tsx

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
import React, { SVGProps, forwardRef, ForwardedRef } from "react";
2+
3+
const DiscordIcon = forwardRef((props: SVGProps<SVGSVGElement>, ref: ForwardedRef<SVGSVGElement>) => (
4+
<svg
5+
ref={ref}
6+
xmlns="http://www.w3.org/2000/svg"
7+
viewBox="-10.63 -.07077792 823.87 610.06955549"
8+
height="1em"
9+
width="1em"
10+
fill="currentColor"
11+
{...props}
12+
>
13+
<path
14+
d="m678.27 51.62c90.35 132.84 134.97 282.68 118.29 455.18-.07.73-.45 1.4-1.05 1.84-68.42 50.24-134.71 80.73-200.07 100.95a2.55 2.55 0 0 1 -2.81-.95c-15.1-21.01-28.82-43.16-40.84-66.42-.69-1.37-.06-3.02 1.36-3.56 21.79-8.21 42.51-18.05 62.44-29.7 1.57-.92 1.67-3.17.22-4.25-4.23-3.14-8.42-6.44-12.43-9.74-.75-.61-1.76-.73-2.61-.32-129.39 59.75-271.13 59.75-402.05 0-.85-.38-1.86-.25-2.59.35-4 3.3-8.2 6.57-12.39 9.71-1.45 1.08-1.33 3.33.25 4.25 19.93 11.43 40.65 21.49 62.41 29.74 1.41.54 2.08 2.15 1.38 3.52-11.76 23.29-25.48 45.44-40.86 66.45-.67.85-1.77 1.24-2.81.92-65.05-20.22-131.34-50.71-199.76-100.95-.57-.44-.98-1.14-1.04-1.87-13.94-149.21 14.47-300.29 118.18-455.18.25-.41.63-.73 1.07-.92 51.03-23.42 105.7-40.65 162.84-50.49 1.04-.16 2.08.32 2.62 1.24 7.06 12.5 15.13 28.53 20.59 41.63 60.23-9.2 121.4-9.2 182.89 0 5.46-12.82 13.25-29.13 20.28-41.63a2.47 2.47 0 0 1 2.62-1.24c57.17 9.87 111.84 27.1 162.83 50.49.45.19.82.51 1.04.95zm-339.04 283.7c.63-44.11-31.53-80.61-71.9-80.61-40.04 0-71.89 36.18-71.89 80.61 0 44.42 32.48 80.6 71.89 80.6 40.05 0 71.9-36.18 71.9-80.6zm265.82 0c.63-44.11-31.53-80.61-71.89-80.61-40.05 0-71.9 36.18-71.9 80.61 0 44.42 32.48 80.6 71.9 80.6 40.36 0 71.89-36.18 71.89-80.6z"
15+
/>
16+
</svg>
17+
));
18+
19+
export default DiscordIcon;

src/assets/state/contactMethods.tsx

+43
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
import NewsIcon from "@heroicons/react/24/solid/NewspaperIcon";
2+
import EnvelopeIcon from "@heroicons/react/24/solid/EnvelopeIcon";
3+
import PencilSquareIcon from "@heroicons/react/24/solid/PencilSquareIcon";
4+
5+
import DiscordIcon from "@/assets/images/icons/discord";
6+
7+
8+
import { ReactNode } from "react";
9+
10+
interface IContactMethod {
11+
title: ReactNode;
12+
href?: string;
13+
icon: React.ForwardRefExoticComponent<any>;
14+
}
15+
16+
const contactMethods: IContactMethod[] = [
17+
{
18+
title: "Newsletter Signup",
19+
href: "/#sign-up",
20+
icon: NewsIcon
21+
},
22+
{
23+
title: "feedback@commitrocket.com",
24+
href: "mailto:feedback@commitrocket.com",
25+
icon: EnvelopeIcon
26+
},
27+
{
28+
title: "Feedback Form",
29+
href: "/contribute#feedback",
30+
icon: PencilSquareIcon
31+
},
32+
{
33+
title: <>
34+
Discord <br />
35+
<span className="text-sm font-semibold text-neutral-700">
36+
(Coming Soon™)
37+
</span>
38+
</>,
39+
icon: DiscordIcon
40+
}
41+
];
42+
43+
export default contactMethods;

src/assets/state/projects.tsx

+53
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
import { ReactNode } from "react";
2+
import { StaticImageData } from "next/image";
3+
4+
import TheNewOilThumbnail from "@/assets/images/content/projects/thenewoil.webp";
5+
import ReactRouterSitemapMakerThumbnail from "@/assets/images/content/projects/react-router-sitemap-maker.webp";
6+
7+
8+
export interface IProject {
9+
title: ReactNode;
10+
description: ReactNode,
11+
thumbnailAlt: string;
12+
thumbnail: StaticImageData;
13+
href: string;
14+
linkText?: string;
15+
linkRel?: string;
16+
}
17+
18+
const projects: IProject[] = [
19+
{
20+
title: "The New Oil (Redesign)",
21+
description: <>
22+
<p>
23+
We recently worked on redesigning The New Oil's website, which was an already existing website.
24+
Our design proposals impressed the website owner and they agreed to let us redesign the website with a unique requirement - no javascript.
25+
We utilized Astro's static site generation capabilities to develop a website that doesn't load any JavaScript once it's built.
26+
</p>
27+
<p>
28+
We completed the project in February 2023 and handed it over to the website owner,
29+
who was extremely pleased with the outcome.
30+
</p>
31+
</>,
32+
thumbnailAlt: "The New Oil redesigned frontpage",
33+
thumbnail: TheNewOilThumbnail,
34+
href: "https://www.thenewoil.org/",
35+
},
36+
{
37+
title: "React Router Sitemap Maker",
38+
description: <>
39+
<p>
40+
React Router Sitemap Maker is a JavaScript library we developed and posted on NPM.
41+
This library was born out of the necessity to build a portfolio website using React and React-Router.
42+
We found that existing solutions for generating sitemaps with React Router were lacking, so we decided to create our own.
43+
Our library has a large amount of code coverage, ensuring reliability and ease of use.
44+
</p>
45+
</>,
46+
thumbnailAlt: "React Router Sitemap Maker npm-page",
47+
thumbnail: ReactRouterSitemapMakerThumbnail,
48+
href: "https://github.com/Rikthepixel/react-router-sitemap-maker",
49+
linkText: "View Source"
50+
}
51+
];
52+
53+
export default projects;

src/assets/state/team.tsx

-2
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import RikPicture from "@/assets/images/people/rik.webp";
44
export interface IMember {
55
name: string;
66
title: string;
7-
text: string;
87
image: StaticImageData;
98
links: {
109
name: string;
@@ -17,7 +16,6 @@ const members: IMember[] = [
1716
image: RikPicture,
1817
name: "Rik",
1918
title: "Lead Developer & Founder",
20-
text: "As the creator of the project, I am passionate about delivering a top-quality Git client that meets the needs of developers everywhere.",
2119
links: [
2220
{
2321
href: "https://github.com/Rikthepixel",

src/components/navigation/Footer.tsx

+3-3
Original file line numberDiff line numberDiff line change
@@ -53,14 +53,14 @@ const Footer = () => {
5353
>
5454
Roadmap
5555
</Link>
56-
<Link
56+
{/* <Link
5757
color="white"
5858
href="/blog/2/planned-features"
5959
title="Planned Features"
6060
underline
6161
>
6262
Planned Features
63-
</Link>
63+
</Link> */}
6464
{/* <Link
6565
color="white"
6666
href="/blog/3/designs"
@@ -108,7 +108,7 @@ const Footer = () => {
108108
title="About the creators of Commit Rocket"
109109
underline
110110
>
111-
About Us
111+
About
112112
</Link>
113113
<Link
114114
color="white"

src/components/navigation/Header.tsx

+6-3
Original file line numberDiff line numberDiff line change
@@ -52,15 +52,18 @@ const Header = () => {
5252
<NavLink href="/" currentHref={router.pathname}>
5353
Home
5454
</NavLink>
55-
<NavLink href="/about" currentHref={router.pathname}>
56-
About
57-
</NavLink>
5855
<NavLink href="/contribute" currentHref={router.pathname}>
5956
Contribute
6057
</NavLink>
6158
<NavLink href="/blog" currentHref={router.pathname}>
6259
Blog
6360
</NavLink>
61+
<NavLink href="/about" currentHref={router.pathname}>
62+
About
63+
</NavLink>
64+
<NavLink href="/contact" currentHref={router.pathname}>
65+
Contact
66+
</NavLink>
6467
</div>
6568
</header>
6669
);

src/components/pages/about/Member.tsx

+1-2
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { motion } from "framer-motion";
33
import { IMember } from "@/assets/state/team";
44
import LinkButton from "@/components/controls/LinkButton";
55

6-
const Member = ({ image, name, title, text, links, animate }: IMember & { animate: boolean; }) => (
6+
const Member = ({ image, name, title, links }: IMember) => (
77
<li
88
className="flex flex-col items-center w-full max-w-full gap-2 p-4 border-2 rounded-md border-primary-light motion-safe:transition-all sm:p-6 md:w-fit"
99
aria-label="Member"
@@ -20,7 +20,6 @@ const Member = ({ image, name, title, text, links, animate }: IMember & { animat
2020
<div className="flex flex-col max-w-full gap-2 py-4 text-center w-72">
2121
<p className="text-2xl font-semibold text-secondary" aria-label="Name">{name}</p>
2222
<p className="font-semibold text-secondary" aria-label="Title / Role">{title}</p>
23-
<p className="text-fill-contrast " aria-label="Text">{text}</p>
2423
</div>
2524
</div>
2625
<div className="grid w-full grid-cols-1 gap-2 sm:grid-cols-2" aria-label="Links">

0 commit comments

Comments
 (0)