From cfaa9aa41ad8810d3b1d2b54beffc92bc7e07c5a Mon Sep 17 00:00:00 2001 From: Felix221123 Date: Thu, 19 Sep 2024 14:50:53 +0100 Subject: [PATCH] Add : built html template for the landing page and tested it using vitest,add the fb image as the desktop favicon --- frontend/index.html | 2 +- frontend/src/Page/LandingPage.tsx | 119 +++++++++++++++++++- frontend/src/assets/portfolio-site-icon.jpg | Bin 0 -> 17827 bytes frontend/src/testing/LandingPage.test.tsx | 39 +++++++ 4 files changed, 157 insertions(+), 3 deletions(-) create mode 100755 frontend/src/assets/portfolio-site-icon.jpg create mode 100644 frontend/src/testing/LandingPage.test.tsx diff --git a/frontend/index.html b/frontend/index.html index 3eefece..96cd6ce 100644 --- a/frontend/index.html +++ b/frontend/index.html @@ -5,7 +5,7 @@ { + + // calling the useNavigate component + const navigate = useNavigate(); + + // handles the navigation controller + const handleNavigation = (route:string) => { + const routeFormat = route.replace(/\s+/g, '-').toLowerCase() + navigate(`/${routeFormat}/`) + } + -export const LandingPage:React.FC = () => { return ( -
LandingPage
+ <> +
+ {/* header section */} +
+
taaskify
+ +
+ {/* hero section */} +
+
+

Manage Tasks Effortlessly with Real-Time Efficiency

+

+ Taaskify offers a robust, real-time task management solution designed for individuals who value efficiency and flexibility. + With customisable Kanban boards, real-time notifications, and secure authentication, stay on top of every project no matter where you are. +

+ +
+
+ hero section image +
+
+ {/* main features section */} +
+

Main Features

+

+ Taaskify empowers individuals with a fully customisable task management solution. + Whether you're tracking daily activities or managing complex projects, our platform delivers + real-time monitoring, tailored dashboards, and high performance. Stay organised, boost productivity, + and keep your workflows running smoothly—all within a highly intuitive and secure environment. +

+
+
+ real time icon +
Real-Time Monitoring
+

Track and manage tasks 24/7 with real-time updates and notifications. Keep yourself and projects in sync at all times.

+
+
+ customisable icon +
Customisable Columns
+

Easily personalise your dashboard with a variety of columns tailored to suit your specific project needs

+
+
+ high performance icon +
High Performance
+

Built for speed and reliability, Taaskify delivers top-notch performance, ensuring seamless task management even with large workloads.

+
+
+
+ {/* feature explanation */} +
+
+
+
+ Automated Updates + & Column Tracking +
+

+ Stay informed and on top of your projects with Taaskify's automated system. Get real-time insights delivered straight to your dashboard. Customise your Kanban board’s column according to your needs. +

+
+
+ feature image +
+
+
+
+
Fully customizable to address your needs
+

+ Taaskify adapts to your workflow, allowing you to tailor every aspect of task management to suit your specific requirements. Whether you need to customise columns, adjust notifications,Taaskify gives you full control to create a seamless project management experience +

+
+
+ feature image +
+
+
+
+
Dashboard
+

+ Kickstart your projects with our ready-to-use dashboards, designed to help you visualise and manage tasks efficiently using boards. +

+
+
+ feature image +
+
+
+ {/* footer */} + +
+ ) } diff --git a/frontend/src/assets/portfolio-site-icon.jpg b/frontend/src/assets/portfolio-site-icon.jpg new file mode 100755 index 0000000000000000000000000000000000000000..f230c523b620c0d96f06810fd4f0a248a7c6222a GIT binary patch literal 17827 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 literal 0 HcmV?d00001 diff --git a/frontend/src/testing/LandingPage.test.tsx b/frontend/src/testing/LandingPage.test.tsx new file mode 100644 index 0000000..e933cfc --- /dev/null +++ b/frontend/src/testing/LandingPage.test.tsx @@ -0,0 +1,39 @@ +import { screen, fireEvent } from '@testing-library/react'; +import { customRender } from "../utils/testingUtils"; +import { LandingPage } from '../Page/LandingPage'; +import { LogIn } from '../Auth/LogIn'; +import { SignUp } from '../Auth/SignUp'; + +describe('Landing Page', () => { + test('it should display the header and hero section', () => { + customRender(); + customRender( {}}/>); + customRender( { }}/>) + expect(screen.getByTestId("appName")).toBeInTheDocument(); + + const logInLink = screen.getByTestId("logInLink"); + + fireEvent.click(logInLink); + + expect(screen.getByTestId("loginContainer")).toBeInTheDocument(); + + expect(screen.getByText(/Manage Tasks Effortlessly with Real-Time Efficiency/i)).toBeInTheDocument(); + + const signupLink = screen.getByTestId("signupLink"); + + fireEvent.click(signupLink); + + expect(screen.getByTestId("signUpContainer")).toBeInTheDocument(); + + }) + + test('it should display the features containers and the footer', () => { + customRender(); + expect(screen.getByTestId("mainFeatures")).toBeInTheDocument(); + expect(screen.getByTestId("features")).toBeInTheDocument(); + expect(screen.getByTestId("footer")).toBeInTheDocument(); + + }) + + +})