Skip to content

Commit

Permalink
feat: footer 추가
Browse files Browse the repository at this point in the history
  • Loading branch information
99-zziy committed Sep 9, 2023
1 parent 2f5ef45 commit 7af0c41
Show file tree
Hide file tree
Showing 5 changed files with 104 additions and 2 deletions.
76 changes: 76 additions & 0 deletions src/components/Footer/Footer.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
import Link from 'next/link';
import { css } from '@emotion/react';

import { FIRST_ROW_FOOTER_INFOS, SECOND_ROW_FOOTER_INFOS } from '~/constant/footer';
import { colors } from '~/styles/colors';

export function Footer() {
return (
<footer css={footerCss}>
<div css={footerInfoWrapper}>
<ul css={rowCss}>
{FIRST_ROW_FOOTER_INFOS.map(footer => (
<li key={footer.name}>
<Link css={linkCss} href={footer.href}>
{footer.name}
</Link>
</li>
))}
</ul>
<ul css={[rowCss, rowGapCss]}>
{SECOND_ROW_FOOTER_INFOS.map(footer => (
<li key={footer.name}>
<Link css={linkCss} href={footer.href}>
{footer.name}
</Link>
</li>
))}
</ul>
<p css={copyrightCss}>© 2023 DEPROMEET. ALL RIGHTS RESERVED.</p>
</div>
</footer>
);
}

const footerCss = css`
background-color: ${colors.black800};
padding: 0 20px;
width: 100vw;
`;

const footerInfoWrapper = css`
max-width: 1240px;
display: flex;
flex-direction: column;
height: 218px;
justify-content: center;
align-items: center;
`;

const rowCss = css`
display: flex;
gap: 40px;
`;

const rowGapCss = css`
margin-top: 16px;
`;

const linkCss = css`
font-size: 18px;
font-style: normal;
font-weight: 500;
line-height: 25.2px; /* 140% */
letter-spacing: -0.18px;
color: ${colors.gray100};
`;

const copyrightCss = css`
font-size: 18px;
font-style: normal;
font-weight: 500;
line-height: 25.2px; /* 140% */
letter-spacing: -0.18px;
color: ${colors.gray200};
margin-top: 40px;
`;
1 change: 1 addition & 0 deletions src/components/Footer/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export * from './Footer';
5 changes: 3 additions & 2 deletions src/constant/depromeet.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
export const DEPROMEET_EMAIL = 'depromeet@gmail.com';
export const DEPROMEET_EMAIL = 'mailto:depromeet@gmail.com';
export const DEPROMEET_MEDIUM = 'https://depromeet.medium.com/';
export const DEPROMEET_FACEBOOK = 'https://www.facebook.com/depromeet/';
export const DEPROMEET_INSTAGRAM = 'https://www.instagram.com/depromeet/';
export const DEPROMEET_GITHUB = 'https://github.com/depromeet/';
export const DEPROMEET_BEHANCE = 'https://www.behance.net/Depromeet';

export const KAKAO_PLUS_FRIEND = 'http://pf.kakao.com/_xoxmcxed';
export const DEPROMEET_KAKAO_PLUS_FRIEND = 'http://pf.kakao.com/_xoxmcxed';
export const DEPROMEET_LINKEDIN = 'https://www.linkedin.com/company/depromeet/';
22 changes: 22 additions & 0 deletions src/constant/footer.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
import {
DEPROMEET_BEHANCE,
DEPROMEET_EMAIL,
DEPROMEET_GITHUB,
DEPROMEET_INSTAGRAM,
DEPROMEET_KAKAO_PLUS_FRIEND,
DEPROMEET_LINKEDIN,
DEPROMEET_MEDIUM,
} from '~/constant/depromeet';

export const FIRST_ROW_FOOTER_INFOS = [
{ name: 'Instagram', href: DEPROMEET_INSTAGRAM },
{ name: 'Behance', href: DEPROMEET_BEHANCE },
{ name: 'Github', href: DEPROMEET_GITHUB },
{ name: 'Medium', href: DEPROMEET_MEDIUM },
{ name: 'LinkedIn', href: DEPROMEET_LINKEDIN },
];

export const SECOND_ROW_FOOTER_INFOS = [
{ name: 'Kakao channel @depromeet', href: DEPROMEET_KAKAO_PLUS_FRIEND },
{ name: 'E-mail depromeet@gmail', href: DEPROMEET_EMAIL },
];
2 changes: 2 additions & 0 deletions src/pages/_app.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import Head from 'next/head';
import { useRouter } from 'next/router';
import { domMax, LazyMotion } from 'framer-motion';

import { Footer } from '~/components/Footer';
import { GNB } from '~/components/GNB';
import { BASE_URL } from '~/constant/common';
import { useRecordPageView } from '~/hooks/useRecordPageView';
Expand All @@ -28,6 +29,7 @@ export default function App({ Component, pageProps }: AppProps & InitialProps) {
<GlobalStyle />
<GNB />
<Component {...pageProps} />
<Footer />
</LazyMotion>
);
}
Expand Down

0 comments on commit 7af0c41

Please sign in to comment.