Skip to content

Commit 91a5b3b

Browse files
authored
Merge pull request #286 from php-school/home-edits
Home edits
2 parents fafb6a0 + 80aada8 commit 91a5b3b

File tree

3 files changed

+101
-20
lines changed

3 files changed

+101
-20
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<script setup>
2+
const { list, heading } = defineProps({
3+
list: Array,
4+
heading: String,
5+
});
6+
</script>
7+
8+
<template>
9+
<h2 class="font-work-sans text-5xl font-bold text-white">{{ heading }}</h2>
10+
<ul class="mt-4">
11+
<li v-for="line in list" :key="line" class="group">
12+
<div class="py-2">
13+
<div class="mr-16 pl-1 text-white">
14+
<div class="flex items-start text-base text-pink-600 text-nowrap">
15+
<svg class="ml-1 mr-2 mt-0.5 h-5 w-5 flex-none" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
16+
<path stroke-linecap="round" stroke-linejoin="round" d="m8.25 4.5 7.5 7.5-7.5 7.5" />
17+
</svg>
18+
<p class="text-white"><span class="text-pink-600 font-semibold">{{ line.title }}: </span>{{ line.description }}</p>
19+
</div>
20+
</div>
21+
</div>
22+
</li>
23+
</ul>
24+
</template>

assets/components/Website/Pages/Home/Section/TheWorkshops.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ const { loggedIn } = defineProps({
3030
<h4 class="mb-4 mt-0 p-0 font-work-sans text-2xl font-bold capitalize not-italic text-white">Community</h4>
3131
<p class="text-balance mb-4 text-base text-white">
3232
Community workshops are those created by, well, you! They are not officially maintained by the PHP School team and not all of them are compatible with the online system. Compatible ones are
33-
labeled, otherwise, you can always run run them
33+
labeled, otherwise, you can always run them
3434
<router-link class="text-[#e91e63] hover:underline" to="/offline">offline</router-link>
3535
.
3636
</p>

assets/components/Website/Pages/PageHome.vue

+76-19
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ import InfoSection from "./Home/InfoSection.vue";
1515
import GettingStarted from "./Home/Section/GettingStarted.vue";
1616
import TheWorkshops from "./Home/Section/TheWorkshops.vue";
1717
import BuildYourOwn from "./Home/Section/BuildYourOwn.vue";
18+
import HomeList from "./Home/HomeList.vue";
19+
1820
1921
import { SparklesIcon } from "@heroicons/vue/24/solid";
2022
import { useStudentStore } from "../../../stores/student";
@@ -116,6 +118,73 @@ onUnmounted(() => {
116118
window.removeEventListener("scroll", checkImages);
117119
window.removeEventListener("resize", debouncedCheckImages);
118120
});
121+
122+
const phpSchoolBreakdown = {
123+
openSource: {
124+
heading: "Open-Source Gateway To PHP Mastery",
125+
list: [
126+
{
127+
title: "Interactive Workshops",
128+
description: "Engaging sessions covering beginner to advanced topics in PHP"
129+
},
130+
{
131+
title: "Hands-On Learning",
132+
description: "Solve real-world problems through coding exercises"
133+
},
134+
{
135+
title: "Community Collaboration",
136+
description: "Contribute, fix bugs, and create your own workshops"
137+
},
138+
{
139+
title: "Open Source Education",
140+
description: "Access all workshops for free and learn at your own pace"
141+
}
142+
]
143+
},
144+
editor: {
145+
heading: "Seamless Online Coding Experience",
146+
list: [
147+
{
148+
title: "Effortless Access",
149+
description: "Login with your GitHub account and seamlessly navigate through workshops and exercises",
150+
},
151+
{
152+
title: "No Setup Hassle",
153+
description: "Say goodbye to complex setups and installations; our IDE is ready to use right from your browser",
154+
},
155+
{
156+
title: "Streamlined Interface",
157+
description: "Jump straight into coding with our intuitive web-based text editor, no additional tools or dependencies required",
158+
},
159+
{
160+
title: "Instant Start",
161+
description: "Begin coding instantly without the need for downloading or installing text editors, dependencies, or plugins",
162+
}
163+
]
164+
},
165+
assignments: {
166+
heading: "Work On Practical Assignments",
167+
list: [
168+
{
169+
title: "Real-World Challenges",
170+
description: "Complete practical problems that you will be sure to encounter in your respective field",
171+
},
172+
{
173+
title: "Level Up Your Problem Solving Skills",
174+
description: "Gain hands-on experience and develop critical problem-solving skills through immersive assignments"
175+
},
176+
{
177+
title: "Guided Progression",
178+
description: "Access detailed descriptions, code samples, and curated resources to support your problem-solving process"
179+
},
180+
{
181+
title: "Career Preparation",
182+
description: "Equip yourself with the skills necessary to excel in your chosen career path, ensuring readiness for the challenges ahead"
183+
}
184+
]
185+
},
186+
};
187+
119188
</script>
120189

121190
<template>
@@ -129,11 +198,11 @@ onUnmounted(() => {
129198
<!-- Section 1 -->
130199
<InfoSection>
131200
<template #left>
132-
<div class="mx-auto w-full lg:w-2/3">
201+
<div class="mx-auto w-full lg:w-2/3 lg:mb-36">
133202
<div class="relative flex items-center justify-center">
134203
<img class="cover" src="../../../img/cloud/pattern-bg-square.svg" alt="" />
135204
<div class="absolute mx-auto scale-75 sm:scale-100 md:left-auto">
136-
<div :ref="transitions.exerciseList" class="fadeIn translate-y-6 opacity-0 transition-all duration-[1000ms] ease-in lg:mb-36">
205+
<div :ref="transitions.exerciseList" class="fadeIn translate-y-6 opacity-0 transition-all duration-[1000ms] ease-in">
137206
<MockWorkshopExerciseList />
138207
</div>
139208
</div>
@@ -151,12 +220,8 @@ onUnmounted(() => {
151220

152221
<template #right>
153222
<div class="mt-28 w-full space-y-8 text-left sm:px-5 md:mt-36 lg:mt-0 lg:w-1/3">
154-
<h2 class="font-work-sans text-5xl font-bold text-white">Open Source educational PHP Workshops</h2>
155-
<p class="font-base font-work-sans text-lg text-white">
156-
PHP School is a set of workshops each designed to teach a specific topic, tool, technology. Some beginner, some advanced. Each workshop consists of multiple exercises where your task is
157-
to code a solution to solve a problem. All our workshops are open source and you can contribute to them with spelling & bug fixes, new exercises. You can even build and publish your own
158-
workshop.
159-
</p>
223+
<HomeList :heading="phpSchoolBreakdown.openSource.heading" :list="phpSchoolBreakdown.openSource.list"></HomeList>
224+
160225
<div class="flex justify-start">
161226
<PrimaryButton to="/online">GET STARTED</PrimaryButton>
162227
</div>
@@ -168,11 +233,7 @@ onUnmounted(() => {
168233
<InfoSection>
169234
<template #left>
170235
<div class="order-2 mt-8 w-full space-y-8 text-left sm:px-5 lg:order-1 lg:mt-0 lg:w-1/3">
171-
<h2 class="balanced font-work-sans text-5xl font-bold text-white">Online Browser Based IDE</h2>
172-
<p class="font-base font-work-sans text-lg text-white">
173-
Login in with your GitHub account, select a workshop, an exercise then jump straight in to our web based text editor (IDE). No complicated setup, no need to install tools, dependencies
174-
and text editors. Just jump in and start coding.
175-
</p>
236+
<HomeList :heading="phpSchoolBreakdown.editor.heading" :list="phpSchoolBreakdown.editor.list"></HomeList>
176237
<div class="flex justify-start">
177238
<PrimaryButton to="/online" class="flex items-center">
178239
<span v-if="studentStore.student">TO THE WORKSHOPS</span>
@@ -208,7 +269,7 @@ onUnmounted(() => {
208269
<!-- Section 3 -->
209270
<InfoSection>
210271
<template #left>
211-
<div class="relative mx-auto mt-20 w-full lg:w-2/3">
272+
<div class="relative mx-auto mt-8 w-full lg:w-2/3">
212273
<div class="relative flex items-center justify-center">
213274
<img class="" src="../../../img/cloud/pattern-bg-square-alt.svg" alt="" />
214275
<div :ref="transitions.mockProblemModal" class="fadeIn absolute translate-y-6 opacity-0 transition-all duration-[1000ms] ease-in">
@@ -229,11 +290,7 @@ onUnmounted(() => {
229290

230291
<template #right>
231292
<div class="mt-28 w-full space-y-8 text-left sm:mt-40 sm:px-5 lg:mb-40 lg:w-1/3">
232-
<h2 class="font-work-sans text-5xl font-bold text-white">Work on practical assignments</h2>
233-
<p class="font-base font-work-sans text-lg text-white">
234-
Level up your problem solving skills whilst tackling practical problems that you will be sure to encounter in your chosen career path as a software developer. Each exercise comes with a
235-
description, code samples to get you started, links to documentation and other resources to help you solve the problem.
236-
</p>
293+
<HomeList :heading="phpSchoolBreakdown.assignments.heading" :list="phpSchoolBreakdown.assignments.list"></HomeList>
237294
<div class="flex justify-start">
238295
<PrimaryButton to="/online">GET STARTED</PrimaryButton>
239296
</div>

0 commit comments

Comments
 (0)