diff --git a/frontend/src/pages/Dashboard.tsx b/frontend/src/pages/Dashboard.tsx index 8461e80..5bf2022 100644 --- a/frontend/src/pages/Dashboard.tsx +++ b/frontend/src/pages/Dashboard.tsx @@ -1,10 +1,21 @@ import React, { useState } from 'react'; import { - Box, Checkbox, Flex, Heading, HStack, Icon, - SimpleGrid, Text, VStack, IconButton, useMediaQuery, + Box, Checkbox, + Flex, + Heading, HStack, + Icon, + SimpleGrid, + Text, + VStack, + IconButton, useMediaQuery, Spacer } from '@chakra-ui/react'; -import { FiHome, FiMessageSquare, FiBriefcase, FiUser, FiMoon, FiLogOut, FiBarChart2, FiCalendar, FiSettings, FiHelpCircle, FiEdit, FiZap } from 'react-icons/fi'; +import { + FiHome, FiMessageSquare, FiBriefcase, FiUser, FiMoon, FiLogOut, + FiBarChart2, FiCalendar, + FiSettings, FiHelpCircle, + FiEdit, FiZap +} from 'react-icons/fi'; interface Todo { id: number; @@ -29,6 +40,8 @@ const Dashboard: React.FC = () => { // eslint-disable-next-line @typescript-eslint/no-unused-vars const [activeTab, setActiveTab] = useState('dashboard'); const [isMobile] = useMediaQuery("(max-width: 768px)"); + const [isWide, setIsWide] = useState(true); + const [todos, setTodos] = useState(initialTodos); const navItems: NavItem[] = [ @@ -45,114 +58,147 @@ const Dashboard: React.FC = () => { todo.id === id ? { ...todo, completed: !todo.completed } : todo )); }; + + + + + const toggleWidth = () => { + setIsWide(!isWide); + }; return ( - - + + + + + + +
+ + {navItems.map((item) => ( setActiveTab(item.id)} - _hover={item.id !== 'dashboard' ? { bg: "gray.700" } : {}} - mr={5} + _hover={item.id !== 'dashboard' ? { bg: "gray.700", } : {bg:"gray.700"}} + className=' hover:rounded-md hover:text-white mt-3' + cursor={"pointer"} + > - - {item.label} + +
+ + +
+ {/*

{item.label}

*/} +
))} - + } - onClick={() => {/* Implement dark mode toggle */}} + onClick={() => { }} variant="ghost" - color="gray.300" + color="gray.800" _hover={{ bg: "gray.700" }} - mr={3} + className='mt-2 hover:text-white' + /> + + + } - onClick={() => {/* Implement logout */}} + onClick={() => { }} variant="ghost" - color="gray.300" + color="gray.800" _hover={{ bg: "gray.700" }} + className='mt-2 hover:text-white' /> + +
- - - - Application Statistics - - - - - 28 - - Auto-Applied Jobs +
+ + + + Application Statistics + + + + + 28 + + Auto-Applied Jobs + + + + + 68% + + Success Rate + + + + + 3 + + Upcoming Interviews + + + + + Upcoming Interviews + + {[ + { company: 'TechCorp', date: '15/06/2023, 14:00:00' }, + { company: 'InnoSoft', date: '17/06/2023, 10:30:00' }, + { company: 'DataDynamics', date: '20/06/2023, 15:45:00' }, + ].map((interview, index) => ( + + {interview.company} + {interview.date} + + ))} - - - - 68% - - Success Rate - - - - - 3 - - Upcoming Interviews - - - + + - Upcoming Interviews - - {[ - { company: 'TechCorp', date: '15/06/2023, 14:00:00' }, - { company: 'InnoSoft', date: '17/06/2023, 10:30:00' }, - { company: 'DataDynamics', date: '20/06/2023, 15:45:00' }, - ].map((interview, index) => ( - - {interview.company} - {interview.date} + Todo List + + {todos.map((todo) => ( + + toggleTodo(todo.id)} + colorScheme="purple" + > + {todo.text} + + } + size="sm" + variant="ghost" + _hover={{ color: "purple.500" }} + /> ))} - - - Todo List - - {todos.map((todo) => ( - - toggleTodo(todo.id)} - colorScheme="purple" - > - {todo.text} - - } - size="sm" - variant="ghost" - _hover={{ color: "purple.500" }} - /> - - ))} - - - +
+ +
+ + ); }; diff --git a/frontend/src/pages/landing-page.tsx b/frontend/src/pages/landing-page.tsx index 73d87a0..034896c 100644 --- a/frontend/src/pages/landing-page.tsx +++ b/frontend/src/pages/landing-page.tsx @@ -1,5 +1,6 @@ import React, { useState, useEffect } from "react"; import { motion } from "framer-motion"; +import { Link } from "react-router-dom"; import { Briefcase, Code, @@ -37,8 +38,8 @@ const FeatureCard: React.FC = ({ whileHover={{ scale: 1.05 }} className="bg-white rounded-xl shadow-lg overflow-hidden" > -
- +
+

{title}

{description}

@@ -111,50 +112,51 @@ export default function LandingPage() { }; return ( -
+ +
-
+
Welcome to Job-City @@ -254,12 +256,12 @@ export default function LandingPage() { animate={{ opacity: 1, y: 0 }} transition={{ duration: 0.5, delay: 0.4 }} > - Get Started - +
@@ -269,12 +271,12 @@ export default function LandingPage() { initial={{ opacity: 0, y: -20 }} animate={{ opacity: 1, y: 0 }} transition={{ duration: 0.5 }} - className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-20" + className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 pb-20" >

Our Features

-
+
@@ -338,26 +340,40 @@ export default function LandingPage() {
-

+

2024

-

+

MVP Launch

-

+ +

Launch of our Minimum Viable
+ Product with core features.

+ + + +

+ Launch of our Minimum + + +

+

Viable Product with

+

core features

+ +
-

+

2025

-

+

AI Enhancement

@@ -446,7 +462,7 @@ export default function LandingPage() { alt="Team collaboration" className="rounded-lg shadow-lg" /> -

+

Empowering Careers

@@ -480,10 +496,10 @@ export default function LandingPage() { transition={{ duration: 0.5, delay: 0.2 }} >
-

+

Get in Touch

-

+

Have questions or feedback? We would love to hear from you. Reach out to us using the contact information below or fill out the form, and we will get back to you as soon as @@ -557,8 +573,9 @@ export default function LandingPage() { name="message" rows={4} placeholder="What do you wanna talk about..." - className="w-full px-4 py-2 border border-indigo-200 rounded-lg focus:ring-indigo-500 focus:border-indigo-500 transition-colors duration-300" + className="w-full px-4 py-2 border border-indigo-200 h-60 rounded-lg focus:ring-indigo-500 focus:border-indigo-500 transition-colors duration-300" required + >

@@ -647,15 +664,15 @@ export default function LandingPage() {
Follow us on - + - - + + - - + + - + © 2024 VishwamAI. All rights reserved.