Skip to content

Commit 452a2d0

Browse files
committed
자봉 페이지 추가
1 parent 8e8f72e commit 452a2d0

File tree

3 files changed

+254
-1
lines changed

3 files changed

+254
-1
lines changed

@types/about.ts

+5
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,8 @@ export interface CommitteeInfo {
33
image?: string;
44
description: string;
55
}
6+
7+
export interface VolunteerInfo {
8+
name: string;
9+
description: string;
10+
}

constants/about.ts

+140-1
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,23 @@
1-
import { CommitteeInfo } from '@/@types/about';
1+
import { CommitteeInfo, VolunteerInfo } from '@/@types/about';
22

33
export const CommitteePageInfo = {
44
title: '파이콘 한국 준비위원회',
55
description:
66
'파이콘 한국 준비위원회는 2014년 조직되어, 올해 열 번째 한국에서의 파이콘 행사를 준비하고 있습니다. \n준비위원회는 매년 신규 멤버를 모집하는 파이콘을 사랑하는 사람들의 열린 모임입니다.',
77
};
8+
9+
export const DevelopmentVolunteerPageInfo = {
10+
title: '홈페이지 개발 자원봉사자',
11+
description:
12+
'파이콘 한국 2023 홈페이지 개발에 기여해주신 분들입니다. 파이콘 한국에 기여해주셔서 감사합니다. \n(가나다 순)',
13+
};
14+
15+
export const EventVolunteerPageInfo = {
16+
title: '행사 자원봉사자',
17+
description:
18+
'파이콘 한국 2023 에서 행사진행을 위해 기여해주신 분들입니다. 파이콘 한국에 기여해주셔서 감사합니다. \n(가나다 순)',
19+
};
20+
821
export const CommitteeList: CommitteeInfo[] = [
922
{
1023
name: '강지우',
@@ -93,3 +106,129 @@ export const CommitteeList: CommitteeInfo[] = [
93106
description: '주니어 CTO로 일하고 있습니다.',
94107
},
95108
];
109+
110+
export const DevelopmentVolunteerList: VolunteerInfo[] = [
111+
{
112+
name: '김동영',
113+
description: 'https://github.com/pers0n4',
114+
},
115+
{
116+
name: '김윤서',
117+
description: 'https://github.com/ottl-seo',
118+
},
119+
{
120+
name: '박나경',
121+
description: 'https://github.com/NaGyeong-Park',
122+
},
123+
{
124+
name: '박미림',
125+
description: 'https://github.com/Palwol',
126+
},
127+
{
128+
name: '손지민',
129+
description: 'https://github.com/safethecode',
130+
},
131+
{
132+
name: '송기웅',
133+
description: 'https://github.com/song-giung',
134+
},
135+
{
136+
name: '신원지',
137+
description: 'https://github.com/sw6820',
138+
},
139+
{
140+
name: '윤창식',
141+
description: 'https://github.com/CaesiumY',
142+
},
143+
{
144+
name: '이민형',
145+
description: 'https://github.com/alreadynyeong',
146+
},
147+
{
148+
name: '이상민',
149+
description: 'https://github.com/poiu694',
150+
},
151+
{
152+
name: '이찬행',
153+
description: 'https://github.com/2chanhaeng',
154+
},
155+
{
156+
name: '이창희',
157+
description: 'https://github.com/blurfx',
158+
},
159+
{
160+
name: '정건우',
161+
description: 'https://github.com/zi-gae',
162+
},
163+
{
164+
name: '최영은',
165+
description: 'https://github.com/shinecoding',
166+
},
167+
{
168+
name: '최호승',
169+
description: 'https://github.com/startergate',
170+
},
171+
];
172+
173+
export const EventVolunteerList: VolunteerInfo[] = [
174+
{
175+
name: '김보라',
176+
description: '',
177+
},
178+
{
179+
name: '강은성',
180+
description: '',
181+
},
182+
{
183+
name: '김무훈',
184+
description: '',
185+
},
186+
{
187+
name: '김보라',
188+
description: '',
189+
},
190+
{
191+
name: '김세연',
192+
description: '',
193+
},
194+
{
195+
name: '김혜린',
196+
description: '',
197+
},
198+
{
199+
name: '백찬희',
200+
description: '',
201+
},
202+
{
203+
name: '신유리',
204+
description: '',
205+
},
206+
{
207+
name: '유창범',
208+
description: '',
209+
},
210+
{
211+
name: '이강희',
212+
description: '',
213+
},
214+
{
215+
name: '이경희',
216+
description: '',
217+
},
218+
{
219+
name: '임승민',
220+
description: '',
221+
},
222+
{
223+
name: '최명규',
224+
description: '',
225+
},
226+
{
227+
name: '한송희',
228+
description: '',
229+
},
230+
{
231+
name: '허강준',
232+
description: '',
233+
},
234+
];

pages/about/volunteer.tsx

+109
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
import Image from 'next/image';
2+
import { styled } from '@stitches/react';
3+
4+
import { H2 } from '@/components/heading';
5+
import SeoHeader from '@/components/layout/SeoHeader';
6+
7+
import {
8+
CommitteeList,
9+
CommitteePageInfo,
10+
DevelopmentVolunteerList,
11+
DevelopmentVolunteerPageInfo,
12+
EventVolunteerList,
13+
EventVolunteerPageInfo,
14+
} from '@/constants/about';
15+
import { Routes } from '@/constants/routes';
16+
17+
export const Container = styled('div', {
18+
maxWidth: '900px',
19+
margin: '0 auto',
20+
paddingTop: '1rem',
21+
marginTop: '2rem',
22+
});
23+
export const TitleWrapper = styled('div', {
24+
borderBottom: '4px solid $textPrimary',
25+
paddingBottom: '20px',
26+
});
27+
export const PageDescription = styled('p', {
28+
fontSize: '16px',
29+
marginTop: '1.5vh',
30+
whiteSpace: 'pre-wrap',
31+
lineHeight: '1.5rem',
32+
});
33+
34+
const CommitteeWrapper = styled('div', {
35+
display: 'flex',
36+
alignItems: 'flex-start',
37+
margin: '1.5rem 0',
38+
});
39+
const ImageBox = styled('div', {
40+
width: '6rem',
41+
height: '6rem',
42+
borderRadius: 100,
43+
flexShrink: 0,
44+
marginRight: '1rem',
45+
overflow: 'hidden',
46+
});
47+
const Content = styled('div', {
48+
width: 'calc(100% - 7rem)',
49+
});
50+
const Title = styled('div', {
51+
fontWeight: 600,
52+
bodyText: 1,
53+
padding: '0.2rem',
54+
});
55+
const Text = styled('div', {
56+
bodyText: 2,
57+
padding: '0.2rem',
58+
whiteSpace: 'pre-wrap',
59+
});
60+
const CommitteeInfoWrapper = styled('div', {
61+
padding: '2rem 0',
62+
});
63+
const OrganisingCommittee = () => {
64+
return (
65+
<>
66+
<SeoHeader
67+
title={Routes.ORGANISING_COMMITTEE.title}
68+
description="파이콘 한국 2023: 8월 11~13일 코엑스"
69+
/>
70+
<Container>
71+
<TitleWrapper>
72+
<H2>{DevelopmentVolunteerPageInfo.title}</H2>
73+
</TitleWrapper>
74+
<PageDescription>
75+
{DevelopmentVolunteerPageInfo.description}
76+
</PageDescription>
77+
<CommitteeInfoWrapper>
78+
{DevelopmentVolunteerList.map((committee) => (
79+
<CommitteeWrapper key={committee.name}>
80+
<Content>
81+
<Title>{committee.name}</Title>
82+
<Text>{committee.description}</Text>
83+
</Content>
84+
</CommitteeWrapper>
85+
))}
86+
</CommitteeInfoWrapper>
87+
</Container>
88+
89+
<Container>
90+
<TitleWrapper>
91+
<H2>{EventVolunteerPageInfo.title}</H2>
92+
</TitleWrapper>
93+
<PageDescription>{EventVolunteerPageInfo.description}</PageDescription>
94+
<CommitteeInfoWrapper>
95+
{EventVolunteerList.map((committee) => (
96+
<CommitteeWrapper key={committee.name}>
97+
<Content>
98+
<Title>{committee.name}</Title>
99+
<Text>{committee.description}</Text>
100+
</Content>
101+
</CommitteeWrapper>
102+
))}
103+
</CommitteeInfoWrapper>
104+
</Container>
105+
</>
106+
);
107+
};
108+
109+
export default OrganisingCommittee;

0 commit comments

Comments
 (0)