-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Build hero section for main pages (#11)
- Loading branch information
1 parent
df01303
commit d0e6290
Showing
14 changed files
with
247 additions
and
69 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,6 @@ | ||
{ | ||
"editor.codeActionsOnSave": { | ||
"source.fixAll.eslint": "always", | ||
"source.organizeImports": "always" | ||
} | ||
} |
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,18 @@ | ||
import Hero from "@/components/hero"; | ||
|
||
export default function AboutPage() { | ||
return ( | ||
<div> | ||
<Hero | ||
title={<>About</>} | ||
subtitle={ | ||
<> | ||
JumboCode is a student-run digital agency at Tufts University that | ||
provides custom and high-quality software to nonprofits through | ||
year-long pro bono projects. | ||
</> | ||
} | ||
/> | ||
</div> | ||
); | ||
} |
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,24 @@ | ||
import Button from "@/components/button"; | ||
import Hero from "@/components/hero"; | ||
|
||
export default function ApplyPage() { | ||
return ( | ||
<div> | ||
<Hero | ||
title={<>Apply</>} | ||
subtitle={ | ||
<> | ||
Join us — we’re a passionate community of developers and designers | ||
committed to building meaningful products for non-profits. | ||
</> | ||
} | ||
buttons={ | ||
<> | ||
<Button text="For students" href="/" variant="secondary" /> | ||
<Button text="For non-profits" href="/" variant="secondary" /> | ||
</> | ||
} | ||
/> | ||
</div> | ||
); | ||
} |
This file was deleted.
Oops, something went wrong.
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
Binary file not shown.
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,31 +1,23 @@ | ||
import Button from "@/app/components/button"; | ||
import { EnvelopeIcon } from "@heroicons/react/24/outline"; | ||
import Button from "@/components/button"; | ||
import Hero from "@/components/hero"; | ||
|
||
export default function Home() { | ||
export default function HomePage() { | ||
return ( | ||
<div className="p-4 space-y-4 bg-black"> | ||
<Button | ||
text="Email Us" | ||
route="/testing" | ||
variant="primary" | ||
icon={EnvelopeIcon} | ||
<div> | ||
<Hero | ||
title={ | ||
<> | ||
Jumbo<span className="text-brand">Code</span> | ||
</> | ||
} | ||
subtitle={<>Empowering students, Elevating non-profits.</>} | ||
buttons={ | ||
<> | ||
<Button text="What we do" href="/about" variant="secondary" /> | ||
<Button text="Get involved" href="/apply" variant="primary" /> | ||
</> | ||
} | ||
/> | ||
|
||
<Button | ||
text="Email Us" | ||
route="/testing" | ||
variant="secondary" | ||
icon={EnvelopeIcon} | ||
/> | ||
|
||
<Button | ||
text="Email Us" | ||
route="/testing" | ||
variant="ghost" | ||
icon={EnvelopeIcon} | ||
/> | ||
|
||
<Button text="Email Us" route="/testing" variant="primary" /> | ||
</div> | ||
); | ||
} |
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,20 @@ | ||
import Button from "@/components/button"; | ||
import Hero from "@/components/hero"; | ||
|
||
export default function ProjectsPage() { | ||
return ( | ||
<div> | ||
<Hero | ||
title={<>Projects</>} | ||
subtitle={<>Check out our current and past projects!</>} | ||
buttons={ | ||
<Button | ||
text="View our GitHub" | ||
href="https://github.com/jumbocode" | ||
variant="secondary" | ||
/> | ||
} | ||
/> | ||
</div> | ||
); | ||
} |
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 |
---|---|---|
@@ -0,0 +1,21 @@ | ||
export default function Hero({ | ||
title, | ||
subtitle, | ||
buttons, | ||
}: { | ||
title: React.ReactNode; | ||
subtitle: React.ReactNode; | ||
buttons?: React.ReactNode; | ||
}) { | ||
return ( | ||
<div className="py-24 sm:py-48"> | ||
<h1 className="text-white font-semibold text-4xl">{title}</h1> | ||
|
||
<h2 className="mt-4 text-white/70 text-xl font-medium max-w-screen-md"> | ||
{subtitle} | ||
</h2> | ||
|
||
{buttons && <div className="mt-8 flex gap-x-4">{buttons}</div>} | ||
</div> | ||
); | ||
} |
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,32 @@ | ||
"use client"; | ||
|
||
import clsx from "clsx"; | ||
import Link from "next/link"; | ||
import { usePathname } from "next/navigation"; | ||
|
||
export default function Nav() { | ||
return ( | ||
<nav className="flex gap-x-6"> | ||
<NavLink href="/" label="Home" /> | ||
<NavLink href="/about" label="About" /> | ||
<NavLink href="/projects" label="Projects" /> | ||
<NavLink href="/apply" label="Apply" /> | ||
</nav> | ||
); | ||
} | ||
|
||
function NavLink({ href, label }: { href: string; label: string }) { | ||
const location = usePathname(); | ||
const isCurrent = location === href; | ||
return ( | ||
<Link | ||
href={href} | ||
className={clsx( | ||
"font-medium", | ||
isCurrent ? "text-white" : "text-white/60" | ||
)} | ||
> | ||
{label} | ||
</Link> | ||
); | ||
} |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Oops, something went wrong.