33438/frontend/src/pages/index.tsx
2025-08-16 22:55:14 +00:00

146 lines
5.3 KiB
TypeScript

import React, { useEffect, useState } from 'react';
import type { ReactElement } from 'react';
import Head from 'next/head';
import Link from 'next/link';
import { useAppSelector } from '../stores/hooks';
import LayoutGuest from '../layouts/Guest';
import WebSiteHeader from '../components/WebPageComponents/Header';
import WebSiteFooter from '../components/WebPageComponents/Footer';
import {
HeroDesigns,
FeaturesDesigns,
AboutUsDesigns,
ContactFormDesigns,
} from '../components/WebPageComponents/designs';
import HeroSection from '../components/WebPageComponents/HeroComponent';
import FeaturesSection from '../components/WebPageComponents/FeaturesComponent';
import AboutUsSection from '../components/WebPageComponents/AboutUsComponent';
import ContactFormSection from '../components/WebPageComponents/ContactFormComponent';
export default function WebSite() {
const cardsStyle = useAppSelector((state) => state.style.cardsStyle);
const bgColor = useAppSelector((state) => state.style.bgLayoutColor);
const projectName = 'icabinet';
useEffect(() => {
const darkElement = document.querySelector('body .dark');
if (darkElement) {
darkElement.classList.remove('dark');
}
}, []);
const pages = [
{
href: '/home',
label: 'home',
},
{
href: '/services',
label: 'services',
},
{
href: '/contact',
label: 'contact',
},
];
const features_points = [
{
name: 'User Management',
description:
'Effortlessly manage user roles and permissions, ensuring secure access for super-admins, admins, doctors, and secretaries.',
icon: 'mdiAccountGroup',
},
{
name: 'Patient Scheduling',
description:
'Streamline appointment bookings with an intuitive interface, allowing easy scheduling, rescheduling, and cancellations.',
icon: 'mdiCalendarCheck',
},
{
name: 'Real-time Messaging',
description:
'Enhance communication with instant messaging between users, facilitating quick and effective collaboration.',
icon: 'mdiMessageText',
},
{
name: 'Excel Integration',
description:
'Seamlessly import and export patient data using Excel, ensuring data accuracy and easy record management.',
icon: 'mdiFileExcel',
},
{
name: 'Waiting Room Management',
description:
'Optimize patient flow with drag-and-drop status updates, improving the waiting room experience.',
icon: 'mdiChairRolling',
},
{
name: 'Prescription Management',
description:
'Simplify prescription creation and management, allowing doctors to quickly generate and print prescriptions.',
icon: 'mdiPill',
},
];
return (
<div className='flex flex-col min-h-screen'>
<Head>
<title>{`iCabinet - Comprehensive Medical Practice Management`}</title>
<meta
name='description'
content={`Discover iCabinet, the ultimate solution for managing medical practices efficiently. From user management to patient appointments, streamline your operations with our intuitive platform.`}
/>
</Head>
<WebSiteHeader projectName={'icabinet'} pages={pages} />
<main className={`flex-grow bg-white rounded-none `}>
<HeroSection
projectName={'icabinet'}
image={['Doctor managing appointments efficiently']}
mainText={`Revolutionize Your Practice with iCabinet`}
subTitle={`Experience seamless medical practice management with iCabinet. From patient appointments to user access, streamline every aspect of your operations effortlessly.`}
design={HeroDesigns.IMAGE_RIGHT || ''}
buttonText={`Get Started Now`}
/>
<FeaturesSection
projectName={'icabinet'}
image={['Dashboard showcasing key features']}
withBg={0}
features={features_points}
mainText={`Explore iCabinet's Powerful Features`}
subTitle={`Discover how ${projectName} can transform your medical practice with its comprehensive features designed for efficiency and ease.`}
design={FeaturesDesigns.CARDS_GRID_WITH_ICONS || ''}
/>
<AboutUsSection
projectName={'icabinet'}
image={['Team collaborating on innovative solutions']}
mainText={`Discover the Vision Behind iCabinet`}
subTitle={`At ${projectName}, we are committed to revolutionizing medical practice management. Our mission is to provide a seamless, efficient, and user-friendly platform that empowers healthcare professionals to focus on what truly matters: patient care.`}
design={AboutUsDesigns.IMAGE_LEFT || ''}
buttonText={`Learn More About Us`}
/>
<ContactFormSection
projectName={'icabinet'}
design={ContactFormDesigns.WITH_IMAGE || ''}
image={['Person typing on a laptop']}
mainText={`Get in Touch with iCabinet `}
subTitle={`Reach out to us anytime for inquiries or support. Our team at ${projectName} is here to assist you promptly and efficiently.`}
/>
</main>
<WebSiteFooter projectName={'icabinet'} pages={pages} />
</div>
);
}
WebSite.getLayout = function getLayout(page: ReactElement) {
return <LayoutGuest>{page}</LayoutGuest>;
};