-
Notifications
You must be signed in to change notification settings - Fork 1
[feat] add login check and responsive design #27
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weβll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
f5ad833
7394f8f
51b68d9
0ffb986
1a6659f
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,129 +1,16 @@ | ||
| 'use client'; | ||
|
|
||
| import Link from 'next/link'; | ||
| import EmailIcon from '/public/icons/email.svg'; | ||
| import FacebookIcon from '/public/icons/facebook.svg'; | ||
| import InstagramIcon from '/public/icons/instagram.svg'; | ||
| import CustomLogo from '@/components/root/CustomLogo'; | ||
| import ImageWrapper from '@/components/root/ImageWrapper'; | ||
| import styles from './page.module.css'; | ||
| import MainCard from '@/components/root/MainCard'; | ||
| import MiniCard from '@/components/root/MiniCard'; | ||
| import Layout from '@/components/landing/layout'; | ||
| import HeroSection from '@/components/landing/Section/HeroSection'; | ||
| import PrimarySection from '@/components/landing/Section/PrimarySection'; | ||
| import SecondarySection from '@/components/landing/Section/SecondarySection'; | ||
|
|
||
| export default function Home() { | ||
| return ( | ||
| <div className={styles.page}> | ||
| <header className={styles.header}> | ||
| <Link href="/" aria-label="νμΌλ‘ μ΄λ"> | ||
| <CustomLogo className={styles.logo} /> | ||
| </Link> | ||
| <nav className={styles.nav}> | ||
| <Link href="/login" className={styles.navLink}> | ||
| λ‘κ·ΈμΈ | ||
| </Link> | ||
| <Link href="/signup" className={styles.navLink}> | ||
| νμκ°μ | ||
| </Link> | ||
| </nav> | ||
| </header> | ||
| <main className={styles.main}> | ||
| <section className={styles.section}> | ||
| <ImageWrapper | ||
| src="/images/home.png" | ||
| alt="μΌμ κ΄λ¦¬ μΉ μ΄ν리μΌμ΄μ " | ||
| className={styles.homeImg} | ||
| priority={true} | ||
| /> | ||
| <div className={styles.homeTitleWrapper}> | ||
| <div className={styles.homeTitle}>μλ‘μ΄ μΌμ κ΄λ¦¬</div> | ||
| <div className={styles.homeBrand}>Taskify</div> | ||
| </div> | ||
| <Link href="/login" className={styles.homeLoginBtn}> | ||
| λ‘κ·ΈμΈνκΈ° | ||
| </Link> | ||
| </section> | ||
| <section className={styles.section}> | ||
| <MainCard | ||
| title="μΌμ μ°μ μμλ₯Ό κ΄λ¦¬νμΈμ" | ||
| subTitle="Point 1" | ||
| src="/images/landing_lg_1.png" | ||
| alt="μ°μ μμ μ€μ κΈ°λ₯ μκ°" | ||
| className={styles.cardLg1} | ||
| /> | ||
| <MainCard | ||
| title="ν΄μΌ ν μΌμ λ±λ‘νμΈμ" | ||
| subTitle="Point 2" | ||
| src="/images/landing_lg_2.png" | ||
| alt="ν μΌ μΉ΄λ μμ± κΈ°λ₯ μκ°" | ||
| className={styles.cardLg2} | ||
| imgFirst={true} | ||
| /> | ||
| </section> | ||
| <section> | ||
| <div className={styles.supplementTitle}> | ||
| μμ°μ±μ λμ΄λ λ€μν μ€μ β‘ | ||
| </div> | ||
| <div className={styles.cardSmalls}> | ||
| <MiniCard | ||
| src="/images/landing_sm_1.png" | ||
| alt="λμ보λ μ€μ κΈ°λ₯ μκ°" | ||
| title="λμ보λ μ€μ " | ||
| desc="λμ보λ μ¬μ§κ³Ό μ΄λ¦μ λ³κ²½ν μ μμ΄μ." | ||
| className={styles.cardSm1} | ||
| /> | ||
| <MiniCard | ||
| src="/images/landing_sm_2.png" | ||
| alt="μ΄λνκΈ° κΈ°λ₯ μκ°" | ||
| title="μ΄λ" | ||
| desc="μλ‘μ΄ νμμ μ΄λν μ μμ΄μ." | ||
| className={styles.cardSm2} | ||
| /> | ||
| <MiniCard | ||
| src="/images/landing_sm_3.png" | ||
| alt="ꡬμ±μ κΈ°λ₯ μκ°" | ||
| title="ꡬμ±μ" | ||
| desc="ꡬμ±μμ μ΄λνκ³ λ΄λ³΄λΌ μ μμ΄μ." | ||
| className={styles.cardSm3} | ||
| /> | ||
| </div> | ||
| </section> | ||
| </main> | ||
| <footer className={styles.footer}> | ||
| <div>Β©codeit - 2023</div> | ||
| <div className={styles.legalLinks}> | ||
| <Link href="/privacy-policy">Privacy Policy</Link> | ||
| <Link href="/faq">FAQ</Link> | ||
| </div> | ||
| <div className={styles.socialLinks}> | ||
| <a | ||
| href="#" | ||
| target="_blank" | ||
| rel="noopener noreferrer" | ||
| className={styles.socialLink} | ||
| aria-label="μ΄λ©μΌ λ°λ‘κ°κΈ°" | ||
| > | ||
| <EmailIcon aria-hidden="true" /> | ||
| </a> | ||
| <a | ||
| href="#" | ||
| target="_blank" | ||
| rel="noopener noreferrer" | ||
| className={styles.socialLink} | ||
| aria-label="νμ΄μ€λΆ λ°λ‘κ°κΈ°" | ||
| > | ||
| <FacebookIcon aria-hidden="true" /> | ||
| </a> | ||
| <a | ||
| href="#" | ||
| target="_blank" | ||
| rel="noopener noreferrer" | ||
| className={styles.socialLink} | ||
| aria-label="μΈμ€νκ·Έλ¨ λ°λ‘κ°κΈ°" | ||
| > | ||
| <InstagramIcon aria-hidden="true" /> | ||
| </a> | ||
| </div> | ||
| </footer> | ||
| </div> | ||
| <Layout> | ||
| <HeroSection /> | ||
| <PrimarySection /> | ||
| <SecondarySection /> | ||
| </Layout> | ||
| ); | ||
| } | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -12,7 +12,6 @@ body { | |
|
|
||
| body { | ||
| font-family: var(--font-pretendard), sans-serif; | ||
| height: 100vh; | ||
|
Owner
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. μ΄κ±° @devmanta λμ΄ μΆκ°νμ κ±° κ°μλ°
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. μΌμ γ μ΄κ±° μμ΄μ§λ©΄ μλλλ°γ γ
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. λ€μ λ£μμ΄μ π |
||
| } | ||
|
|
||
| ul, | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,31 @@ | ||
| .footer { | ||
| display: flex; | ||
| align-items: center; | ||
| justify-content: space-between; | ||
| padding: 40px 140px; | ||
| font-size: 16px; | ||
| font-weight: 400; | ||
| color: var(--gray-400); | ||
| } | ||
|
|
||
| .legalLinks { | ||
| display: flex; | ||
| gap: 32px; | ||
| } | ||
|
|
||
| .socialLinks { | ||
| display: flex; | ||
| align-items: center; | ||
| gap: 14px; | ||
| } | ||
|
|
||
| .socialLink:first-child { | ||
| width: 20px; | ||
| height: 20px; | ||
| } | ||
|
|
||
| .socialLink { | ||
| width: 22px; | ||
| height: 22px; | ||
| fill: white; | ||
| } |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,46 @@ | ||
| import Link from 'next/link'; | ||
| import EmailIcon from '/public/icons/email.svg'; | ||
| import FacebookIcon from '/public/icons/facebook.svg'; | ||
| import InstagramIcon from '/public/icons/instagram.svg'; | ||
| import styles from './Footer.module.css'; | ||
|
|
||
| export default function Footer() { | ||
| return ( | ||
| <footer className={styles.footer}> | ||
| <div>Β©codeit - 2023</div> | ||
| <div className={styles.legalLinks}> | ||
| <Link href="/privacy-policy">Privacy Policy</Link> | ||
| <Link href="/faq">FAQ</Link> | ||
| </div> | ||
| <div className={styles.socialLinks}> | ||
| <a | ||
| href="#" | ||
| target="_blank" | ||
| rel="noopener noreferrer" | ||
| className={styles.socialLink} | ||
| aria-label="μ΄λ©μΌ λ°λ‘κ°κΈ°" | ||
| > | ||
| <EmailIcon aria-hidden="true" /> | ||
| </a> | ||
| <a | ||
| href="#" | ||
| target="_blank" | ||
| rel="noopener noreferrer" | ||
| className={styles.socialLink} | ||
| aria-label="νμ΄μ€λΆ λ°λ‘κ°κΈ°" | ||
| > | ||
| <FacebookIcon aria-hidden="true" /> | ||
| </a> | ||
| <a | ||
| href="#" | ||
| target="_blank" | ||
| rel="noopener noreferrer" | ||
| className={styles.socialLink} | ||
| aria-label="μΈμ€νκ·Έλ¨ λ°λ‘κ°κΈ°" | ||
| > | ||
| <InstagramIcon aria-hidden="true" /> | ||
| </a> | ||
| </div> | ||
| </footer> | ||
| ); | ||
| } |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,28 @@ | ||
| .header { | ||
| display: flex; | ||
| align-items: center; | ||
| justify-content: space-between; | ||
| position: fixed; | ||
| left: 0; | ||
| top: 0; | ||
| z-index: 999; | ||
| width: 100%; | ||
| height: 70px; | ||
| padding: 15px 80px; | ||
| background-color: inherit; | ||
| } | ||
|
|
||
| .logo { | ||
| fill: white; | ||
|
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. λκ°κ²μ§λ§ μ ν¬ variablesμ whiteμμ΄μ κ·Έκ±° κ°λ€ μ¨λ μ’κ² λ€μ~
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. varλ buttonλ λ§μΆ°μ κ³ μΉκ² μ΅λλ€ γ γ γ |
||
| } | ||
|
|
||
| .nav { | ||
| display: flex; | ||
| gap: 36px; | ||
| } | ||
|
|
||
| .navLink { | ||
| font-size: 16px; | ||
| font-weight: 400; | ||
| line-height: 26px; | ||
| } | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,21 @@ | ||
| import Link from 'next/link'; | ||
| import CustomLogo from '@/components/CustomLogo'; | ||
| import styles from './Header.module.css'; | ||
|
|
||
| export default function Header() { | ||
| return ( | ||
| <header className={styles.header}> | ||
| <Link href="/" aria-label="νμΌλ‘ μ΄λ"> | ||
| <CustomLogo className={styles.logo} /> | ||
| </Link> | ||
| <nav className={styles.nav}> | ||
| <Link href="/login" className={styles.navLink}> | ||
| λ‘κ·ΈμΈ | ||
| </Link> | ||
| <Link href="/signup" className={styles.navLink}> | ||
| νμκ°μ | ||
| </Link> | ||
| </nav> | ||
| </header> | ||
| ); | ||
| } |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,48 @@ | ||
| .section { | ||
| display: flex; | ||
| flex-direction: column; | ||
| align-items: center; | ||
| width: 100%; | ||
| max-width: 1200px; | ||
| margin-bottom: 180px; | ||
| } | ||
|
|
||
| .homeTitleWrapper { | ||
| display: flex; | ||
| align-items: center; | ||
| margin-bottom: 110px; | ||
| margin-top: 40px; | ||
| gap: 28px; | ||
| } | ||
|
|
||
| .homeImg { | ||
| width: 722px; | ||
| height: 423px; | ||
| } | ||
|
|
||
| .homeTitle { | ||
| font-size: 76px; | ||
| font-weight: 700; | ||
| color: white; | ||
| line-height: 100px; | ||
| letter-spacing: 2px; | ||
| } | ||
|
|
||
| .homeBrand { | ||
| font-family: var(--font-montserrat); | ||
| font-size: 90px; | ||
| font-weight: 700; | ||
| color: var(--violet); | ||
| line-height: 65px; | ||
| letter-spacing: 1px; | ||
| } | ||
|
|
||
| .homeLoginBtn { | ||
| display: inline-flex; | ||
| flex-shrink: 0; | ||
| align-items: center; | ||
| height: 54px; | ||
| padding: 9px 101px; | ||
| border-radius: 8px; | ||
| background: var(--violet); | ||
| } |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,23 @@ | ||
| import ImageWrapper from '../../ImageWrapper'; | ||
| import Link from 'next/link'; | ||
| import styles from './HeroSection.module.css'; | ||
|
|
||
| export default function HeroSection() { | ||
| return ( | ||
| <section className={styles.section}> | ||
| <ImageWrapper | ||
| src="/images/home.png" | ||
| alt="μΌμ κ΄λ¦¬ μΉ μ΄ν리μΌμ΄μ " | ||
| className={styles.homeImg} | ||
| priority={true} | ||
| /> | ||
| <div className={styles.homeTitleWrapper}> | ||
| <div className={styles.homeTitle}>μλ‘μ΄ μΌμ κ΄λ¦¬</div> | ||
| <div className={styles.homeBrand}>Taskify</div> | ||
| </div> | ||
| <Link href="/login" className={styles.homeLoginBtn}> | ||
| λ‘κ·ΈμΈνκΈ° | ||
| </Link> | ||
| </section> | ||
| ); | ||
| } |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,6 +1,5 @@ | ||
| .card { | ||
| display: flex; | ||
| flex-shrink: 0; | ||
| align-items: flex-end; | ||
| justify-content: flex-end; | ||
| width: 100%; | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,9 @@ | ||
| .cardLg1 { | ||
| width: 594px; | ||
| height: 498px; | ||
| } | ||
|
|
||
| .cardLg2 { | ||
| width: 436px; | ||
| height: 502px; | ||
| } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
λλ©νμ΄μ§λΌμ λΈλΌμ°μ μΈν°λ μ μ΄ μμ κ² κ°μλ°
'use client';λ μ μλ건κ°μ???There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
μΆν μΆκ°λ κ² κ°μμ λ£μ΄λλλ° μ°μ μ λΆνμνλκΉ μ κ±°νκ² μ΅λλ€ π«‘