Skip to content

Commit 796acd0

Browse files
committed
structural changes
1 parent bed8632 commit 796acd0

File tree

12 files changed

+312
-94
lines changed

12 files changed

+312
-94
lines changed

.eslintrc.json

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
{
2+
"extends": [
3+
"next/core-web-vitals",
4+
"plugin:@typescript-eslint/recommended",
5+
"plugin:prettier/recommended"
6+
],
7+
"parser": "@typescript-eslint/parser",
8+
"plugins": ["@typescript-eslint"],
9+
"rules": {
10+
"prettier/prettier": ["error", { "endOfLine": "auto" }],
11+
"react/jsx-key": [1, { "checkFragmentShorthand": true }]
12+
}
13+
}

frontend/src/components/ResourcesAndContacts/index.tsx

Lines changed: 54 additions & 94 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
// import DiscordLogo from "@/public/assets/discord_logo.svg"
22
import Image from 'next/image';
3+
import { stage1, stage2, stage3 } from '../../public/data/resourceCards';
34

45
const boxStyling =
56
'border border-[#595F6D] rounded-lg hover:border-[#788093] hover:bg-[#070034] hover:bg-opacity-75 transition-all duration-300';
@@ -20,101 +21,60 @@ const ResourcesAndContacts = () => {
2021

2122
<div className="py-8 bg-no-repeat bg-center">
2223
<div className="grid grid-cols-4 1 gap-x-9 gap-y-5">
23-
<a
24-
href="https://circles.csesoc.app/course-selector"
25-
target="_blank"
26-
className={`col-span-4 p-5 ${boxStyling}`}
27-
>
28-
<h2 className="mt-5 text-3xl font-extrabold">Circles</h2>
29-
<p className="mt-7 text-lg mb-5">
30-
A UNSW degree planner where you can explore and validate your degree structure.
31-
</p>
32-
</a>
3324

34-
<a
35-
href="https://structs.sh/"
36-
target="_blank"
37-
className={`xl:col-span-1 col-span-4 p-5 ${boxStyling}`}
38-
>
39-
<h2 className="mt-1 text-3xl font-extrabold">Structs.sh</h2>
40-
<p className="mt-7 text-lg mb-5">
41-
An educational data structures and algorithms platform.
42-
</p>
43-
</a>
44-
45-
<a
46-
href="https://jobsboard.csesoc.unsw.edu.au/"
47-
target="_blank"
48-
className={`xl:col-span-1 col-span-4 p-5 ${boxStyling}`}
49-
>
50-
<h2 className="mt-1 text-3xl font-extrabold">Jobs Board</h2>
51-
<p className="mt-7 text-lg mb-5">
52-
A place where CSESoc students can look for relevant job opportunities.
53-
</p>
54-
</a>
55-
56-
<a
57-
href="https://notangles.csesoc.app/"
58-
target="_blank"
59-
className={`xl:col-span-1 col-span-4 p-5 ${boxStyling}`}
60-
>
61-
<h2 className="mt-1 text-3xl font-extrabold">Notangles</h2>
62-
63-
<p className="mt-7 text-lg mb-5">
64-
Trimester timetabling tool - no more timetable tangles!
65-
</p>
66-
</a>
67-
68-
<a
69-
href="https://unilectives.csesoc.app/"
70-
target="_blank"
71-
className={`xl:col-span-1 col-span-4 p-5 ${boxStyling}`}
72-
>
73-
<h2 className="mt-1 text-3xl font-extrabold">Uni-lectives</h2>
74-
75-
<p className="mt-7 text-lg mb-5">
76-
Read course electives to help you pick your electives or even write your own!
77-
</p>
78-
</a>
79-
80-
<a
81-
href="https://learn.csesoc.org.au/"
82-
target="_blank"
83-
className={`md:col-span-2 col-span-4 p-5 ${boxStyling}`}
84-
>
85-
<h2 className="mt-1 text-3xl font-extrabold">CSESoc Learn</h2>
86-
87-
<p className="mt-7 text-lg mb-5">Your learning outside the classroom starts here</p>
88-
</a>
89-
90-
<a
91-
href="https://media.csesoc.org.au/"
92-
target="_blank"
93-
className={`md:col-span-2 col-span-4 p-5 ${boxStyling}`}
94-
>
95-
<h2 className="mt-1 text-3xl font-extrabold">CSESoc Media</h2>
96-
<p className="mt-7 text-lg mb-5">All things content</p>
97-
</a>
98-
99-
<a
100-
href="https://media.csesoc.org.au/first-year-guide-2024/"
101-
target="_blank"
102-
className={`md:col-span-2 col-span-4 p-5 ${boxStyling}`}
103-
>
104-
<h2 className="mt-1 text-3xl font-extrabold">First Year Guide</h2>
105-
<p className="mt-7 text-lg mb-5">
106-
The ultimate guide to conquering your first year at CSE
107-
</p>
108-
</a>
109-
110-
<a
111-
href="https://media.csesoc.org.au/cse-enrol/"
112-
target="_blank"
113-
className={`md:col-span-2 col-span-4 p-5 ${boxStyling}`}
114-
>
115-
<h2 className="mt-1 text-3xl font-extrabold">Enrolment Guide</h2>
116-
<p className="mt-7 text-lg mb-5">Learn how to get a headstart on uni</p>
117-
</a>
25+
{stage1.map((item) => {
26+
return (
27+
<a
28+
href={item.href}
29+
target="_blank"
30+
className={`col-span-4 p-5 ${boxStyling} flex`}
31+
>
32+
<div className="flex justify-center align-middle items-center pl-2 pr-8">
33+
<Image src={item.svg} alt={item.alt} draggable="false" width={item.width} height={item.height}/>
34+
</div>
35+
<div>
36+
<h2 className="mt-5 text-3xl font-extrabold">{item.title}</h2>
37+
<p className="mt-7 text-lg mb-5">{item.desc}</p>
38+
</div>
39+
</a>
40+
);
41+
})}
42+
43+
{stage2.map((item) => {
44+
return (
45+
<a
46+
href={item.href}
47+
target="_blank"
48+
className={`xl:col-span-1 col-span-4 p-5 ${boxStyling}`}
49+
>
50+
<div className='flex align-middle items-center pt-2 pb-4'>
51+
<Image src={item.svg} alt={item.alt} draggable="false" width={item.width} height={item.height}/>
52+
</div>
53+
<div>
54+
<h2 className="mt-5 text-3xl font-extrabold">{item.title}</h2>
55+
<p className="mt-7 text-lg mb-5">{item.desc}</p>
56+
</div>
57+
</a>
58+
);
59+
})}
60+
61+
{stage3.map((item) => {
62+
return (
63+
<a
64+
href={item.href}
65+
target="_blank"
66+
className={`md:col-span-2 col-span-4 p-5 ${boxStyling} flex`}
67+
>
68+
<div className='flex align-middle items-center pt-2 pb-4 pr-8'>
69+
<Image src={item.svg} alt={item.alt} draggable="false" width={item.width} height={item.height} className='rounded-md'/>
70+
</div>
71+
<div>
72+
<h2 className="mt-5 text-3xl font-extrabold">{item.title}</h2>
73+
<p className="mt-7 text-lg mb-5">{item.desc}</p>
74+
</div>
75+
</a>
76+
);
77+
})}
11878
</div>
11979
</div>
12080
</div>

public/assets/circles_logo.svg

Lines changed: 74 additions & 0 deletions
Loading

0 commit comments

Comments
 (0)