diff --git a/public/oman-flag.jpg b/public/oman-flag.jpg new file mode 100644 index 0000000..2b87211 Binary files /dev/null and b/public/oman-flag.jpg differ diff --git a/public/person_laptop_1.jpg b/public/person_laptop_1.jpg new file mode 100644 index 0000000..a28c577 Binary files /dev/null and b/public/person_laptop_1.jpg differ diff --git a/public/person_laptop_2.jpg b/public/person_laptop_2.jpg new file mode 100644 index 0000000..7e844e3 Binary files /dev/null and b/public/person_laptop_2.jpg differ diff --git a/public/person_laptop_3.jpg b/public/person_laptop_3.jpg new file mode 100644 index 0000000..a598dcd Binary files /dev/null and b/public/person_laptop_3.jpg differ diff --git a/public/uk-flag.png b/public/uk-flag.png new file mode 100644 index 0000000..e1e8273 Binary files /dev/null and b/public/uk-flag.png differ diff --git a/src/app/ar/page.tsx b/src/app/ar/page.tsx new file mode 100644 index 0000000..640a6d2 --- /dev/null +++ b/src/app/ar/page.tsx @@ -0,0 +1,6 @@ +import Home from "@/templates/Home"; +import {NextPageContext} from "next"; + +export default function Page({}: NextPageContext) { + return ; +} diff --git a/src/app/join/page.tsx b/src/app/join/page.tsx index e211213..e8270d7 100644 --- a/src/app/join/page.tsx +++ b/src/app/join/page.tsx @@ -9,7 +9,7 @@ import Footer from "@/components/Footer"; export default function Home() { return (
- +

Available Packages

@@ -22,7 +22,7 @@ export default function Home() {
-
+
); } diff --git a/src/app/layout.tsx b/src/app/layout.tsx index 66def9b..8025980 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -1,8 +1,6 @@ import "./globals.css"; import type {Metadata} from "next"; import {Inter} from "next/font/google"; -import {Elements} from "@stripe/react-stripe-js"; -import {loadStripe} from "@stripe/stripe-js"; const inter = Inter({subsets: ["latin"]}); diff --git a/src/app/page.tsx b/src/app/page.tsx index cea6920..37e4709 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -1,168 +1,5 @@ -/* eslint-disable @next/next/no-img-element */ -import Link from "next/link"; -import {BsCardChecklist, BsClipboardFill, BsClockFill, BsInstagram, BsShieldFillCheck, BsTwitter} from "react-icons/bs"; -import {BiLogoFacebook} from "react-icons/bi"; -import Navbar from "@/components/Navbar"; -import Footer from "@/components/Footer"; +import Home from "@/templates/Home"; -export default function Home() { - return ( -
- - -
- IELTS Packages - Together we prepare for the future - - - -
- -
-
-
- -
-
- Placeholder - Sit accusamus maxime maiores rerum cupiditate dolorum inventore. -
-
-
-
- -
-
- Placeholder - Sit accusamus maxime maiores rerum cupiditate dolorum inventore. -
-
-
-
- -
-
- Placeholder - Sit accusamus maxime maiores rerum cupiditate dolorum inventore. -
-
-
-
- -
-
- Placeholder - Sit accusamus maxime maiores rerum cupiditate dolorum inventore. -
-
-
- -
- - Interested in us? - - - Contact us and Start Learning - - - - -
- WhatsApp Contact - WhatsApp QR Code for MTI -
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
- - About us Message from CEO - -
- - “We are the best service and the only one” - -

- Engaged in education, especially in providing teaching services for students who do not have the opportunity to learn in - conventional institutions. -

-
- - - -
-
-
- MTI's CEO -
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
- Our Partners -
- DQ's Logo - Knowledge Grid Academy's Logo - Sohar's Logo - Unknown Partner's Logo -
- Sohar Aluminium's Logo -
-
-
-
- Accreditation -
-
- IDP's Logo -
-
- IELTS's Logo -
-
- EC Council's Logo -
-
-
-
- -
-
- ); +export default function Page() { + return ; } diff --git a/src/app/success/page.tsx b/src/app/success/page.tsx index efa9000..6c849ac 100644 --- a/src/app/success/page.tsx +++ b/src/app/success/page.tsx @@ -53,7 +53,7 @@ export default function Home() { return (
- +
{isLoading && ( @@ -83,7 +83,7 @@ export default function Home() { )}
-
+
); } diff --git a/src/components/Footer.tsx b/src/components/Footer.tsx index d1534aa..9ca861b 100644 --- a/src/components/Footer.tsx +++ b/src/components/Footer.tsx @@ -1,64 +1,71 @@ import Link from "next/link"; import {BiLogoFacebook} from "react-icons/bi"; import {BsInstagram, BsTwitter} from "react-icons/bs"; +import translation from "@/translation/footer.json"; -export default function Footer() { +interface Props { + language: "en" | "ar"; +} + +export default function Footer({language}: Props) { return ( <> -
-
- Navigation -
- Why us - Capabilities - Expertise - History - Contact -
-
-
- Services -
- EnCoach benefits - Student testimonials -
-
-
- About -
- Terms and Conditions - Privacy Policy - About -
-
-
- Get in Touch +
+
- - Stay connected with us and know the latest updates about our services through various social media - -
- - - - - - - - - + {translation.navigation.text[language]} +
+ {translation.navigation.why_us[language]} + {translation.navigation.capabilities[language]} + {translation.navigation.expertise[language]} + {translation.navigation.history[language]} + {translation.navigation.contact[language]} +
+
+
+ {translation.services.text[language]} +
+ {translation.services.encoach_benefits[language]} + {translation.services.student_testimonials[language]} +
+
+
+ {translation.about.text[language]} +
+ {translation.about.terms[language]} + {translation.about.privacy_policy[language]} + {translation.about.text[language]} +
+
+
+ {translation.get_in_touch.title[language]} +
+ {translation.get_in_touch.text[language]} +
+ + + + + + + + + +
-
© EnCoach 2023 all rights reserved
+
+ © {translation.copyright[language]} +
); } diff --git a/src/components/Navbar.tsx b/src/components/Navbar.tsx index 6edeec3..3eacd04 100644 --- a/src/components/Navbar.tsx +++ b/src/components/Navbar.tsx @@ -1,13 +1,16 @@ +/* eslint-disable @next/next/no-img-element */ "use client"; import Link from "next/link"; import Image from "next/image"; import clsx from "clsx"; import {BsList, BsXLg} from "react-icons/bs"; -import {Fragment, useState} from "react"; +import {Fragment, useEffect, useState} from "react"; import {Dialog, Menu, Transition} from "@headlessui/react"; +import {useRouter} from "next/navigation"; +import translation from "@/translation/navbar.json"; -export default function Navbar({currentPage}: {currentPage: string}) { +export default function Navbar({currentPage, language}: {currentPage: string; language: "en" | "ar"}) { const [isOpen, setIsOpen] = useState(false); return ( @@ -23,7 +26,7 @@ export default function Navbar({currentPage}: {currentPage: string}) { "hover:border-b-2 hover:border-b-mti-purple-light transition ease-in-out duration-300", currentPage === "/" && "border-b-2 border-b-mti-purple-light", )}> - Home + {translation.home[language]} - Services + {translation.services[language]} - About us + {translation.about[language]} - History + {translation.history[language]} - Contact + {translation.contact[language]}
- Platform + {translation.platform[language]} - Join + {translation.join[language]} +
+ {language === "ar" ? ( + + English + + ) : ( + + Arabic + + )} +
@@ -100,8 +122,29 @@ export default function Navbar({currentPage}: {currentPage: string}) { EnCoach logo -
setIsOpen(false)} tabIndex={0}> - setIsOpen(false)} /> +
+
+ {language === "ar" ? ( + + English + + ) : ( + + Arabic + + )} +
+
setIsOpen(false)} tabIndex={0}> + setIsOpen(false)} /> +
@@ -111,7 +154,7 @@ export default function Navbar({currentPage}: {currentPage: string}) { "transition ease-in-out duration-300 w-fit", currentPage === "/" && "text-mti-purple-light font-semibold border-b-2 border-b-mti-purple-light ", )}> - Home + {translation.home[language]} - Services + {translation.services[language]} - About us + {translation.about[language]} - History + {translation.history[language]} - Contact + {translation.contact[language]} - Join + {translation.join[language]} - Platform + {translation.platform[language]}
@@ -173,8 +216,29 @@ export default function Navbar({currentPage}: {currentPage: string}) { EnCoach logo -
setIsOpen(true)}> - setIsOpen(true)} /> +
+
+ {language === "ar" ? ( + + English + + ) : ( + + Arabic + + )} +
+
setIsOpen(true)}> + setIsOpen(true)} /> +
diff --git a/src/templates/Home.tsx b/src/templates/Home.tsx new file mode 100644 index 0000000..3dbeec8 --- /dev/null +++ b/src/templates/Home.tsx @@ -0,0 +1,222 @@ +/* eslint-disable @next/next/no-img-element */ +import Link from "next/link"; +import {BsCardChecklist, BsClipboardFill, BsClockFill, BsInstagram, BsShieldFillCheck, BsTwitter} from "react-icons/bs"; +import {BiLogoFacebook} from "react-icons/bi"; +import Navbar from "@/components/Navbar"; +import Footer from "@/components/Footer"; +import translation from "@/translation/home.json"; + +interface Props { + language: "en" | "ar"; +} + +export default function Home({language}: Props) { + return ( +
+ + +
+ IELTS Packages - Together we prepare for the future + + + +
+ + {/* Perks Section */} +
+
+
+
+ +
+
+ {translation.perks["24_hour_access"].title[language]} + {translation.perks["24_hour_access"].description[language]} +
+
+
+
+ +
+
+ {translation.perks.complete_package.title[language]} + {translation.perks.complete_package.description[language]} +
+
+
+
+ +
+
+ {translation.perks.enjoy_learning.title[language]} + {translation.perks.enjoy_learning.description[language]} +
+
+
+
+ +
+
+ {translation.perks.guaranteed_results.title[language]} + {translation.perks.guaranteed_results.description[language]} +
+
+
+
+ + {/* EnCoach Benefits Section */} +
+
+
+
+ Person using a laptop +
+
+ Person using a laptop +
+
+ Person using a laptop +
+
+
+ + {translation.encoach_benefits.tag.encoach[language]}{" "} + {translation.encoach_benefits.tag.benefits[language]} + +
+ + {translation.encoach_benefits.title.text[language]}{" "} + {translation.encoach_benefits.title.highlight[language]} + +

{translation.encoach_benefits.description[language]}

+
+ + + +
+
+
+ + {/* Interested Section */} +
+
+ + {translation.interested.tag.highlight[language]}{" "} + {translation.interested.tag.text[language]} + + + {translation.interested.title.beginning[language]}{" "} + {translation.interested.title.highlight[language]}{" "} + {translation.interested.title.end[language]} + + + + +
+ {translation.interested.whatsapp[language]} + WhatsApp QR Code for MTI +
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + {/* CEO Message Section */} +
+
+
+ + {translation.ceo_message.tag.highlight[language]}{" "} + {translation.ceo_message.tag.text[language]} + +
+ + “{translation.ceo_message.title.text[language]}{" "} + {translation.ceo_message.title.highlight[language]}” + +

{translation.ceo_message.description[language]}

+
+ + + +
+
+
+ MTI's CEO +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + {/* Partner and Accreditation Section */} +
+
+
+ {translation.our_partners[language]} +
+ DQ's Logo + Knowledge Grid Academy's Logo + Sohar's Logo + Unknown Partner's Logo +
+ Sohar Aluminium's Logo +
+
+
+
+ {translation.accreditation[language]} +
+
+ IDP's Logo +
+
+ IELTS's Logo +
+
+ EC Council's Logo +
+
+
+
+
+ +
+ ); +} diff --git a/src/translation/footer.json b/src/translation/footer.json new file mode 100644 index 0000000..2eb07cd --- /dev/null +++ b/src/translation/footer.json @@ -0,0 +1,70 @@ +{ + "navigation": { + "text": { + "en": "Navigation", + "ar": "ملاحة" + }, + "why_us": { + "en": "Why us", + "ar": "لماذا نحن" + }, + "capabilities": { + "en": "Capabilities", + "ar": "قدرات" + }, + "expertise": { + "en": "Expertise", + "ar": "خبرة" + }, + "history": { + "en": "History", + "ar": "تاريخ" + }, + "contact": { + "en": "Contact", + "ar": "اتصال" + } + }, + "services": { + "text": { + "en": "Services", + "ar": "خدمات" + }, + "encoach_benefits": { + "en": "EnCoach Benefits", + "ar": "فوائد إنكوتش" + }, + "student_testimonials": { + "en": "Student Testimonials", + "ar": "شهادات الطلاب" + } + }, + "about": { + "text": { + "en": "About", + "ar": "عن" + }, + "terms": { + "en": "Terms and Conditions", + "ar": "الأحكام والشروط" + }, + "privacy_policy": { + "en": "Privacy Policy", + "ar": "سياسة الخصوصية" + } + }, + "get_in_touch": { + "title": { + "en": "Get in Touch", + "ar": "ابقى على تواصل" + }, + "text": { + "en": "Stay connected with us and know the latest updates about our services through various social media", + "ar": "ابق على تواصل معنا واعرف آخر التحديثات عن خدماتنا عبر وسائل التواصل الاجتماعي المختلفة" + } + }, + "copyright": { + "en": "EnCoach 2023 all rights reserved", + "ar": "إنكوتش 2023 جميع الحقوق محفوظة" + } +} \ No newline at end of file diff --git a/src/translation/home.json b/src/translation/home.json new file mode 100644 index 0000000..218e307 --- /dev/null +++ b/src/translation/home.json @@ -0,0 +1,146 @@ +{ + "get_started_btn": { + "en": "Get Started", + "ar": "البدء" + }, + "perks": { + "24_hour_access": { + "title": { + "en": "24 hour access", + "ar": "وصول 24 ساعة" + }, + "description": { + "en": "Always online, always ready to help you train.", + "ar": "متصل بالإنترنت دائمًا، ومستعد دائمًا لمساعدتك في التدريب." + } + }, + "complete_package": { + "title": { + "en": "Complete package", + "ar": "حزمة كاملة" + }, + "description": { + "en": "Every module is available at your fingertips.", + "ar": "كل وحدة متاحة في متناول يدك." + } + }, + "enjoy_learning": { + "title": { + "en": "Enjoy learning", + "ar": "يتمتع التعلم" + }, + "description": { + "en": "Choose between a relaxed single module approach, or a competitive full exam one.", + "ar": "اختر بين منهج وحدة واحدة مريح أو اختبار تنافسي كامل." + } + }, + "guaranteed_results": { + "title": { + "en": "Guaranteed results", + "ar": "نتائج مضمونة" + }, + "description": { + "en": "You will improve your performance through your hard work.", + "ar": "سوف تقوم بتحسين أدائك من خلال عملك الجاد." + } + } + }, + "learn_more": { + "en": "Learn more", + "ar": "يتعلم أكثر" + }, + "encoach_benefits": { + "tag": { + "encoach": { + "en": "EnCoach", + "ar": "الإنكوتش" + }, + "benefits": { + "en": "benefits", + "ar": "فوائد" + } + }, + "title": { + "text": { + "en": "Students have registered on our", + "ar": "لقد تم تسجيل الطلاب على موقعنا" + }, + "highlight": { + "en": "platform", + "ar": "منصة" + } + }, + "description": { + "en": "We already have many students studying online under the guidance of our digital trainer, so come and join the community", + "ar": "لدينا بالفعل العديد من الطلاب الذين يدرسون عبر الإنترنت تحت إشراف مدربنا الرقمي، لذا تعال وانضم إلى المجتمع" + } + }, + "interested": { + "tag": { + "highlight": { + "en": "Interested", + "ar": "مهتم" + }, + "text": { + "en": "in us?", + "ar": "بنا؟" + } + }, + "title": { + "beginning": { + "en": "Contact us and", + "ar": "اتصل بنا و" + }, + "highlight": { + "en": "Start", + "ar": "يبدأ" + }, + "end": { + "en": "Learning", + "ar": "تعلُّم" + } + }, + "contact_us": { + "en": "Contact us", + "ar": "اتصل بنا" + }, + "whatsapp": { + "en": "WhatsApp Contact", + "ar": "تواصل واتس اب" + } + }, + "ceo_message": { + "tag": { + "highlight": { + "en": "About us", + "ar": "معلومات عنا" + }, + "text": { + "en": "Message from CEO", + "ar": "رسالة من الرئيس التنفيذي" + } + }, + "title": { + "highlight": { + "en": "only one", + "ar": "واحد فقط" + }, + "text": { + "en": "We are the best service and the", + "ar": "نحن أفضل الخدمات و" + } + }, + "description": { + "en": "Engaged in education, especially in providing teaching services for students who do not have the opportunity to learn in conventional institutions.", + "ar": "تعمل في مجال التعليم، وخاصة في تقديم الخدمات التعليمية للطلاب الذين لا تتاح لهم فرصة التعلم في المؤسسات التقليدية." + } + }, + "our_partners": { + "en": "Our Partners", + "ar": "شركاؤنا" + }, + "accreditation": { + "en": "Accreditation", + "ar": "الاعتماد الاكاديمي" + } +} \ No newline at end of file diff --git a/src/translation/navbar.json b/src/translation/navbar.json new file mode 100644 index 0000000..5d85b8a --- /dev/null +++ b/src/translation/navbar.json @@ -0,0 +1,30 @@ +{ + "home": { + "en": "Home", + "ar": "بيت" + }, + "services": { + "en": "Services", + "ar": "خدمات" + }, + "about": { + "en": "About us", + "ar": "معلومات عنا" + }, + "history": { + "en": "History", + "ar": "تاريخ" + }, + "contact": { + "en": "Contact", + "ar": "اتصال" + }, + "platform": { + "en": "Platform", + "ar": "منصة" + }, + "join": { + "en": "Join", + "ar": "منصة" + } +} \ No newline at end of file diff --git a/tailwind.config.ts b/tailwind.config.ts index 283cb02..460dfc2 100644 --- a/tailwind.config.ts +++ b/tailwind.config.ts @@ -1,7 +1,12 @@ import type {Config} from "tailwindcss"; const config: Config = { - content: ["./src/pages/**/*.{js,ts,jsx,tsx,mdx}", "./src/components/**/*.{js,ts,jsx,tsx,mdx}", "./src/app/**/*.{js,ts,jsx,tsx,mdx}"], + content: [ + "./src/pages/**/*.{js,ts,jsx,tsx,mdx}", + "./src/components/**/*.{js,ts,jsx,tsx,mdx}", + "./src/templates/**/*.{js,ts,jsx,tsx,mdx}", + "./src/app/**/*.{js,ts,jsx,tsx,mdx}", + ], theme: { extend: { backgroundImage: {