first commit

This commit is contained in:
DESKTOP-GBA0BK8\Admin
2023-04-05 10:52:34 -04:00
commit 5a5cbe1623
394 changed files with 49443 additions and 0 deletions
+6
View File
@@ -0,0 +1,6 @@
REACT_APP_APPSITE='http://welcome.float.sg'
REACT_APP_EMAIL='support@float.sg'
REACT_APP_WWW='http://float-www.dev.chiefsoft.net'
REACT_APP_FLEET='http://float-flt.dev.chiefsoft.net'
REACT_APP_USERS='http://float-usr.dev.chiefsoft.net'
REACT_APP_APIGATE='http://float-gat.dev.chiefsoft.net'
+23
View File
@@ -0,0 +1,23 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
# dependencies
/node_modules
/.pnp
.pnp.js
# testing
/coverage
# production
/build
# misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local
npm-debug.log*
yarn-debug.log*
yarn-error.log*
+8
View File
@@ -0,0 +1,8 @@
# Default ignored files
/shelf/
/workspace.xml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml
+8
View File
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="WEB_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>
+8
View File
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/coregrade-www.iml" filepath="$PROJECT_DIR$/.idea/coregrade-www.iml" />
</modules>
</component>
</project>
Generated
+19
View File
@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="MessDetectorOptionsConfiguration">
<option name="transferred" value="true" />
</component>
<component name="PHPCSFixerOptionsConfiguration">
<option name="transferred" value="true" />
</component>
<component name="PHPCodeSnifferOptionsConfiguration">
<option name="highlightLevel" value="WARNING" />
<option name="transferred" value="true" />
</component>
<component name="PhpStanOptionsConfiguration">
<option name="transferred" value="true" />
</component>
<component name="PsalmOptionsConfiguration">
<option name="transferred" value="true" />
</component>
</project>
+70
View File
@@ -0,0 +1,70 @@
# Getting Started with Create React App
This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app).
## Available Scripts
In the project directory, you can run:
### `npm start`
Runs the app in the development mode.\
Open [http://localhost:3000](http://localhost:3000) to view it in your browser.
The page will reload when you make changes.\
You may also see any lint errors in the console.
### `npm test`
Launches the test runner in the interactive watch mode.\
See the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information.
### `npm run build`
Builds the app for production to the `build` folder.\
It correctly bundles React in production mode and optimizes the build for the best performance.
The build is minified and the filenames include the hashes.\
Your app is ready to be deployed!
See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information.
### `npm run eject`
**Note: this is a one-way operation. Once you `eject`, you can't go back!**
If you aren't satisfied with the build tool and configuration choices, you can `eject` at any time. This command will remove the single build dependency from your project.
Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except `eject` will still work, but they will point to the copied scripts so you can tweak them. At this point you're on your own.
You don't have to ever use `eject`. The curated feature set is suitable for small and middle deployments, and you shouldn't feel obligated to use this feature. However we understand that this tool wouldn't be useful if you couldn't customize it when you are ready for it.
## Learn More
You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started).
To learn React, check out the [React documentation](https://reactjs.org/).
### Code Splitting
This section has moved here: [https://facebook.github.io/create-react-app/docs/code-splitting](https://facebook.github.io/create-react-app/docs/code-splitting)
### Analyzing the Bundle Size
This section has moved here: [https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size](https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size)
### Making a Progressive Web App
This section has moved here: [https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app](https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app)
### Advanced Configuration
This section has moved here: [https://facebook.github.io/create-react-app/docs/advanced-configuration](https://facebook.github.io/create-react-app/docs/advanced-configuration)
### Deployment
This section has moved here: [https://facebook.github.io/create-react-app/docs/deployment](https://facebook.github.io/create-react-app/docs/deployment)
### `npm run build` fails to minify
This section has moved here: [https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify](https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify)
+35
View File
@@ -0,0 +1,35 @@
version: '3'
services:
coregrade-www:
#image: registry.chiefsoft.net/wrenchboard-users-wrench:latest
build:
context: .
dockerfile: docker/Dockerfile
restart: unless-stopped
ports:
- 5701:3000
# - 3800:3011
# stdin_open: true
working_dir: /usr/src/app
volumes:
- ./:/usr/src/app
- /usr/src/app/node_modules
- ./src/:/usr/src/app/src
- ./vendors/:/usr/src/app/vendors
extra_hosts:
- backend.wrenchboard.api.live:10.10.33.15
- backend.wrenchboard.api.test:10.10.33.15
# #- backend.wrenchboard.api.live:172.31.4.27
# #- backend.wrenchboard.api.test:10.20.30.27
- apigateway.wrenchboard.app.dev.fluxtra.net:10.20.30.19
- apigateway.wrenchboard.app.lotus.fluxtra.net:172.31.4.19
environment:
- CHOKIDAR_USEPOLLING=true
# volumes:
# - ./:/app
# - /app/node_modules
tty: true
stdin_open: true
# working_dir: /app
volumes:
src:
+113
View File
@@ -0,0 +1,113 @@
FROM alpine:3.17
ENV NODE_VERSION 19.8.1
RUN addgroup -g 1000 node \
&& adduser -u 1000 -G node -s /bin/sh -D node \
&& apk add --no-cache \
libstdc++ \
&& apk add --no-cache --virtual .build-deps \
curl \
&& ARCH= && alpineArch="$(apk --print-arch)" \
&& case "${alpineArch##*-}" in \
x86_64) \
ARCH='x64' \
CHECKSUM="3106608fc62f92519578148e872a6862f36ea7b1ef6ac7c1475e2064fe65a9c6" \
;; \
*) ;; \
esac \
&& if [ -n "${CHECKSUM}" ]; then \
set -eu; \
curl -fsSLO --compressed "https://unofficial-builds.nodejs.org/download/release/v$NODE_VERSION/node-v$NODE_VERSION-linux-$ARCH-musl.tar.xz"; \
echo "$CHECKSUM node-v$NODE_VERSION-linux-$ARCH-musl.tar.xz" | sha256sum -c - \
&& tar -xJf "node-v$NODE_VERSION-linux-$ARCH-musl.tar.xz" -C /usr/local --strip-components=1 --no-same-owner \
&& ln -s /usr/local/bin/node /usr/local/bin/nodejs; \
else \
echo "Building from source" \
# backup build
&& apk add --no-cache --virtual .build-deps-full \
binutils-gold \
g++ \
gcc \
gnupg \
libgcc \
linux-headers \
make \
python3 \
# gpg keys listed at https://github.com/nodejs/node#release-keys
&& for key in \
4ED778F539E3634C779C87C6D7062848A1AB005C \
141F07595B7B3FFE74309A937405533BE57C7D57 \
74F12602B6F1C4E913FAA37AD3A89613643B6201 \
DD792F5973C6DE52C432CBDAC77ABFA00DDBF2B7 \
61FC681DFB92A079F1685E77973F295594EC4689 \
8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600 \
C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8 \
890C08DB8579162FEE0DF9DB8BEAB4DFCF555EF4 \
C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C \
108F52B48DB57BB0CC439B2997B01419BD92F80A \
; do \
gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" || \
gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" ; \
done \
&& curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION.tar.xz" \
&& curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" \
&& gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc \
&& grep " node-v$NODE_VERSION.tar.xz\$" SHASUMS256.txt | sha256sum -c - \
&& tar -xf "node-v$NODE_VERSION.tar.xz" \
&& cd "node-v$NODE_VERSION" \
&& ./configure \
&& make -j$(getconf _NPROCESSORS_ONLN) V= \
&& make install \
&& apk del .build-deps-full \
&& cd .. \
&& rm -Rf "node-v$NODE_VERSION" \
&& rm "node-v$NODE_VERSION.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt; \
fi \
&& rm -f "node-v$NODE_VERSION-linux-$ARCH-musl.tar.xz" \
&& apk del .build-deps \
# smoke tests
&& node --version \
&& npm --version
ENV YARN_VERSION 1.22.19
RUN apk add --no-cache --virtual .build-deps-yarn curl gnupg tar \
&& for key in \
6A010C5166006599AA17F08146C2130DFD2497F5 \
; do \
gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" || \
gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" ; \
done \
&& curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz" \
&& curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz.asc" \
&& gpg --batch --verify yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \
&& mkdir -p /opt \
&& tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ \
&& ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \
&& ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \
&& rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \
&& apk del .build-deps-yarn \
# smoke test
&& yarn --version
# add `/app/node_modules/.bin` to $PATH
# ENV PATH /app/node_modules/.bin:$PATH
ENV PATH /usr/src/app/node_modules/.bin:$PATH
# install app dependencies
COPY package.json ./
RUN npm install
#COPY package-lock.json ./
#RUN npm install --silent
# RUN npm install react-scripts@3.4.1 -g --silent
# add app
COPY . ./
# start app
CMD ["npm","run", "start"]
# CMD ["yarn", "start"]
+29459
View File
File diff suppressed because it is too large Load Diff
+44
View File
@@ -0,0 +1,44 @@
{
"name": "edumim",
"version": "0.1.0",
"private": true,
"homepage": "https://bestwpware.com/react-templates/edumim/",
"dependencies": {
"@emailjs/browser": "^3.10.0",
"@headlessui/react": "^1.7.7",
"@testing-library/jest-dom": "^5.16.5",
"@testing-library/react": "^13.4.0",
"@testing-library/user-event": "^13.5.0",
"framer-motion": "^7.10.2",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-router-dom": "^6.5.0",
"react-scripts": "5.0.1",
"swiper": "^8.4.5",
"web-vitals": "^2.1.4"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
"eslintConfig": {
"extends": [
"react-app",
"react-app/jest"
]
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

+46
View File
@@ -0,0 +1,46 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<link rel="icon" href="%PUBLIC_URL%/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="theme-color" content="#000000" />
<meta
name="description"
content="Web site created using create-react-app"
/>
<link rel="apple-touch-icon" href="%PUBLIC_URL%/logo192.png" />
<!--
manifest.json provides metadata used when your web app is installed on a
user's mobile device or desktop. See https://developers.google.com/web/fundamentals/web-app-manifest/
-->
<link rel="manifest" href="%PUBLIC_URL%/manifest.json" />
<!--
Notice the use of %PUBLIC_URL% in the tags above.
It will be replaced with the URL of the `public` folder during the build.
Only files inside the `public` folder can be referenced from the HTML.
Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" will
work correctly both with client-side routing and a non-root public URL.
Learn how to configure a non-root public URL by running `npm run build`.
-->
<title>Edumim React App</title>
</head>
<body>
<noscript>You need to enable JavaScript to run this app.</noscript>
<div id="root"></div>
<!--
This HTML file is a template.
If you open it directly in the browser, you will see an empty page.
You can add webfonts, meta tags, or analytics to this file.
The build step will place the bundled scripts into the <body> tag.
To begin the development, run `npm start` or `yarn start`.
To create a production bundle, use `npm run build` or `yarn build`.
-->
<script src="https://code.iconify.design/iconify-icon/1.0.0/iconify-icon.min.js"></script>
</body>
</html>
Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

+25
View File
@@ -0,0 +1,25 @@
{
"short_name": "React App",
"name": "Create React App Sample",
"icons": [
{
"src": "favicon.ico",
"sizes": "64x64 32x32 24x24 16x16",
"type": "image/x-icon"
},
{
"src": "logo192.png",
"type": "image/png",
"sizes": "192x192"
},
{
"src": "logo512.png",
"type": "image/png",
"sizes": "512x512"
}
],
"start_url": ".",
"display": "standalone",
"theme_color": "#000000",
"background_color": "#ffffff"
}
+3
View File
@@ -0,0 +1,3 @@
# https://www.robotstxt.org/robotstxt.html
User-agent: *
Disallow:
+92
View File
@@ -0,0 +1,92 @@
import { BrowserRouter, Navigate, Route, Routes } from "react-router-dom";
import HomeOne from "./Components/Home/HomeOne";
import HomeThree from "./Components/Home/HomeThree";
import HomeTwo from "./Components/Home/HomeTwo";
import ErrorPage from "./Components/Pages/404Page";
import AboutOne from "./Components/Pages/AboutOne";
import AboutTwo from "./Components/Pages/AboutTwo";
import BLogStandard from "./Components/Pages/BLogStandard";
import ContactUs from "./Components/Pages/ContactUs";
import Courses from "./Components/Pages/Courses";
import CourseSideBar from "./Components/Pages/CourseSideBar";
import Event from "./Components/Pages/Event";
import EventSingle from "./Components/Pages/EventSingle";
import InstructorDetails from "./Components/Pages/InstructorDetails";
import InstructorOne from "./Components/Pages/InstructorOne";
import InstructorTwo from "./Components/Pages/InstructorTwo";
import SingleBlog from "./Components/Pages/SingleBlog";
import SingleCourse from "./Components/Pages/SingleCourse";
import Thanks from "./Components/Pages/Thanks";
function App() {
return (
<BrowserRouter>
<div className="font-gilroy font-medium text-gray text-lg leading-[27px]">
<Routes>
<Route
path="/"
element={<Navigate to={"/react-templates/edumim"} />}
/>
<Route path="/react-templates/edumim" element={<HomeOne />} />
<Route
path="/react-templates/edumim/home-two"
element={<HomeTwo />}
/>
<Route
path="/react-templates/edumim/home-three"
element={<HomeThree />}
/>
<Route path="/react-templates/edumim/about" element={<AboutOne />} />
<Route
path="/react-templates/edumim/about-two"
element={<AboutTwo />}
/>
<Route
path="/react-templates/edumim/instructor"
element={<InstructorOne />}
/>
<Route
path="/react-templates/edumim/instructor-two"
element={<InstructorTwo />}
/>
<Route
path="/react-templates/edumim/instructor-details"
element={<InstructorDetails />}
/>
<Route path="/react-templates/edumim/event" element={<Event />} />
<Route
path="/react-templates/edumim/event-single"
element={<EventSingle />}
/>
<Route path="/react-templates/edumim/error" element={<ErrorPage />} />
<Route path="/react-templates/edumim/courses" element={<Courses />} />
<Route
path="/react-templates/edumim/courses-sidebar"
element={<CourseSideBar />}
/>
<Route
path="/react-templates/edumim/single-course"
element={<SingleCourse />}
/>
<Route
path="/react-templates/edumim/blog-standard"
element={<BLogStandard />}
/>
<Route
path="/react-templates/edumim/single-blog"
element={<SingleBlog />}
/>
<Route
path="/react-templates/edumim/contacts"
element={<ContactUs />}
/>
<Route path="/react-templates/edumim/thanks" element={<Thanks />} />
<Route path="*" element={<ErrorPage />} />
</Routes>
</div>
</BrowserRouter>
);
}
export default App;
+74
View File
@@ -0,0 +1,74 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
import lightImg from "../assets/images/svg/light.svg";
import aboutOne from "../assets/images/all-img/about1.png";
import targetImg from "../assets/images/svg/target.svg";
const About = () => {
return (
<div className="about-area section-padding">
<div className="container">
<div className="grid lg:grid-cols-2 grid-cols-1 gap-10">
<div>
<img src={aboutOne} alt="aboutOne" className=" mx-auto" />
</div>
<div>
<div className="mini-title">About Edumim</div>
<h4 className="column-title ">
The Place Where You Can
<span className="shape-bg">Achieve</span>
</h4>
<div>
There are many variations of passages of Lorem Ipsum available,
but the majority have suffered.
</div>
<ul className=" list-item space-y-6 pt-8">
<li className="flex">
<div className="flex-none mr-6">
<div className="h-[72px] w-[72px] rounded-full">
<img
src={lightImg}
alt="lightImg"
className=" w-full h-full object-cover rounded-full block"
/>
</div>
</div>
<div className="flex-1">
<h4 className=" text-xl mb-1">Our Mission</h4>
<div>
There are many variations of passages of the Lorem Ipsum
available.
</div>
</div>
</li>
<li className="flex">
<div className="flex-none mr-6">
<div className="h-[72px] w-[72px] rounded-full">
<img
src={targetImg}
alt=""
className=" w-full h-full object-cover rounded-full block"
/>
</div>
</div>
<div className="flex-1">
<h4 className=" text-xl mb-1">Our Vision</h4>
<div>
There are many variations of passages of the Lorem Ipsum
available.
</div>
</div>
</li>
</ul>
<div className="pt-8">
<a href="#" className=" btn btn-primary">
Read More Us
</a>
</div>
</div>
</div>
</div>
</div>
);
};
export default About;
+22
View File
@@ -0,0 +1,22 @@
import React from "react";
const AboutBanner = ({text}) => {
return (
<div class="breadcrumbs section-padding bg-[url('../images/all-img/bred.png')] bg-cover bg-center bg-no-repeat">
<div class="container text-center">
<h2>About Us</h2>
<nav>
<ol class="flex items-center justify-center space-x-3">
<li class="breadcrumb-item">
<a href="index.html">Pages </a>
</li>
<li class="breadcrumb-item">-</li>
<li class="text-primary">{text}</li>
</ol>
</nav>
</div>
</div>
);
};
export default AboutBanner;
+53
View File
@@ -0,0 +1,53 @@
import React from "react";
import mailIcon from "../assets/images/icon/mail.svg";
import ManOne from "../assets/images/banner/man1.png";
const Banner = () => {
return (
<section
className={`xl:min-h-screen bg-[url('../images/banner/1.png')] bg-cover bg-no-repeat bg-center overflow-hidden`}
>
<div className="container relative">
<div className="max-w-[570px] xl:pt-[297px] md:pt-20 md:pb-20 pt-28 pb-14 xl:pb-40 space-y-8">
<h1>
Classical{" "}
<span className=" text-secondary inline-block bg-[url('../images/banner/shape.svg')] bg-no-repeat bg-bottom">
Education
</span>{" "}
For The Future
</h1>
<div className=" plain-text text-gray leading-[30px]">
It is long established fact that reader distracted by the readable
content.
</div>
<div className="bg-white md:flex rounded-md shadow-e1 items-center py-[10px] relative lg:pr-[10px] lg:pl-[38px] pl-4 pr-4">
<div className="flex-1 flex items-center lg:mb-0 mb-2">
<div className="flex-none">
<span className=" ">
<img src={mailIcon} alt="mainIcon" />
</span>
</div>
<div className="flex-1">
<input
type="text"
placeholder="Enter your mail"
className="border-none focus:ring-0"
/>
</div>
</div>
<div className="flex-none">
<button className="btn btn-primary w-full lg:w-auto">
Get Started Now
</button>
</div>
</div>
</div>
<div className="imge-box absolute xl:right-[-260px] hidden xl:block bottom-0 ">
<img src={ManOne} alt="manOne" />
</div>
</div>
</section>
);
};
export default Banner;
+637
View File
@@ -0,0 +1,637 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
import {
bs1,
bs2,
bs3,
user3,
comment,
q,
calender,
clockIcon,
fbIcon,
pnIcon,
twIcon,
insIcon,
rc3,
rc1,
insIcon1,
insIcon3,
insIcon2,
search,
rc2,
insIcon4,
insIcon5,
insIcon6,
} from "../constant/images";
import ContactForm from "./ContactForm";
const BlogPost = () => {
return (
<div className="nav-tab-wrapper tabs section-padding">
<div className="container">
<div className="grid grid-cols-12 gap-[30px]">
<div className="lg:col-span-8 col-span-12">
<div className="bg-[#F8F8F8] rounded-md">
<img src={bs1} alt="" className=" rounded-t-md mb-10" />
<div className="px-10 pb-10">
<div className="flex flex-wrap xl:space-x-10 space-x-5 mt-6 mb-6">
<a className=" flex items-center space-x-2" href="#">
<img src={user3} alt="" />
<span>Edumim</span>
</a>
<a className=" flex items-center space-x-2" href="#">
<img src={calender} alt="" />
<span>3 21 Feb, 22</span>
</a>
<a className=" flex items-center space-x-2" href="#">
<img src={clockIcon} alt="" />
<span>3 Min Read</span>
</a>
<a className=" flex items-center space-x-2" href="#">
<img src={comment} alt="" />
<span>02 Comments</span>
</a>
</div>
<h3>
Learn At Your Own Pace, with Lifetime Access on Mobile &
Desktop
</h3>
<p className="mt-6">
There are many variations of passages of Lorem Ipsum
available, but the majority have suffered alteration in some
form, by injected humour, or randomised words which dont look
even slightly believable. As students across the globe
continue to see their learning plans significantly.
</p>
<blockquote className=" bg-secondary p-8 rounded-md bg-[url('../images/all-img/bb.png')] bg-cover bg-no-repeat bg-center my-8 text-white">
<img src={q} alt="" />
<div className=" text-xl font-semibold my-6">
Education is one of the most powerful aspects of life.
Education and learning allow us to make sense of the world
around us, the world inside of us, and where we fit within
the world.
</div>
<div className=" flex items-center space-x-3">
<span className=" inline-flex h-[3px] w-12 bg-white"></span>
<span className=" text-xl font-semibold">
Rosalina D. Jackson
</span>
</div>
</blockquote>
<p>
There are many variations of passages of Lorem Ipsum
available, but the majority have suffered alteration in some
form, by injected humour, or randomised words which dont look
even slightly believable. As students across the globe
continue to see their learning plans significantly.
</p>
<div className="grid md:grid-cols-2 grid-cols-1 gap-[30px] my-8">
<img src={bs2} alt="" />
<img src={bs3} alt="" />
</div>
<h4 className="text-2xl mb-4">
Education Is About Academic Excellence And Cultural Diversity
Learning Community
</h4>
<p>
There are many variations of passages of Lorem Ipsum
available, but the majority have suffered alteration in some
form, by injected humour, or randomised words which dont look
even slightly believable.
</p>
<ul className="list-disc marker:text-secondary space-y-4 mt-6">
<li className="">
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</li>
<li className="">
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</li>
<li className="">
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</li>
</ul>
<div className="grid xl:grid-cols-2 grid-cols-1 gap-5 md:mt-14 mt-8 ">
<ul className="flex items-center space-x-3 ">
<li className=" text-black font-semibold">Tags:</li>
<li>
<a
href="#"
className=" px-3 py-1 bg-white rounded hover:text-primary"
>
Business
</a>
</li>
<li>
<a
href="#"
className=" px-3 py-1 bg-white rounded hover:text-primary"
>
Education
</a>
</li>
<li>
<a
href="#"
className=" px-3 py-1 bg-white rounded hover:text-primary"
>
Design
</a>
</li>
</ul>
<ul className="flex space-x-3 xl:justify-end items-center ">
<li className=" text-black font-semibold">Share On:</li>
{[fbIcon, pnIcon, twIcon, insIcon].map((item, indx) => (
<li key={indx}>
<a href="#" className="flex h-8 w-8">
<img src={item} alt="" />
</a>
</li>
))}
</ul>
</div>
<div className="grid xl:grid-cols-2 grid-cols-1 gap-[30px] md:mt-14 mt-8">
<a
className=" flex space-x-4 shadow-box7 rounded p-5 bg-white"
href="#"
>
<div className="flex-none ">
<div className="h-20 w-20 rounded">
<img
src={rc1}
alt=""
className=" w-full h-full object-cover rounded"
/>
</div>
</div>
<div className="flex-1 ">
<span className=" text-primary text-base mb-1">
Prev Post
</span>
<div className="mb-1 font-semibold text-black">
How Technology Can Help You Stay Healthy
</div>
</div>
</a>
<a
className=" flex flex-row-reverse shadow-box7 bg-white rounded p-5"
href="#"
>
<div className="flex-none ">
<div className="h-20 w-20 rounded ml-4">
<img
src={rc3}
alt=""
className=" w-full h-full object-cover rounded"
/>
</div>
</div>
<div className="flex-1 text-right ">
<span className=" text-primary text-base mb-1">
Next Post
</span>
<div className="mb-1 font-semibold text-black">
How Technology Can Help You Stay Healthy
</div>
</div>
</a>
</div>
</div>
</div>
<div className=" mt-14">
<h3 className=" mb-6">3 Comments</h3>
<ul className="comments space-y-4">
<li className="block border-b border-[#ECECEC] pb-6 mt-6 last:border-0 last:pb-0">
<div className="flex">
<div className="flex-none">
<div className="h-[72px] w-[72px] rounded-full mr-6">
<img
src={insIcon1}
alt=""
className="w-full block h-full object-contain rounded-full"
/>
</div>
</div>
<div className="flex-1">
<div className="flex flex-wrap justify-between mb-2">
<div>
<span className="text-xl font-semibold text-black block mb-1">
Ferira Watson
</span>
<span className=" block">Oct 09, 2021</span>
</div>
<a
href="#"
className=" inline-flex px-3 py-1 rounded text-secondary bg-[#E3F9F6] hover:text-white hover:bg-secondary h-[35px]
items-center space-x-2 leading-[1]"
>
<span className=" text-xl leading-[1] top-[3px] relative">
<iconify-icon
icon="charm:forward"
rotate="180deg"
></iconify-icon>
</span>
<span className=" leading-[1]">Reply</span>
</a>
</div>
<p>
There are many variations of passages of Lorem Ipsum
available, but the majority have suffered alteration in
some form
</p>
</div>
</div>
<ul className="comments mt-6 space-y-4 ml-14 border-t border-[#ECECEC]">
<li className="block border-b border-[#ECECEC] pb-6 mt-6 last:border-0 last:pb-0">
<div className="flex">
<div className="flex-none">
<div className="h-[72px] w-[72px] rounded-full mr-6">
<img
src={insIcon3}
alt=""
className="w-full block h-full object-contain rounded-full"
/>
</div>
</div>
<div className="flex-1">
<div className="flex flex-wrap justify-between mb-2">
<div>
<span className="text-xl font-semibold text-black block mb-1">
Ferira Watson
</span>
<span className=" block">Oct 09, 2021</span>
</div>
<a
href="#"
className=" inline-flex px-3 py-1 rounded text-secondary bg-[#E3F9F6] hover:text-white hover:bg-secondary h-[35px]
items-center space-x-2 leading-[1]"
>
<span className=" text-xl leading-[1] top-[3px] relative">
<iconify-icon
icon="charm:forward"
rotate="180deg"
></iconify-icon>
</span>
<span className=" leading-[1]">Reply</span>
</a>
</div>
<p>
There are many variations of passages of Lorem Ipsum
available, but the majority have suffered alteration
in some form
</p>
</div>
</div>
</li>
</ul>
</li>
<li className="block">
<div className="flex">
<div className="flex-none">
<div className="h-[72px] w-[72px] rounded-full mr-6">
<img
src={insIcon2}
alt=""
className="w-full block h-full object-contain rounded-full"
/>
</div>
</div>
<div className="flex-1">
<div className="flex flex-wrap justify-between mb-2">
<div>
<span className="text-xl font-semibold text-black block mb-1">
Ferira Watson
</span>
<span className=" block">Oct 09, 2021</span>
</div>
<a
href="#"
className=" inline-flex px-3 py-1 rounded text-secondary bg-[#E3F9F6] hover:text-white hover:bg-secondary h-[35px]
items-center space-x-2 leading-[1]"
>
<span className=" text-xl leading-[1] top-[3px] relative">
<iconify-icon
icon="charm:forward"
rotate="180deg"
></iconify-icon>
</span>
<span className=" leading-[1]">Reply</span>
</a>
</div>
<p>
There are many variations of passages of Lorem Ipsum
available, but the majority have suffered alteration in
some form
</p>
</div>
</div>
</li>
</ul>
</div>
<div className=" mt-14">
<h3 className=" mb-4">Leave A Reply</h3>
<div>
Your email address will not be published. Requires fields are
marked*
</div>
<ContactForm />
</div>
</div>
<div className="lg:col-span-4 col-span-12">
<div className="sidebarWrapper space-y-[30px]">
<div className="wdiget widget_search">
<div className="bg-[#F8F8F8] flex rounded-md shadow-e1 items-center py-[4px] pl-3 relative">
<div className="flex-1">
<input
type="text"
placeholder="Search keyword..."
className="border-none focus:ring-0 bg-transparent"
/>
</div>
<div className="flex-none">
<button className="btn btn-primary">
<img src={search} alt="" />
</button>
</div>
</div>
</div>
<div className="wdiget widget_catagory">
<h4 className="widget-title">Categories</h4>
<ul className=" list-item space-y-4">
<li className=" block">
<a
href="#"
className=" flex justify-between bg-[#F8F8F8] py-[17px] px-5 rounded hover:bg-primary hover:text-white transition-all
duration-150"
>
<span>Development (23)</span>
<span className=" text-2xl">
<iconify-icon icon="heroicons:chevron-right-20-solid"></iconify-icon>
</span>
</a>
</li>
<li className=" block">
<a
href="#"
className=" flex justify-between bg-[#F8F8F8] py-[17px] px-5 rounded hover:bg-primary hover:text-white transition-all
duration-150"
>
<span>Art &amp; Design (45)</span>
<span className=" text-2xl">
<iconify-icon icon="heroicons:chevron-right-20-solid"></iconify-icon>
</span>
</a>
</li>
<li className=" block">
<a
href="#"
className=" flex justify-between bg-[#F8F8F8] py-[17px] px-5 rounded hover:bg-primary hover:text-white transition-all
duration-150"
>
<span>Data Science (14)</span>
<span className=" text-2xl">
<iconify-icon icon="heroicons:chevron-right-20-solid"></iconify-icon>
</span>
</a>
</li>
<li className=" block">
<a
href="#"
className=" flex justify-between bg-[#F8F8F8] py-[17px] px-5 rounded hover:bg-primary hover:text-white transition-all
duration-150"
>
<span>Data Science (14)</span>
<span className=" text-2xl">
<iconify-icon icon="heroicons:chevron-right-20-solid"></iconify-icon>
</span>
</a>
</li>
<li className=" block">
<a
href="#"
className=" flex justify-between bg-[#F8F8F8] py-[17px] px-5 rounded hover:bg-primary hover:text-white transition-all
duration-150"
>
<span>Technology (28)</span>
<span className=" text-2xl">
<iconify-icon icon="heroicons:chevron-right-20-solid"></iconify-icon>
</span>
</a>
</li>
<li className=" block">
<a
href="#"
className=" flex justify-between bg-[#F8F8F8] py-[17px] px-5 rounded hover:bg-primary hover:text-white transition-all
duration-150"
>
<span>It Management (34)</span>
<span className=" text-2xl">
<iconify-icon icon="heroicons:chevron-right-20-solid"></iconify-icon>
</span>
</a>
</li>
</ul>
</div>
<div className="wdiget widget-recent-post">
<h4 className=" widget-title">Related Courses</h4>
<ul className="list">
<li className=" flex space-x-4 border-[#ECECEC] pb-6 mb-6 last:pb-0 last:mb-0 last:border-0 border-b">
<div className="flex-none ">
<div className="h-20 w-20 rounded">
<img
src={rc1}
alt=""
className=" w-full h-full object-cover rounded"
/>
</div>
</div>
<div className="flex-1 ">
<div className="mb-1 font-semibold text-black">
How to Manage Ads For Clients The Right Way
</div>
<a className=" text-secondary font-semibold" href="#">
Read More
</a>
</div>
</li>
<li className=" flex space-x-4 border-[#ECECEC] pb-6 mb-6 last:pb-0 last:mb-0 last:border-0 border-b">
<div className="flex-none ">
<div className="h-20 w-20 rounded">
<img
src={rc2}
alt=""
className=" w-full h-full object-cover rounded"
/>
</div>
</div>
<div className="flex-1 ">
<div className="mb-1 font-semibold text-black">
How to Manage Ads For Clients The Right Way
</div>
<a className=" text-secondary font-semibold" href="#">
Read More
</a>
</div>
</li>
<li className=" flex space-x-4 border-[#ECECEC] pb-6 mb-6 last:pb-0 last:mb-0 last:border-0 border-b">
<div className="flex-none ">
<div className="h-20 w-20 rounded">
<img
src={rc3}
alt=""
className=" w-full h-full object-cover rounded"
/>
</div>
</div>
<div className="flex-1 ">
<div className="mb-1 font-semibold text-black">
How to Manage Ads For Clients The Right Way
</div>
<a className=" text-secondary font-semibold" href="#">
Read More
</a>
</div>
</li>
</ul>
</div>
<div className="wdiget">
<h4 className="widget-title">Popular Tags</h4>
<ul className="flex flex-wrap">
<li className="mr-2 mb-2">
<a
href="#"
className="bg-[#F8F8F8] px-3 py-1 rounded text-base transition-all duration-150 hover:bg-primary hover:text-white"
>
Business
</a>
</li>
<li className="mr-2 mb-2">
<a
href="#"
className="bg-[#F8F8F8] px-3 py-1 rounded text-base transition-all duration-150 hover:bg-primary hover:text-white"
>
Education
</a>
</li>
<li className="mr-2 mb-2">
<a
href="#"
className="bg-[#F8F8F8] px-3 py-1 rounded text-base transition-all duration-150 hover:bg-primary hover:text-white"
>
Design
</a>
</li>
<li className="mr-2 mb-2">
<a
href="#"
className="bg-[#F8F8F8] px-3 py-1 rounded text-base transition-all duration-150 hover:bg-primary hover:text-white"
>
Students
</a>
</li>
<li className="mr-2 mb-2">
<a
href="#"
className="bg-[#F8F8F8] px-3 py-1 rounded text-base transition-all duration-150 hover:bg-primary hover:text-white"
>
Teachers
</a>
</li>
<li className="mr-2 mb-2">
<a
href="#"
className="bg-[#F8F8F8] px-3 py-1 rounded text-base transition-all duration-150 hover:bg-primary hover:text-white"
>
classNameroom
</a>
</li>
<li className="mr-2 mb-2">
<a
href="#"
className="bg-[#F8F8F8] px-3 py-1 rounded text-base transition-all duration-150 hover:bg-primary hover:text-white"
>
Online
</a>
</li>
<li className="mr-2 mb-2">
<a
href="#"
className="bg-[#F8F8F8] px-3 py-1 rounded text-base transition-all duration-150 hover:bg-primary hover:text-white"
>
e-Learning
</a>
</li>
<li className="mr-2 mb-2">
<a
href="#"
className="bg-[#F8F8F8] px-3 py-1 rounded text-base transition-all duration-150 hover:bg-primary hover:text-
white"
>
Book
</a>
</li>
</ul>
</div>
<div className="wdiget">
<h4 className="widget-title">Instagram Feed</h4>
<div className="grid grid-cols-3 gap-4">
{[
insIcon1,
insIcon2,
insIcon3,
insIcon4,
insIcon5,
insIcon6,
].map((item, index) => (
<div key={index}>
<a
href="#"
className="group relative block h-20 w-full rounded"
>
<img
src={item}
alt=""
className="block h-full w-full rounded object-cover"
/>
<div
className="absolute left-0 top-0 flex h-full w-full flex-col items-center justify-center rounded bg-black
bg-opacity-40
text-3xl text-white opacity-0 transition-all duration-150 group-hover:opacity-100"
>
<span className="scale-0 transition-all duration-150 group-hover:scale-100">
<iconify-icon icon="akar-icons:instagram-fill"></iconify-icon>
</span>
</div>
</a>
</div>
))}
</div>
</div>
</div>
</div>
</div>
</div>
</div>
);
};
export default BlogPost;
+81
View File
@@ -0,0 +1,81 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
import { Link } from "react-router-dom";
import admin from "../assets/images/svg/admin.svg";
import calender from "../assets/images/svg/calender.svg";
import { blogsData } from "../constant/dummyData";
const Blogs = () => {
return (
<div className=" section-padding bg-[url('../images/all-img/section-bg-5.png')] bg-cover bg-no-repeat bg-center">
<div className="container">
<div className="lg:flex justify-between items-center ">
<div className="mb-3">
<div className="mini-title">Team Member</div>
<div className="column-title ">
Our Latest <span className="shape-bg">Blogs</span>
</div>
</div>
<div className="mb-3">
<a href="#" className=" btn btn-primary">
Read All Blogs
</a>
</div>
</div>
<div className="grid lg:grid-cols-3 md:grid-cols-2 grid-cols-1 gap-[30px] pt-7">
{blogsData.map((blog, index) => (
<div
className=" bg-white shadow-box5 rounded-[8px] transition duration-100 hover:shadow-box3"
key={index}
>
<div className="course-thumb h-[260px] rounded-t-[8px] relative">
<img
src={blog.img}
alt=""
className=" w-full h-full object-cover rounded-t-[8px]"
/>
<span className="bg-secondary py-1 px-3 text-lg font-semibold rounded text-white absolute left-6 top-6">
{blog.type}
</span>
</div>
<div className="course-content p-8">
<div className="flex lg:space-x-10 space-x-5 mb-5">
<Link
to={"/react-templates/edumim/single-blog"}
className=" flex items-center space-x-2"
>
<img src={admin} alt="" />
<span>{blog.position}</span>
</Link>
<Link
to={"/react-templates/edumim/single-blog"}
className=" flex items-center space-x-2"
>
<img src={calender} alt="" />
<span>{blog.date}</span>
</Link>
</div>
<h4 className=" text-xl mb-5 font-bold">
<Link
to={"/react-templates/edumim/single-blog"}
className=" hover:text-primary transition duration-150"
>
{blog.title}
</Link>
</h4>
<Link
to={"/react-templates/edumim/single-blog"}
className=" text-black font-semibold hover:underline transition duration-150"
>
Read More
</Link>
</div>
</div>
))}
</div>
</div>
</div>
);
};
export default Blogs;
+36
View File
@@ -0,0 +1,36 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
import brand1 from "../assets/images/all-img/brands/1.svg";
import brand2 from "../assets/images/all-img/brands/2.svg";
import brand3 from "../assets/images/all-img/brands/3.svg";
import brand4 from "../assets/images/all-img/brands/4.svg";
import brand5 from "../assets/images/all-img/brands/5.svg";
const Brands = ({ section_padding_bottom, section_padding_top }) => {
return (
<div
className={`brands-area ${section_padding_bottom} ${section_padding_top}`}
>
<div className="container">
<div className="text-center text-black text-2xl font-medium mb-[50px]">
<span className=" shape-bg mini">Trusted</span> By 1k+ Company Arround
The World!
</div>
<ul className="flex flex-wrap items-center lg:justify-between justify-center ">
{[brand1, brand2, brand3, brand4, brand5].map((item, index) => (
<li
className=" mb-6 last:mb-0 mr-6 last:mr-0 transition duration-150 grayscale-[80] hover:grayscale-0 "
key={index}
>
<a href="#" className=" block">
<img src={item} alt="brandImg" />
</a>
</li>
))}
</ul>
</div>
</div>
);
};
export default Brands;
+94
View File
@@ -0,0 +1,94 @@
import React, { useState } from "react";
import emailjs from "@emailjs/browser";
import { useNavigate } from "react-router-dom";
const ContactForm = () => {
const [name, setName] = useState("");
const [email, setEmail] = useState();
const [webAdress, setWebAdress] = useState();
const [message, setMessage] = useState();
const [loading, setLoading] = useState(false);
const naviget = useNavigate();
const handleSubmit = (e) => {
e.preventDefault();
setLoading(true);
const templateParams = {
name: name,
email: email,
webAdress: webAdress,
message: message,
};
console.log(templateParams);
emailjs
.send(
"service_ns6jxe8",
"template_oxnjbzr",
templateParams,
"VrrYupDuebtgZisdc"
)
.then(
(response) => {
console.log("SUCCESS!", response.status, response.text);
setEmail("");
setName("");
setMessage("");
naviget("/react-templates/edumim/thanks");
setLoading(false);
},
(err) => {
setLoading(false);
console.log("FAILED...", err);
}
);
};
return (
<form
onSubmit={handleSubmit}
className=" md:grid-cols-2 grid grid-cols-1 gap-[30px] mt-6 "
>
<div>
<input
type="text"
className=" from-control"
placeholder="Name*"
value={name}
onChange={(e) => setName(e.target.value)}
/>
</div>
<div>
<input
type="email"
className=" from-control"
placeholder="Email*"
value={email}
onChange={(e) => setEmail(e.target.value)}
/>
</div>
<div className="md:col-span-2 col-span-1">
<input
type="url"
className=" from-control"
placeholder="Website Address"
value={webAdress}
onChange={(e) => setWebAdress(e.target.value)}
/>
</div>
<div className="md:col-span-2 col-span-1">
<textarea
className=" from-control"
placeholder="Your Message*"
rows="5"
value={message}
onChange={(e) => setMessage(e.target.value)}
></textarea>
</div>
<button class="btn btn-primary mt-[10px]" type="submit" name="submit">
{loading ? 'sending..' : 'Send Message'}
</button>
</form>
);
};
export default ContactForm;
+156
View File
@@ -0,0 +1,156 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
import { courseData } from "../constant/dummyData";
import Course from "./Course";
import {
fbIcon,
pnIcon,
twIcon,
insIcon,
singleIns,
counter1,
counter2,
counter3,
} from "../constant/images";
const CoralinaCloud = () => {
return (
<div className="section-padding bg-[url('../images/all-img/insbg.png')] bg-contain bg-no-repeat">
<div className="container">
<div className="grid grid-cols-12 xl:gap-0 gap-[30px]">
<div className="lg:col-span-4 col-span-12 ">
<div className="bg-white shadow-box7 rounded-md max-w-[350px] lg:sticky lg:top-10">
<div className="h-[400px] mb-8">
<img
src={singleIns}
alt=""
className="w-full h-full block object-cover rounded-t-md"
/>
</div>
<div className="px-8 pb-8">
<h5 className=" text-2xl font-bold text-black mb-4">
Coralina Cloud
</h5>
<div className="mb-8">
Professor & Chair of Department of Computer Science at
University the where been since 1994. vulput for the
pellentesque commodo.
</div>
<ul className=" space-y-[19px]">
<li className=" flex items-center space-x-3">
<div className="flex-none">
<span className="w-8 h-8 rounded bg-secondary text-white flex flex-col items-center justify-center text-lg">
<iconify-icon icon="heroicons:envelope"></iconify-icon>
</span>
</div>
<span className=" flex-1">info@designpixls.com</span>
</li>
<li className=" flex items-center space-x-3">
<div className="flex-none">
<span className="w-8 h-8 rounded bg-secondary text-white flex flex-col items-center justify-center text-lg">
<iconify-icon icon="heroicons:phone"></iconify-icon>
</span>
</div>
<span className=" flex-1">8939 2390 3879 29</span>
</li>
<li className=" flex items-center space-x-3">
<div className="flex-none">
<span className="w-8 h-8 rounded bg-secondary text-white flex flex-col items-center justify-center text-lg">
<iconify-icon icon="heroicons:map-pin"></iconify-icon>
</span>
</div>
<span className=" flex-1">6/2, Stavello Hall, Sydney</span>
</li>
</ul>
<div className=" text-xl text-black mt-8 mb-4">
Follow Me On:
</div>
<ul className="flex space-x-4 ">
{[fbIcon, pnIcon, twIcon, insIcon].map((item, indx) => (
<li key={indx}>
<a href="#" className="flex h-10 w-10">
<img src={item} alt="" />
</a>
</li>
))}
</ul>
</div>
</div>
</div>
<div className="lg:col-span-8 col-span-12">
<div className="mb-10">
<h2>Coralina Cloud</h2>
<span className=" inline-block text-primary">UI/UX Designer</span>
</div>
<div>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin
vulputate pellentesque commodo. Lorem ipsum dolor sit amet,
consectetur adipiscing elit.
<br /> <br /> Donec faucibus imperdiet libero, at lacinia metus.
Quisque finibus ante non arcu aliquet, nec vestibulum dolor
condimentum. Nulla facilisi. Vestibulum porttitor vestibulum est
eu dignissim. Quisque blandit elementum convallis. Ut et mi
hendrerit, posuere purus ac, facilisis nibh.
</div>
<div className=" grid xl:grid-cols-3 sm:grid-cols-2 grid-cols-1 gap-[30px] mt-24">
<div className="bg-white shadow-box7 text-center pt-[64px] pb-8 px-[50px] rounded-[8px] relative my-4">
<img
src={counter1}
alt=""
className=" absolute left-1/2 -translate-x-1/2 -top-10"
/>
<h4 className=" text-[44px] leading-[66px] text-black font-bold mb-1 ">
<span className="counter">82</span>
k+
</h4>
<p>Enrolled Students</p>
</div>
<div className="bg-white shadow-box7 text-center pt-[64px] pb-8 px-[50px] rounded-[8px] relative my-4">
<img
src={counter2}
alt=""
className=" absolute left-1/2 -translate-x-1/2 -top-10"
/>
<h4 className=" text-[44px] leading-[66px] text-black font-bold mb-1 ">
<span className="counter">460</span>+
</h4>
<p>Academic Programs</p>
</div>
<div className="bg-white shadow-box7 text-center pt-[64px] pb-8 px-[50px] rounded-[8px] relative my-4">
<img
src={counter3}
alt=""
className=" absolute left-1/2 -translate-x-1/2 -top-10"
/>
<h4 className=" text-[44px] leading-[66px] text-black font-bold mb-1 ">
<span className="counter">20</span>+
</h4>
<p>Certified Students</p>
</div>
</div>
<div className="mt-20 mb-14">
<div className="mini-title">Courses By Coralina</div>
<div className="column-title ">
Courses By <span className="shape-bg">Coralina</span>
</div>
</div>
<div className=" grid xl:grid-cols-2 lg:grid-cols-1 md:grid-cols-2 grid-cols-1 gap-[30px]">
{courseData.map((course, index) => (
<Course course={course} key={index} index={index} />
))}
</div>
<div className="text-center lg:pt-14 pt-8">
<a href="#" className=" btn btn-primary">
View All Courses
</a>
</div>
</div>
</div>
</div>
</div>
);
};
export default CoralinaCloud;
+46
View File
@@ -0,0 +1,46 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
import { clock, file, star } from "../constant/images";
const course = ({ course, index }) => {
return (
<a
className=" bg-white shadow-box2 rounded-[8px] transition duration-100 hover:shadow-sm"
href="#"
key={Math.random() * 1000 * index}
>
<div className="course-thumb h-[248px] rounded-t-[8px] relative">
<img
src={course.img}
alt="images"
className=" w-full h-full object-cover rounded-t-[8px]"
/>
<span className="bg-secondary py-1 px-3 text-lg font-semibold rounded text-white absolute left-6 top-6">
{course.post}
</span>
</div>
<div className="course-content p-8">
<div className="text-secondary font-bold text-2xl mb-3">
{course.price}
</div>
<h4 className=" text-xl mb-3 font-bold">{course.title}</h4>
<div className="flex justify-between space-x-3">
<span className=" flex items-center space-x-2">
<img src={file} alt="" />
<span>{course.lesson}</span>
</span>
<span className=" flex items-center space-x-2">
<img src={clock} alt="" />
<span>{course.time}</span>
</span>
<span className=" flex items-center space-x-2">
<img src={star} alt="" />
<span>{course.ratings}</span>
</span>
</div>
</div>
</a>
);
};
export default course;
File diff suppressed because it is too large Load Diff
+30
View File
@@ -0,0 +1,30 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
import { courseData } from "../constant/dummyData";
import Course from "./Course";
const Courses = () => {
return (
<div className=" section-padding">
<div className="container">
<div className="text-center">
<div className="mini-title">Popular Courses</div>
<div className="column-title ">
Choose Our Top <span className="shape-bg">Courses</span>
</div>
</div>
<div className="grid lg:grid-cols-3 md:grid-cols-2 grid-cols-1 gap-[30px] pt-10">
{courseData.map((course, index) => (
<Course course={course} key={index} index={index} />
))}
</div>
<div className="text-center lg:pt-16 pt-10">
<a href="#" className=" btn btn-primary">
View All Courses
</a>
</div>
</div>
</div>
);
};
export default Courses;
+229
View File
@@ -0,0 +1,229 @@
/* eslint-disable react-hooks/exhaustive-deps */
/* eslint-disable jsx-a11y/anchor-is-valid */
import React, { useEffect } from "react";
import {
fbIcon,
pnIcon,
twIcon,
insIcon,
mainEvent,
circleClock,
rc1,
rc2,
} from "../constant/images";
const EventDetails = () => {
useEffect(() => {
if (document.getElementById("timer")) {
var countDownDate = new Date("Jan 5, 2024 15:37:25").getTime(); // Update the count down every 1 second
var x = setInterval(function () {
// Get today's date and time
var now = new Date().getTime(); // Find the distance between now and the count down date
var distance = countDownDate - now; // Time calculations for days, hours, minutes and seconds
var days = Math.floor(distance / (1000 * 60 * 60 * 24));
var hours = Math.floor(
(distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)
);
var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
var seconds = Math.floor((distance % (1000 * 60)) / 1000); // Display the result in the element with id="demo"
document.getElementById("timer").innerHTML =
"<div class='text-[44px] font-bold'>" +
days +
"<div class=' text-lg font-medium mt-2 capitalize'>days</div></div>" +
"<div class='text-[44px] font-bold'>" +
hours +
"<div class='text-lg font-medium mt-2 capitalize'>hours</div></div>" +
"<div class='text-[44px] font-bold'>" +
minutes +
"<div class='text-lg font-medium mt-2 capitalize'>minutes</div></div>" +
"<div class='text-[44px] font-bold'>" +
seconds +
"<div class='text-lg font-medium mt-2 capitalize'>seconds</div></div>"; // If the count down is finished, write some text
if (distance < 0) {
clearInterval(x);
document.getElementById("timer").innerHTML = "EXPIRED";
}
}, 1000);
}
}, []);
return (
<div className="nav-tab-wrapper tabs section-padding">
<div className="container">
<img src={mainEvent} alt="" className=" lg:mb-10 mb-6 block w-full" />
<div className="grid grid-cols-12 gap-[30px]">
<div className="lg:col-span-8 col-span-12">
<h3>Painting Contest 2022</h3>
<div className="lg:my-6 my-4">
There are many variations of passages of Lorem Ipsum available,
but the majority have suffered alteration in some form, by
injected humour, or randomised words which don't look even
slightly believable. If you are going to use a passage of Lorem
Ipsum, you need to be sure there isn't anything embarrassing
hidden in the middle of text. All the Lorem Ipsum generators on
the Internet tend to repeat predefined chunks as necessary, making
this the first true generator on the Internet. It uses a
dictionary of over 200 Latin words, combined with a handful of
model sentence structures, to generate Lorem Ipsum which looks
reasonable. The generated Lorem Ipsum is therefore always free
from repetition, injected humour.
</div>
<div className="bg-secondary text-white p-10 rounded-md">
<div
id="timer"
className="md:flex space-y-4 md:space-y-0 justify-between text-center "
>
{/* <div className="text-[44px] font-bold">
{days}
<div className="text-lg font-medium mt-2 capitalize">
days
</div>
</div>
<div className="text-[44px] font-bold">
{hours}
<div className="text-lg font-medium mt-2 capitalize">
hours
</div>
</div>
<div className="text-[44px] font-bold">
{minutes}
<div className="text-lg font-medium mt-2 capitalize">
minutes
</div>
</div>
<div className="text-[44px] font-bold">
{seconds}
<div className="text-lg font-medium mt-2 capitalize">
seconds
</div>
</div> */}
</div>
</div>
<div className=" py-6">
Among the major reasons why Python is slow, it really boils down
to 2 Python is interpreted as opposed to compiled, ultimately
leading to slower execution times; and the fact that it is
dynamically typed. Take, for example, TensorFlow, a Machine
Learning library available in Python. These libraries were
actually written in C++ and made available in Python, sort of
forming a Python implementation. The same goes for Numpy and, to
an extent, even Caer.
</div>
<div className="flex justify-between border-y border-[#ECECEC] py-4 md:mt-12 mt-10">
<div className=" text-black font-semibold">Previous</div>
<ul className="flex space-x-3 lg:justify-end items-center ">
{[fbIcon, pnIcon, twIcon, insIcon].map((item, indx) => (
<li key={indx}>
<a href="#" className="flex h-8 w-8">
<img src={item} alt="" />
</a>
</li>
))}
</ul>
</div>
</div>
<div className="lg:col-span-4 col-span-12 relative lg:-mt-20">
<div className="sidebarWrapper max-w-[90%] mx-auto space-y-[30px]">
<div className="wdiget custom-text space-y-5 ">
<h4 className=" widget-title">Event Details</h4>
<ul className="list space-y-6 ">
<li className=" flex space-x-3 ">
<div className="flex-1 space-x-3 flex">
<img src={circleClock} alt="" />
<div>4:00 pm - 6:00 pm</div>
</div>
</li>
<li className=" flex space-x-3 ">
<div className="flex-1 space-x-3 flex">
<img src="assets/images/svg/circle-c.svg" alt="" />
<div>03 March, 2022</div>
</div>
</li>
<li className=" flex space-x-3 ">
<div className="flex-1 space-x-3 flex">
<img src={circleClock} alt="" />
<div>12/A, NewYork Sydney City</div>
</div>
</li>
<li className=" flex space-x-3 ">
<div className="flex-1 space-x-3 flex">
<img src={circleClock} alt="" />
<div>yourmail@gmail.com</div>
</div>
</li>
<li className=" flex space-x-3 ">
<div className="flex-1 space-x-3 flex">
<img src={circleClock} alt="" />
<div>+88018 2829 98267</div>
</div>
</li>
</ul>
<a href="#" className=" btn btn-primary btn-md text-lg">
Book A Seat
</a>
</div>
<div className="wdiget">
<h4 className=" widget-title">Special Guests</h4>
<ul className="list space-y-6">
<li className=" flex space-x-4 border-[#ECECEC] ">
<div className="flex-none ">
<div className="h-20 w-20 rounded-full">
<img
src={rc1}
alt=""
className=" w-full h-full object-cover rounded-full"
/>
</div>
</div>
<div className="flex-1 ">
<div className="mb-1 font-bold text-black capitalize">
Sofia d. Flora
</div>
<span className=" text-primary font-semibold">
UI/UX Designer
</span>
</div>
</li>
<li className=" flex space-x-4 border-[#ECECEC] ">
<div className="flex-none ">
<div className="h-20 w-20 rounded-full">
<img
src={rc2}
alt=""
className=" w-full h-full object-cover rounded-full"
/>
</div>
</div>
<div className="flex-1 ">
<div className="mb-1 font-bold text-black capitalize">
Jhonson Steven
</div>
<span className=" text-primary font-semibold">
UI/UX Designer
</span>
</div>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
);
};
export default EventDetails;
+136
View File
@@ -0,0 +1,136 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
import { Link } from "react-router-dom";
import { e1, e2, e3, e4, e5, e6, e7, e8, e9 } from "../constant/images";
const EventsList = () => {
return (
<div className="nav-tab-wrapper tabs section-padding">
<div className="container">
<div className="flex items-center mb-14">
<div className="flex-1 flex space-x-6 items-center">
<span>Showing 12 courses of 52</span>
</div>
<div className="flex-0">
<div className="min-w-[272px]">
<select>
<option data-display="Sort By: Popularity">
Sort By: Popularity
</option>
<option value="1">Popularity</option>
<option value="2">Another option</option>
<option value="4">Potato</option>
</select>
</div>
</div>
</div>
<div className="grid lg:grid-cols-3 md:grid-cols-2 grid-cols-1 gap-[30px]">
{[e1, e2, e3, e4, e5, e6, e7, e8, e9].map((item, index) => (
<div
className=" bg-white shadow-box5 rounded-[8px] transition duration-100 hover:shadow-box3"
key={index}
>
<div className="course-thumb h-[297px] rounded-t-[8px] relative">
<img
src={item}
alt=""
className=" w-full h-full object-cover rounded-t-[8px]"
/>
</div>
<div className="course-content p-8">
<h4 className=" text-xl mb-5 font-bold">
<Link
to={"/react-templates/edumim/event-single"}
className=" hover:text-primary transition duration-150"
>
International Art Fair 2022
</Link>
</h4>
<ul className=" list space-y-3 mb-6">
<li className=" flex space-x-2">
<span className="text-lg text-secondary">
<iconify-icon icon="heroicons:calendar-days"></iconify-icon>
</span>
<span>Thu, Oct 5, 2023 03:48 PM</span>
</li>
<li className=" flex space-x-2">
<span className="text-lg text-secondary">
<iconify-icon icon="heroicons:map-pin"></iconify-icon>
</span>
<span>Humberg City, Germany</span>
</li>
</ul>
<Link
to={"/react-templates/edumim/event-single"}
className="btn px-8 py-[11px] bg-black text-white hover:bg-primary"
>
Book A Seat
</Link>
</div>
</div>
))}
</div>
<div className="pagination mt-14">
<ul className=" flex justify-center space-x-3">
<li className="inline-flex">
<a
href="#"
className="flex w-12 h-12 flex-col items-center justify-center bg-[#ECECEC] rounded font-semibold"
>
<iconify-icon
icon="heroicons:chevron-double-left-20-solid"
className=" text-2xl"
></iconify-icon>
</a>
</li>
<li className="inline-flex">
<a
href="#"
className="flex w-12 h-12 flex-col items-center justify-center bg-primary text-white rounded font-semibold"
>
1
</a>
</li>
<li className="inline-flex">
<a
href="#"
className="flex w-12 h-12 flex-col items-center justify-center bg-[#ECECEC] rounded font-semibold"
>
2
</a>
</li>
<li className="inline-flex">
<a
href="#"
className="flex w-12 h-12 flex-col items-center justify-center bg-[#ECECEC] rounded font-semibold"
>
3
</a>
</li>
<li className="inline-flex">
<a
href="#"
className="flex w-12 h-12 flex-col items-center justify-center bg-[#ECECEC] rounded font-semibold"
>
4
</a>
</li>
<li className="inline-flex">
<a
href="#"
className="flex w-12 h-12 flex-col items-center justify-center bg-[#ECECEC] rounded font-semibold"
>
<iconify-icon
icon="heroicons:chevron-double-right-20-solid"
className=" text-2xl"
></iconify-icon>
</a>
</li>
</ul>
</div>
</div>
</div>
);
};
export default EventsList;
+67
View File
@@ -0,0 +1,67 @@
import React from "react";
const Feature = () => {
return (
<div className="feature-area bg-[url('../images/all-img/section-bg-1.png')] bg-cover bg-no-repeat bg-center section-padding">
<div className="container">
<div className="text-center">
<div className="mini-title">Core Features</div>
<div className="column-title ">
Why <span className="shape-bg">Choose</span> Edumim
</div>
</div>
<div className="grid lg:grid-cols-3 md:grid-cols-2 grid-cols-1 gap-[30px] pt-10">
<div className="bg-white shadow-box rounded-[8px] p-10 group hover:bg-primary transition duration-150 hover:-translate-y-1">
<div
className="h-[72px] w-[72px] rounded-full flex flex-col items-center justify-center text-secondary bg-green-paste mb-8
text-5xl group-hover:bg-black group-hover:bg-opacity-[0.1] group-hover:text-white transition duration-150"
>
<iconify-icon icon="codicon:globe"></iconify-icon>
</div>
<h4 className=" lg:text-2xl text-[22px] leading-[30px] mb-4 transition duration-150 group-hover:text-white">
Learn More Anywhere
</h4>
<div className="transition duration-150 group-hover:text-white">
Learn from anywhere in world on desktop, mobile or tablet with an
Internet connection.{"}"}
</div>
</div>
<div className="bg-white shadow-box rounded-[8px] p-10 group hover:bg-primary transition duration-150 hover:-translate-y-1">
<div
className="h-[72px] w-[72px] rounded-full flex flex-col items-center justify-center text-secondary bg-green-paste mb-8
text-5xl group-hover:bg-black group-hover:bg-opacity-[0.1] group-hover:text-white transition duration-150"
>
<iconify-icon icon="healthicons:i-training-class-outline"></iconify-icon>
</div>
<h4 className=" lg:text-2xl text-[22px] leading-[30px] mb-4 transition duration-150 group-hover:text-white">
Expert Instructor
</h4>
<div className="transition duration-150 group-hover:text-white">
Learn from anywhere in world on desktop, mobile or tablet with an
Internet connection.{"}"}
</div>
</div>
<div className="bg-white shadow-box rounded-[8px] p-10 group hover:bg-primary transition duration-150 hover:-translate-y-1">
<div
className="h-[72px] w-[72px] rounded-full flex flex-col items-center justify-center text-secondary bg-green-paste mb-8
text-5xl group-hover:bg-black group-hover:bg-opacity-[0.1] group-hover:text-white transition duration-150"
>
<iconify-icon icon="fluent:handshake-32-regular"></iconify-icon>
</div>
<h4 className=" lg:text-2xl text-[22px] leading-[30px] mb-4 transition duration-150 group-hover:text-white">
24/7 Strong Support
</h4>
<div className="transition duration-150 group-hover:text-white">
Learn from anywhere in world on desktop, mobile or tablet with an
Internet connection.{"}"}
</div>
</div>
</div>
</div>
</div>
);
};
export default Feature;
+200
View File
@@ -0,0 +1,200 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import { Tab } from "@headlessui/react";
import React from "react";
import { Link } from "react-router-dom";
import { courseData } from "../constant/dummyData";
import {
c1,
c2,
c3,
c4,
c5,
c6,
c7,
clock,
file,
review,
star,
} from "../constant/images";
const FilteredCourse = ({ classNameForTabOne, classNameForTabTwo }) => {
const listIcon = [
"clarity:grid-view-line",
"ant-design:unordered-list-outlined",
];
return (
<Tab.Group>
<div className="flex flex-wrap gap-5 justify-center items-center mb-14">
<div className="flex-1 flex flex-wrap gap-5 space-x-6 items-center">
<Tab.List as="ul" id="tabs-nav" className=" flex space-x-4 cata-Tbas">
{listIcon.map((className, key) => (
<Tab
as="li"
className={({ selected }) => (selected ? "active" : "")}
key={key}
>
<a
href="#"
className=" h-[60px] w-[60px] flex flex-col justify-center items-center"
>
<iconify-icon icon={className}></iconify-icon>
</a>
</Tab>
))}
</Tab.List>
<span>Showing 12 courses of 52</span>
</div>
<div className="flex-0">
<div className="min-w-[272px]">
<select>
<option data-display="Sort By: Popularity">
Sort By: Popularity
</option>
<option value="1">Popularity</option>
<option value="2">Another option</option>
<option value="4">Potato</option>
</select>
</div>
</div>
</div>
<Tab.Panels as="div" id="tabs-content">
<Tab.Panel as="div" id="tab1" className="tab-content">
<div className={classNameForTabOne}>
{courseData.map((item, index) => (
<Link
className=" bg-white shadow-box2 rounded-[8px] transition duration-100 hover:shadow-sm"
to={"/react-templates/edumim/single-course"}
key={item.id * index}
>
<div className="course-thumb h-[248px] rounded-t-[8px] relative">
<img
src={item.img}
alt=""
className=" w-full h-full object-cover rounded-t-[8px]"
/>
<span className="bg-secondary py-1 px-3 text-lg font-semibold rounded text-white absolute left-6 top-6">
{item.post}
</span>
</div>
<div className="course-content p-8">
<div className="text-secondary font-bold text-2xl mb-3">
{item.price}
</div>
<h4 className=" text-xl mb-3 font-bold">{item.title}</h4>
<div className="flex justify-between flex-wrap space-y-1 xl:space-y-0">
<span className=" flex items-center space-x-2 mr-3">
<img src={file} alt="" />
<span>2 Lessons</span>
</span>
<span className=" flex items-center space-x-2 mr-3">
<img src={clock} alt="" />
<span> {item.time} </span>
</span>
<span className=" flex items-center space-x-2 ">
<img src={star} alt="" />
<span>{item.ratings}</span>
</span>
</div>
</div>
</Link>
))}
</div>
<div className="text-center pt-14">
<a
href="#"
className=" btn btn-primary inline-flex items-center space-x-[10px]"
>
<span>Load More</span>
<span className=" relative top-1">
<iconify-icon icon="ion:reload-outline"></iconify-icon>
</span>
</a>
</div>
</Tab.Panel>
<Tab.Panel id="tab2" className="tab-content">
<div className={classNameForTabTwo}>
{[c1, c2, c3, c4, c5, c6, c7].map((item, index) => (
<Link
className=" bg-white rounded-[8px] transition shadow-box7 duration-150 border-b-4 hover:border-primary border-transparent
hover:shadow-box6 flex p-8 space-x-6"
to={"/react-templates/edumim/single-course"}
key={index}
>
<div className="flex-none">
<div className="w-[159px] h-[159px] rounded relative">
<img
src={item}
alt=""
className=" w-full h-full object-cover rounded"
/>
</div>
</div>
<div className="course-content flex-1">
<div className="text-primary font-bold text-2xl mb-2 flex justify-between">
<span className=" inline-block">$29.28</span>
<span className=" flex space-x-1">
<span className="w-4 h-4 inline-block ">
<img
src={review}
alt=""
className=" w-full h-full block object-cover"
/>
</span>
<span className="w-4 h-4 inline-block ">
<img
src={review}
alt=""
className=" w-full h-full block object-cover"
/>
</span>
<span className="w-4 h-4 inline-block ">
<img
src={review}
alt=""
className=" w-full h-full block object-cover"
/>
</span>
<span className="w-4 h-4 inline-block ">
<img
src={review}
alt=""
className=" w-full h-full block object-cover"
/>
</span>
</span>
</div>
<h4 className=" text-2xl leading-[36px] mb-4 font-bold">
Basic Fundamentals of Interior &amp; Graphics Design
</h4>
<div className="flex space-x-6">
<span className=" flex items-center space-x-2">
<img src="assets/images/svg/file2.svg" alt="" />
<span>2 Lessons</span>
</span>
<span className=" flex items-center space-x-2">
<img src="assets/images/svg/user2.svg" alt="" />
<span>4k Lesson</span>
</span>
</div>
</div>
</Link>
))}
</div>
<div className="text-center pt-14">
<a
href="#"
className=" btn btn-primary inline-flex items-center space-x-[10px]"
>
<span>Load More</span>
<span className=" relative top-1">
<iconify-icon icon="ion:reload-outline"></iconify-icon>
</span>
</a>
</div>
</Tab.Panel>
</Tab.Panels>
</Tab.Group>
);
};
export default FilteredCourse;
+199
View File
@@ -0,0 +1,199 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import { Tab } from "@headlessui/react";
import React from "react";
import {
c1,
c2,
c3,
c4,
c5,
c6,
clock,
file,
review,
star,
} from "../constant/images";
const FilteredCourseTwo = () => {
const listIcon = [
"clarity:grid-view-line",
"ant-design:unordered-list-outlined",
];
return (
<Tab.Group>
<div className="flex flex-wrap gap-5 justify-center items-center mb-14">
<div className="flex-1 flex flex-wrap gap-5 space-x-6 items-center">
<Tab.List as="ul" id="tabs-nav" className=" flex space-x-4 cata-Tbas">
{listIcon.map((className, key) => (
<Tab
as="li"
className={({ selected }) => (selected ? "active" : "")}
key={key}
>
<a
href="#"
className=" h-[60px] w-[60px] flex flex-col justify-center items-center"
>
<iconify-icon icon={className}></iconify-icon>
</a>
</Tab>
))}
</Tab.List>
<span>Showing 12 courses of 52</span>
</div>
<div className="flex-0">
<div className="min-w-[272px]">
<select>
<option data-display="Sort By: Popularity">
Sort By: Popularity
</option>
<option value="1">Popularity</option>
<option value="2">Another option</option>
<option value="4">Potato</option>
</select>
</div>
</div>
</div>
<Tab.Panels as="div" id="tabs-content">
<Tab.Panel as="div" id="tab1" className="tab-content">
<div className="grid lg:grid-cols-3 md:grid-cols-2 grid-cols-1 gap-[30px]">
{[c1, c2, c3, c4, c5, c6].map((item, index) => (
<a
className=" bg-white shadow-box2 rounded-[8px] transition duration-100 hover:shadow-sm"
href="single-course.html"
key={index}
>
<div className="course-thumb h-[248px] rounded-t-[8px] relative">
<img
src={item}
alt=""
className=" w-full h-full object-cover rounded-t-[8px]"
/>
<span className="bg-secondary py-1 px-3 text-lg font-semibold rounded text-white absolute left-6 top-6">
Art &amp; Design
</span>
</div>
<div className="course-content p-8">
<div className="text-secondary font-bold text-2xl mb-3">
$29.28
</div>
<h4 className=" text-xl mb-3 font-bold">
Basic Fundamentals of Interior &amp; Graphics Design
</h4>
<div className="flex justify-between flex-wrap space-y-1 xl:space-y-0">
<span className=" flex items-center space-x-2 mr-3">
<img src={file} alt="" />
<span>2 Lessons</span>
</span>
<span className=" flex items-center space-x-2 mr-3">
<img src={clock} alt="" />
<span>4h 30m</span>
</span>
<span className=" flex items-center space-x-2 ">
<img src={star} alt="" />
<span>4.8</span>
</span>
</div>
</div>
</a>
))}
</div>
<div className="text-center pt-14">
<a
href="#"
className=" btn btn-primary inline-flex items-center space-x-[10px]"
>
<span>Load More</span>
<span className=" relative top-1">
<iconify-icon icon="ion:reload-outline"></iconify-icon>
</span>
</a>
</div>
</Tab.Panel>
<Tab.Panel id="tab2" className="tab-content">
<div className="grid lg:grid-cols-2 md:grid-cols-1 grid-cols-1 gap-[30px]">
{[c1, c2, c3, c4, c5, c6].map((item, index) => (
<a
className=" bg-white rounded-[8px] transition shadow-box7 duration-150 border-b-4 hover:border-primary border-transparent
hover:shadow-box6 flex p-8 space-x-6"
href="single-course.html"
key={index}
>
<div className="flex-none">
<div className="w-[159px] h-[159px] rounded relative">
<img
src={item}
alt=""
className=" w-full h-full object-cover rounded"
/>
</div>
</div>
<div className="course-content flex-1">
<div className="text-primary font-bold text-2xl mb-2 flex justify-between">
<span className=" inline-block">$29.28</span>
<span className=" flex space-x-1">
<span className="w-4 h-4 inline-block ">
<img
src={review}
alt=""
className=" w-full h-full block object-cover"
/>
</span>
<span className="w-4 h-4 inline-block ">
<img
src={review}
alt=""
className=" w-full h-full block object-cover"
/>
</span>
<span className="w-4 h-4 inline-block ">
<img
src={review}
alt=""
className=" w-full h-full block object-cover"
/>
</span>
<span className="w-4 h-4 inline-block ">
<img
src={review}
alt=""
className=" w-full h-full block object-cover"
/>
</span>
</span>
</div>
<h4 className=" text-2xl leading-[36px] mb-4 font-bold">
Basic Fundamentals of Interior &amp; Graphics Design
</h4>
<div className="flex space-x-6">
<span className=" flex items-center space-x-2">
<img src="assets/images/svg/file2.svg" alt="" />
<span>2 Lessons</span>
</span>
<span className=" flex items-center space-x-2">
<img src="assets/images/svg/user2.svg" alt="" />
<span>4k Lesson</span>
</span>
</div>
</div>
</a>
))}
</div>
<div className="text-center pt-14">
<a
href="#"
className=" btn btn-primary inline-flex items-center space-x-[10px]"
>
<span>Load More</span>
<span className=" relative top-1">
<iconify-icon icon="ion:reload-outline"></iconify-icon>
</span>
</a>
</div>
</Tab.Panel>
</Tab.Panels>
</Tab.Group>
);
};
export default FilteredCourseTwo;
+143
View File
@@ -0,0 +1,143 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
import footerLogo from "../assets/images/logo/footer-logo.svg";
const Footer = () => {
const updatedDate = new Date().getFullYear();
return (
<footer className="bg-black bg-[url('../images/all-img/footer-bg-1.png')] bg-cover bg-center bg-no-repeat">
<div className="section-padding container">
<div className="grid grid-cols-1 gap-7 md:grid-cols-2 lg:grid-cols-3">
<div className="single-footer">
<div className="lg:max-w-[270px]">
<a href="#" className="mb-10 block">
<img src={footerLogo} alt="" />
</a>
<p>
Lorem ipsum amet, consectetur adipiscing elit. Suspendis varius
enim eros elementum tristique. Duis cursus.
</p>
<ul className="flex space-x-4 pt-8">
<li>
<a
href="#"
className="flex h-12 w-12 flex-col items-center justify-center rounded bg-white bg-opacity-[0.08] text-2xl text-white
transition hover:bg-primary hover:text-white"
>
<iconify-icon icon="bxl:facebook"></iconify-icon>
</a>
</li>
<li>
<a
href="#"
className="flex h-12 w-12 flex-col items-center justify-center rounded bg-white bg-opacity-[0.08] text-2xl text-white
transition hover:bg-primary hover:text-white"
>
<iconify-icon icon="bxl:twitter"></iconify-icon>
</a>
</li>
<li>
<a
href="#"
className="flex h-12 w-12 flex-col items-center justify-center rounded bg-white bg-opacity-[0.08] text-2xl text-white
transition hover:bg-primary hover:text-white"
>
<iconify-icon icon="bxl:linkedin"></iconify-icon>
</a>
</li>
<li>
<a
href="#"
className="flex h-12 w-12 flex-col items-center justify-center rounded bg-white bg-opacity-[0.08] text-2xl text-white
transition hover:bg-primary hover:text-white"
>
<iconify-icon icon="bxl:instagram"></iconify-icon>
</a>
</li>
</ul>
</div>
</div>
<div className="single-footer">
<div className="flex space-x-[80px]">
<div className="flex-1 lg:flex-none">
<h4 className="mb-8 text-2xl font-bold text-white">Links</h4>
<ul className="list-item space-y-5">
<li>
<a href="#">Home</a>
</li>
<li>
<a href="#">About Us</a>
</li>
<li>
<a href="#">Pricing</a>
</li>
<li>
<a href="#">Courses</a>
</li>
<li>
<a href="#">Contact Us</a>
</li>
<li>
<a href="#">Blog</a>
</li>
</ul>
</div>
<div className="flex-1 lg:flex-none">
<h4 className="mb-8 text-2xl font-bold text-white">Legal</h4>
<ul className="list-item space-y-5">
<li>
<a href="#">Legal</a>
</li>
<li>
<a href="#">Tearms of Use</a>
</li>
<li>
<a href="#">Tearm & Condition</a>
</li>
<li>
<a href="#">Payment Method</a>
</li>
<li>
<a href="#">Privacy Policy</a>
</li>
<li>
<a href="#">Privacy Policy</a>
</li>
</ul>
</div>
</div>
</div>
<div className="single-footer">
<h4 className="mb-8 text-2xl font-bold text-white">Newsletter</h4>
<div className="mb-8">
Join over <span className="text-primary underline">68,000</span>{" "}
people getting our emails Lorem ipsum dolor sit amet consectet
</div>
<div className="mb-4 flex items-center rounded-md bg-white py-[10px] pr-[10px] pl-6 shadow-e1">
<div className="flex-none">
<span className=" ">
<img src="assets/images/icon/mail.svg" alt="" />
</span>
</div>
<div className="flex-1">
<input
type="text"
placeholder="Enter your mail"
className="border-none focus:ring-0"
/>
</div>
</div>
<button className="btn btn-primary block w-full text-center">
Subscribe Now
</button>
</div>
</div>
</div>
<div className="container border-t border-white border-opacity-[0.1] py-8 text-center text-base">
&copy; Copyright {updatedDate} | Edumim Template | All Rights Reserved
</div>
</footer>
);
};
export default Footer;
+178
View File
@@ -0,0 +1,178 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React, { useEffect, useRef, useState } from "react";
import { Link } from "react-router-dom";
import logo from "../assets/images/logo/logo.svg";
import MobileMenu from "./MobileMenu";
const Header = () => {
const [activeMobileMenu, setActiveMobileMenu] = useState(false);
const scrollNav = useRef(null);
useEffect(() => {
// scrolling nav
window.addEventListener("scroll", () => {
let windowScroll = window.scrollY > 100;
scrollNav.current.classList.toggle("rt-sticky-active", windowScroll);
scrollNav.current.classList.toggle("sticky", windowScroll);
});
}, []);
return (
<>
<header
className="site-header home-one-header top-0 w-full z-[999] rt-sticky "
ref={scrollNav}
>
<div className="main-header py-6">
<div className="container">
<div className=" flex items-center justify-between">
<Link
to={"/react-templates/edumim"}
className="brand-logo flex-none lg:mr-10 md:w-auto max-w-[120px] "
>
<img src={logo} alt="logo" />
</Link>
<div className="flex items-center flex-1">
<div className="flex-1 main-menu relative mr-[74px]">
<ul className="menu-active-classNamees">
<li className={`menu-item-has-children `}>
<a href="#">Home</a>
<ul className="sub-menu">
<li>
<Link to={"/react-templates/edumim"}> Home One</Link>
</li>
<li>
<Link to={"/react-templates/edumim/home-two"}>
Home Two
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/home-three"}>
Home Three
</Link>
</li>
</ul>
</li>
<li className="menu-item-has-children">
<a href="#">Pages</a>
<ul className="sub-menu">
<li>
<Link to={"/react-templates/edumim/about"}>
About 1
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/about-two"}>
About 2
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/instructor"}>
Instructor
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/instructor-two"}>
Instructor 2
</Link>
</li>
<li>
<Link
to={"/react-templates/edumim/instructor-details"}
>
Instructor Single
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/event"}>
Event
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/event-single"}>
Event Single
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/error"}>404</Link>
</li>
</ul>
</li>
<li className="menu-item-has-children">
<a href="#">Courses</a>
<ul className="sub-menu">
<li>
<Link to={"/react-templates/edumim/courses"}>
Courses
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/courses-sidebar"}>
Courses Sidebar
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/single-course"}>
Single Course
</Link>
</li>
</ul>
</li>
<li className="menu-item-has-children">
<a href="#">Blog</a>
<ul className="sub-menu">
<li>
<Link to={"/react-templates/edumim/blog-standard"}>
Blog Standard
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/single-blog"}>
Blog Single
</Link>
</li>
</ul>
</li>
<li>
<Link to={"/react-templates/edumim/contacts"}>
Contacts
</Link>
</li>
</ul>
</div>
<div className="flex-none flex space-x-[18px]">
<div className=" hidden lg:block">
<a href="#" className="btn btn-primary py-[15px] px-8">
Start Free Trial
</a>
</div>
<div className=" block lg:hidden">
<button
type="button"
className=" text-3xl md:w-[56px] h-10 w-10 md:h-[56px] rounded bg-[#F8F8F8] flex flex-col items-center justify-center
menu-click"
onClick={() => setActiveMobileMenu(!activeMobileMenu)}
>
<iconify-icon
icon="cil:hamburger-menu"
rotate="180deg"
></iconify-icon>
</button>
</div>
</div>
</div>
</div>
</div>
</div>
</header>
{activeMobileMenu && (
<MobileMenu
activeMenu={activeMobileMenu}
setActiveMenu={setActiveMobileMenu}
/>
)}
</>
);
};
export default Header;
+39
View File
@@ -0,0 +1,39 @@
import React, { useEffect } from "react";
import About from "../About";
import Banner from "../Banner";
import Blogs from "../Blogs";
import Brands from "../Brands";
import Courses from "../Courses";
import Feature from "../Feature";
import Footer from "../Footer";
import Header from "../Header";
import NewsLetter from "../NewsLetter";
import Platform from "../Platform";
import Team from "../Team";
import Testimonials from "../Testimonials";
import Topics from "../Topics";
const HomeOne = () => {
useEffect(() => {
document.documentElement.scrollTop = 0;
}, []);
return (
<>
<Header />
<Banner />
<About />
<Brands section_padding_bottom={"section-padding-bottom"} />
<Feature />
<Courses />
<Platform />
<NewsLetter />
<Topics />
<Testimonials />
<Team />
<Blogs />
<Footer />
</>
);
};
export default HomeOne;
+36
View File
@@ -0,0 +1,36 @@
import React, { useEffect } from "react";
import Header from "../Header";
import About from "../HomeThreeComponents/About";
import Accordion from "../HomeThreeComponents/Accordion";
import Banner from "../HomeThreeComponents/Banner";
import Brands from "../HomeThreeComponents/Brands";
import CourseBlock from "../HomeThreeComponents/CourseBlock";
import Event from "../HomeThreeComponents/Event";
import Team from "../HomeThreeComponents/Team";
import Testimonial from "../HomeThreeComponents/Testimonial";
import BlogArticle from "../HomeTwoComponents/BlogArticle";
import Footer from "../Footer";
import CourseSection from "../HomeThreeComponents/CourseSection";
function HomeThree() {
useEffect(() => {
document.documentElement.scrollTop = 0;
}, []);
return (
<>
<Header />
<Banner />
<Brands />
<About />
<CourseSection />
<Team />
<Testimonial />
<Event />
<CourseBlock />
<Accordion />
<BlogArticle />
<Footer />
</>
);
}
export default HomeThree;
+33
View File
@@ -0,0 +1,33 @@
import React, { useEffect } from "react";
import About from "../HomeTwoComponents/About";
import Achivement from "../HomeTwoComponents/Achivement";
import BlogArticle from "../HomeTwoComponents/BlogArticle";
import Categories from "../HomeTwoComponents/Categories";
import Counter from "../HomeTwoComponents/Counter";
import Courses from "../HomeTwoComponents/Courses";
import Footer from "../HomeTwoComponents/Footer";
import HomeTwoHeader from "../HomeTwoComponents/HomeTwoHeader";
import Video from "../HomeTwoComponents/Video";
import WhyChoose from "../HomeTwoComponents/WhyChoose";
const HomeTwo = () => {
useEffect(() => {
document.documentElement.scrollTop = 0;
}, []);
return (
<section className="font-gilroy font-medium text-gray text-lg leading-[27px]">
<HomeTwoHeader />
<Categories />
<About />
<Courses />
<Counter />
<Video />
<WhyChoose />
<Achivement />
<BlogArticle />
<Footer />
</section>
);
};
export default HomeTwo;
@@ -0,0 +1,66 @@
import React from "react";
import { about5, h, videoIcon, whiteWebIcon } from "../../constant/images";
const About = () => {
return (
<div className="about-area section-padding-top pb-16 relative z-[1]">
<div className=" absolute right-[7%] top-[20%] z-[-1] hidden xl:block">
<img src={h} alt="" />
</div>
<div className="container">
<div className="grid grid-cols-12 xl:gap-[70px] lg:gap-10 gap-6">
<div className="xl:col-span-7 lg:col-span-6 col-span-12">
<img src={about5} alt="" />
</div>
<div className="xl:col-span-5 lg:col-span-6 col-span-12 ">
<div className="mini-title">About Edumim</div>
<h4 className="column-title ">
You Can Learn Anything, Anytime From{" "}
<span className="shape-bg">Anywhere</span>
</h4>
<div>
There are many variations of passages of Lorem Ipsum available,
but the majority have suffered.
</div>
<ul className=" list-item space-y-6 pt-8">
<li className="flex">
<div className="flex-none mr-6">
<div className="h-20 w-20 rounded-full bg-white shadow-box10 flex flex-col justify-center items-center">
<img src={videoIcon} alt="" className="" />
</div>
</div>
<div className="flex-1">
<h4 className=" text-xl mb-1">
All classNamees Video Provided
</h4>
<div>
There are many variations of passages of the Lorem Ipsum
available.
</div>
</div>
</li>
<li className="flex">
<div className="flex-none mr-6">
<div className="h-20 w-20 rounded-full bg-white shadow-box10 flex flex-col justify-center items-center">
<img src={whiteWebIcon} alt="" className=" " />
</div>
</div>
<div className="flex-1">
<h4 className=" text-xl mb-1">
Online className From Expert Teachers
</h4>
<div>
There are many variations of passages of the Lorem Ipsum
available.
</div>
</div>
</li>
</ul>
</div>
</div>
</div>
</div>
);
};
export default About;
@@ -0,0 +1,97 @@
import { Disclosure } from "@headlessui/react";
import React from "react";
import { faq } from "../../constant/images";
const Accordion = () => {
return (
<div className="section-padding bg-white bg-[url('../images/all-img/section-bg-15.png')] bg-bottom bg-cover bg-no-repeat">
<div className="container">
<div className="grid lg:grid-cols-2 grid-cols-1 gap-[30px]">
<div>
<div className="mini-title">Frequently Asked Question</div>
<div className="column-title ">
General <span className="shape-bg">Questions</span>
</div>
<ul className="list accrodains space-y-[30px] lg:max-w-[470px]">
<Disclosure >
{({ open }) => (
<li className={open ? "open" : null} >
<Disclosure.Button type="button" className="accrodain-button">
<span>What does it take excellent author?</span>
<span className="icon-pm"></span>
</Disclosure.Button>
<Disclosure.Panel className="content">
Learn at your own pace, move between multiple courses, or
switch to a different course. Earn a certificate for every
learning program that you complete at no additional cost.
</Disclosure.Panel>
</li>
)}
</Disclosure>
<Disclosure>
{({ open }) => (
<li className={open ? "open" : null} >
<Disclosure.Button type="button" className="accrodain-button">
<span>What does it take excellent author?</span>
<span className="icon-pm"></span>
</Disclosure.Button>
<Disclosure.Panel className="content">
Learn at your own pace, move between multiple courses, or
switch to a different course. Earn a certificate for every
learning program that you complete at no additional cost.
</Disclosure.Panel>
</li>
)}
</Disclosure>
<Disclosure >
{({ open }) => (
<li className={open ? "open" : null} >
<Disclosure.Button type="button" className="accrodain-button">
<span>What does it take excellent author?</span>
<span className="icon-pm"></span>
</Disclosure.Button>
<Disclosure.Panel className="content">
Learn at your own pace, move between multiple courses, or
switch to a different course. Earn a certificate for every
learning program that you complete at no additional cost.
</Disclosure.Panel>
</li>
)}
</Disclosure>
<Disclosure >
{({ open }) => (
<li className={open ? "open" : null} >
<Disclosure.Button type="button" className="accrodain-button">
<span>What does it take excellent author?</span>
<span className="icon-pm"></span>
</Disclosure.Button>
<Disclosure.Panel className="content">
Learn at your own pace, move between multiple courses, or
switch to a different course. Earn a certificate for every
learning program that you complete at no additional cost.
</Disclosure.Panel>
</li>
)}
</Disclosure>
</ul>
</div>
<div>
<img src={faq} alt="" />
</div>
</div>
</div>
</div>
);
};
export default Accordion;
@@ -0,0 +1,35 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
import { man3 } from "../../constant/images";
const Banner = () => {
return (
<section className=" xl:min-h-screen bg-[url('../images/banner/3.png')] bg-no-repeat bg-center overflow-hidden">
<div className="container relative">
<div className="xl:max-w-[570px] lg:max-w-[770px] xl:py-[174px] lg:py-28 md:py-20 py-14">
<h1>
Classical
<span className=" text-secondary inline-block bg-[url('../images/banner/shape.svg')] bg-no-repeat bg-bottom">
Education
</span>{" "}
For The Future
</h1>
<div className=" plain-text text-gray leading-[30px] mt-8 mb-14">
It is long established fact that reader distracted by the readable
content.
</div>
<div className="md:flex md:space-x-4 space-y-3 md:space-y-0">
<a href="#" className="btn btn-primary">
Learn From Today
</a>
</div>
</div>
<div className="imge-box absolute right-[-60px] top-1/2 -translate-y-1/2 hidden xl:block ">
<img src={man3} alt="" />
</div>
</div>
</section>
);
};
export default Banner;
@@ -0,0 +1,26 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
import { b1, b2, b3, b4, b5 } from "../../constant/images";
const Brands = () => {
return (
<div className="brands-area pt-20 pb-14 bg-black ">
<div className="container">
<ul className="flex flex-wrap items-center lg:justify-between justify-center ">
{[b1, b2, b3, b4, b5].map((item, index) => (
<li
className=" mb-6 last:mb-0 mr-6 last:mr-0 transition duration-150 "
key={index}
>
<a href="#" className=" block">
<img src={item} alt="" />
</a>
</li>
))}
</ul>
</div>
</div>
);
};
export default Brands;
@@ -0,0 +1,46 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
const CourseBlock = () => {
return (
<div
className="lg:pt-10 section-padding-bottom bg-white bg-[url('../images/all-img/section-bg-14.png')] bg-center bg-no-repeat
bg-cover"
>
<div className="container">
<div className="grid lg:grid-cols-2 grid-cols-1 gap-7">
<div className="bg-[url('../images/all-img/bg-ins-1.png')] bg-cover bg-no-repeat p-10 rounded-md">
<div className="max-w-[337px]">
<div className="mini-title">Build Your Career</div>
<div className=" text-[34px] text-black leading-[51px]">
Become an <span className="shape-bg"> Instructor</span>
</div>
<div className=" mt-6 mb-12">
Learn at your own pace, move the between multiple courses.
</div>
<a href="#" className="btn btn-primary">
Apply Now
</a>
</div>
</div>
<div className="bg-[url('../images/all-img/bg-ins-2.png')] bg-no-repeat p-10 bg-cover rounded-md">
<div className="max-w-[337px]">
<div className="mini-title">Build Your Career</div>
<div className=" text-[34px] text-black leading-[51px]">
Get Free <span className="shape-bg">Courses</span>
</div>
<div className=" mt-6 mb-12">
Learn at your own pace, move the between multiple courses.
</div>
<a href="#" className="btn btn-black">
Contact Us
</a>
</div>
</div>
</div>
</div>
</div>
);
};
export default CourseBlock;
@@ -0,0 +1,38 @@
import React, { Fragment, useEffect } from 'react'
const CourseFilter = ({ activeData, mainData, setFilterData, setActiveData }) => {
useEffect(() => {
if (activeData === 0) {
setFilterData(mainData);
}
const filteredData = mainData.filter((e) => e.id.includes(activeData));
setFilterData(filteredData);
}, [activeData, setFilterData, mainData]);
return (
<ul className="filter-list flex xl:space-x-[39px] space-x-4 " style={{ textTransform: 'capitalize' }}>
{['see all', 'marketing', 'design', 'finance'].map((item, index) => (
<Fragment key={index}>
{item === "see all" ? (
<li
className={activeData === 0 ? "active filter" : "filter"}
onClick={() => setActiveData(0)}
>
{item}
</li>
) : (
<li
className={activeData === item ? "filter active" : "filter"}
onClick={() => setActiveData(item)}
>
{item}
</li>
)}
</Fragment>
))}
</ul>
)
}
export default CourseFilter
@@ -0,0 +1,50 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React, { useState } from "react";
import { courseData } from "../../constant/dummyData";
import CourseFilter from "./CourseFilter";
import SingleCourse from "./SingleCourse";
const CourseSection = () => {
const [activeData, setActiveData] = useState(0);
const [filterData, setFilterData] = useState([]);
return (
<div className=" section-padding bg-[url('../images/all-img/section-bg-11.png')] bg-cover bg-no-repeat">
<div className="container">
<div className="flex items-center flex-wrap flex-y-4">
<div className="flex-1">
<div className="mini-title">Popular Courses</div>
<div className="column-title ">
Choose Our Top <span className="shape-bg">Courses</span>
</div>
</div>
<div className="flex-none">
<CourseFilter
mainData={courseData}
activeData={activeData}
setActiveData={setActiveData}
setFilterData={setFilterData} />
</div>
</div>
<div className="flex flex-wrap pt-10 grids">
{filterData?.length > 0 ? (
filterData.map((data, index) => (
<SingleCourse key={index} data={data} />
))
) : (
<h1 style={{ textAlign: "center" }}>Not Found Any Data</h1>
)}
</div>
<div className="text-center lg:pt-16 pt-10">
<a href="#" className=" btn btn-primary">
View All Courses
</a>
</div>
</div>
</div>
);
};
export default CourseSection;
@@ -0,0 +1,66 @@
import React from "react";
import { Link } from "react-router-dom";
import { e1, e2, e3 } from "../../constant/images";
const Event = () => {
return (
<div className=" section-padding bg-white bg-[url('../images/all-img/section-bg-13.png')] bg-no-repeat">
<div className="container">
<div className="text-center mb-14">
<div className="mini-title">Join With Us</div>
<div className="column-title ">
Upcoming <span className="shape-bg">Events</span>
</div>
</div>
<div className="grid xl:grid-cols-3 md:grid-cols-2 grid-cols-1 gap-[30px]">
{[e1, e2, e3].map((item, index) => (
<div
className=" bg-white shadow-box5 rounded-[8px] transition duration-100 hover:shadow-box3"
key={index}
>
<div className="course-thumb h-[297px] rounded-t-[8px] relative">
<img
src={item}
alt=""
className=" w-full h-full object-cover rounded-t-[8px]"
/>
</div>
<div className="course-content p-8">
<h4 className=" text-xl mb-5 font-bold">
<Link
to={"/react-templates/edumim/event-single"}
className=" hover:text-primary transition duration-150"
>
International Art Fair 2022
</Link>
</h4>
<ul className=" list space-y-3 mb-6">
<li className=" flex space-x-2">
<span className="text-lg text-secondary">
<iconify-icon icon="heroicons:calendar-days"></iconify-icon>
</span>
<span>Thu, Oct 5, 2023 03:48 PM</span>
</li>
<li className=" flex space-x-2">
<span className="text-lg text-secondary">
<iconify-icon icon="heroicons:map-pin"></iconify-icon>
</span>
<span>Humberg City, Germany</span>
</li>
</ul>
<Link
to={"/react-templates/edumim/event-single"}
className="btn px-8 py-[11px] bg-black text-white hover:bg-primary"
>
Book A Seat
</Link>
</div>
</div>
))}
</div>
</div>
</div>
);
};
export default Event;
@@ -0,0 +1,54 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from 'react'
import { clock, file, star } from '../../constant/images'
const SingleCourse = ({ data }) => {
return (
<>
{ }
<div className="cat-2 cat-3 grid-item xl:w-1/3 lg:w-1/2 w-full px-[15px] mb-[15px]">
<a
className=" bg-white shadow-box2 rounded-[8px] transition duration-100
hover:shadow-sm block mb-5 "
href="#"
>
<div className="course-thumb h-[248px] rounded-t-[8px] relative">
<img
src={data.img}
alt=""
className=" w-full h-full object-cover rounded-t-[8px]"
/>
<span className="bg-secondary py-1 px-3 text-lg font-semibold rounded
text-white absolute left-6 top-6">
{data.post}
</span>
</div>
<div className="course-content p-8">
<div className="text-secondary font-bold text-2xl mb-3">
{data.price}
</div>
<h4 className=" text-xl mb-3 font-bold">
{data.title}
</h4>
<div className="flex justify-between space-x-3">
<span className=" flex items-center space-x-2">
<img src={file} alt="" />
<span>2 Lessons</span>
</span>
<span className=" flex items-center space-x-2">
<img src={clock} alt="" />
<span>4h 30m</span>
</span>
<span className=" flex items-center space-x-2">
<img src={star} alt="" />
<span>4.8</span>
</span>
</div>
</div>
</a>
</div>
</>
)
}
export default SingleCourse
@@ -0,0 +1,98 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
import { instructorData } from "../../constant/dummyData";
const Team = () => {
return (
<div className=" section-padding">
<div className="container">
<div className="text-center">
<div className="mini-title">Team Member</div>
<div className="column-title ">
Our Expert <span className="shape-bg">Instructors</span>
</div>
</div>
<div className="grid xl:grid-cols-4 lg:grid-cols-3 md:grid-cols-2 grid-cols-1 gap-7 pt-10">
{instructorData.map((item, index) => (
<div
className=" bg-white shadow-box3 rounded-md transition-all duration-100 text-center hover:shadow-box4 "
key={index}
>
<div className=" h-[270px] rounded-t-md relative mx-auto overflow-hidden">
<img
src={item.img}
alt=""
className=" w-full h-full object-cover rounded-t-md "
/>
<div className=" absolute right-0 bottom-0 flex flex-col justify-end items-end social-explore">
<button
type="button"
className="h-12 w-12 bg-secondary text-white rounded-tl-md flex flex-col items-center justify-center"
>
<svg
width="18"
height="18"
viewBox="0 0 18 18"
fill="none"
xmlns="http://www.w3.org/2000/svg"
>
<rect
opacity="0.01"
width="18"
height="18"
fill="white"
/>
<path
fillRule="evenodd"
clipRule="evenodd"
d="M9 2.25C9.62132 2.25 10.125 2.75368 10.125 3.375V7.875H14.625C15.2463 7.875 15.75 8.37868 15.75 9C15.75 9.62132
15.2463 10.125 14.625 10.125H10.125V14.625C10.125 15.2463 9.62132 15.75 9 15.75C8.37868 15.75 7.875 15.2463 7.875
14.625V10.125H3.375C2.75368 10.125 2.25 9.62132 2.25 9C2.25 8.37868 2.75368 7.875 3.375 7.875H7.875V3.375C7.875 2.75368
8.37868 2.25 9 2.25Z"
fill="white"
/>
</svg>
</button>
<ul className=" justify-center bg-primary rounded-tl-md transition-all duration-100 flex ">
<li>
<a
href="#"
className=" text-xl leading-[1] text-white flex h-12 w-12 items-center justify-center"
>
<iconify-icon icon="bxl:facebook"></iconify-icon>
</a>
</li>
<li>
<a
href="#"
className=" text-xl leading-[1] text-white flex h-12 w-12 items-center justify-center"
>
<iconify-icon icon="bxl:twitter"></iconify-icon>
</a>
</li>
<li>
<a
href="#"
className=" text-xl leading-[1] flex h-12 w-12 items-center justify-center text-white "
>
<iconify-icon icon="bxl:linkedin"></iconify-icon>
</a>
</li>
</ul>
</div>
</div>
<div className="course-content p-6">
<h4 className=" lg:text-2xl text-1xl mb-1 font-bold">
{item.name}
</h4>
<div>{item.title}</div>
</div>
</div>
))}
</div>
</div>
</div>
);
};
export default Team;
@@ -0,0 +1,154 @@
import React, { useRef } from "react";
import { Swiper, SwiperSlide } from "swiper/react";
import { EffectCreative, Navigation } from "swiper";
import { t1 } from "../../constant/images";
import "swiper/css/bundle";
import "swiper/css";
import "swiper/css/effect-creative";
import "swiper/css/navigation";
const Testimonial = () => {
const prevBtn = useRef(null);
const nextBtn = useRef(null);
return (
<div className=" section-padding bg-[url('../images/all-img/section-bg-12.png')] bg-no-repeat bg-cover">
<Swiper
navigation={{
prevEl: ".slickprev",
nextEl: ".slicknext",
}}
spaceBetween={30}
loop
effect={"creative"}
creativeEffect={{
prev: {
shadow: true,
translate: [0, 0, -400],
opacity: [0],
},
next: {
translate: ["100%", 0, 0],
},
}}
modules={[Navigation, EffectCreative]}
className="container"
>
<SwiperSlide className="grid lg:grid-cols-2 grid-cols-1 xl:gap-[60px] gap-6">
<div>
<div className="slider-nav">
<div className="single-item">
<div className="xl:h-[593px] lg:h-[400px] h-[150px] lg:w-full w-[150px] rounded-md">
<img
src={t1}
alt=""
className=" object-cover w-full h-full rounded-md"
/>
</div>
</div>
</div>
</div>
<div>
<div className="mini-title">Testimonial</div>
<h4 className="column-title ">
Our Tallented Students Valuable
<span className="shape-bg text-black">Feedback</span>
</h4>
<div className="slider-for mt-10">
<div className="single-item">
<div>
<h3 className=" text-2xl font-bold text-black mb-8">
Its Truly The Best Solution For Me
</h3>
<div className="mb-8">
There are many variations of passages of Lorem Ipsum
available, but the majority have suffered. There are many
variations of passages of Lorem Ipsum available, but the
majority have suffered alteration.
</div>
<div>
<span className=" block font-semibold text-black mb-1">
Alfred Helmerich
</span>
<span className=" block font-semibold text-primary">
Executive Training Manager
</span>
</div>
</div>
</div>
</div>
</div>
</SwiperSlide>
<SwiperSlide className="grid lg:grid-cols-2 grid-cols-1 xl:gap-[60px] gap-6">
<div>
<div className="slider-nav">
<div className="single-item">
<div className="xl:h-[593px] lg:h-[400px] h-[150px] lg:w-full w-[150px] rounded-md">
<img
src={t1}
alt=""
className=" object-cover w-full h-full rounded-md"
/>
</div>
</div>
</div>
</div>
<div>
<div className="mini-title">Testimonial</div>
<h4 className="column-title ">
Our Tallented Students Valuable
<span className="shape-bg text-black">Feedback</span>
</h4>
<div className="slider-for mt-10">
<div className="single-item">
<div>
<h3 className=" text-2xl font-bold text-black mb-8">
Its Truly The Best Solution For Me
</h3>
<div className="mb-8">
There are many variations of passages of Lorem Ipsum
available, but the majority have suffered.
</div>
<div>
<span className=" block font-semibold text-black mb-1">
Alfred Helmerich
</span>
<span className=" block font-semibold text-primary">
Executive Training Manager
</span>
</div>
<br />
<div>
<span className=" block font-semibold text-black mb-1">
Alfred Helmerich
</span>
<span className=" block font-semibold text-primary">
Executive Training Director
</span>
</div>
</div>
</div>
</div>
</div>
</SwiperSlide>
<div className="space-x-5 flex justify-center lg:mt-10 mt-8">
<button
className="lg:h-[64px] lg:w-[64px] h-12 w-12 flex flex-col items-center justify-center rounded-md bg-white hover:bg-primary
hover:text-white shadow-box slickprev text-3xl text-primary"
ref={prevBtn}
>
<iconify-icon icon="heroicons:arrow-left-20-solid"></iconify-icon>
</button>
<button
className="lg:h-[64px] lg:w-[64px] h-12 w-12 flex flex-col items-center justify-center rounded-md bg-white hover:bg-primary
hover:text-white shadow-box slicknext text-3xl text-primary"
ref={nextBtn}
>
<iconify-icon icon="heroicons:arrow-right-20-solid"></iconify-icon>
</button>
</div>
</Swiper>
</div>
);
};
export default Testimonial;
@@ -0,0 +1,79 @@
import React from "react";
import about3 from "../../assets/images/all-img/about3.png";
const About = () => {
return (
<div className="about-area section-padding">
<div className="container">
<div className="grid grid-cols-12 gap-[30px]">
<div className="xl:col-span-7 lg:col-span-6 col-span-12">
<img src={about3} alt="" className=" block w-full" />
</div>
<div className="xl:col-span-5 lg:col-span-6 col-span-12">
<div className="mini-title">About Edumim</div>
<h4 className="column-title ">
We Provide The Best Online{" "}
<span className="shape-bg">Education</span>
</h4>
<div className=" mb-8">
There are many variations of passages of Lorem Ipsum available,
but the majority have suffered alteration in some form, by
injected humour.
</div>
<div className="space-y-8">
<div className="progressbar-group">
<div className="flex justify-between" data-width="85%">
<span className="block text-black font-semibold mb-2">
Business Studies
</span>
<span className=" block mb-2 text-black font-semibold">
86%
</span>
</div>
<div className="rounded-[2px] overflow-hidden bg-opacity-10 bg-black h-[6px] relative">
<div
className="ani h-[6px] bg-primary block absolute left-0 top-1/2 -translate-y-1/2 "
style={{ width: "86%" }}
></div>
</div>
</div>
<div className="progressbar-group">
<div className="flex justify-between" data-width="67%">
<span className="block text-black font-semibold mb-2">
Marketing
</span>
<span className=" block mb-2 text-black font-semibold">
67%
</span>
</div>
<div className="rounded-[2px] overflow-hidden bg-opacity-10 bg-black h-[6px] relative">
<div
className="ani h-[6px] bg-secondary block absolute left-0 top-1/2 -translate-y-1/2 "
style={{ width: "67%" }}
></div>
</div>
</div>
<div className="progressbar-group">
<div className="flex justify-between" data-width="95%">
<span className="block text-black font-semibold mb-2">
Design & Development
</span>
<span className=" block mb-2 text-black font-semibold">
95%
</span>
</div>
<div className="rounded-[2px] overflow-hidden bg-opacity-10 bg-black h-[6px] relative">
<div
className="ani h-[6px] bg-tertiary block absolute left-0 top-1/2 -translate-y-1/2 "
style={{ width: "95%" }}
></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
);
};
export default About;
@@ -0,0 +1,140 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
import { check } from "../../constant/images";
const Achivement = () => {
return (
<div className=" section-padding bg-[url('../images/all-img/section-bg-9.png')] bg-no-repeat bg-center bg-cover ">
<div className="container">
<div className="text-center">
<div className="mini-title">Some Fun Fact</div>
<div className="column-title ">
Our Great {' '}
<span className="shape-bg">Achievement</span>
</div>
</div>
<div className="pt-10 pb-8">
<label className=" max-w-[254px] bg-white rounded-md shadow-box9 p-3 mx-auto flex cursor-pointer active-price items-center ">
<input
type="checkbox"
id="pricechnage"
className=" hidden form-check"
/>
<span className=" flex-1 text-center active ">Monthly</span>
<span className=" flex-1 text-center ">Yearly</span>
</label>
</div>
<div className="space-y-8 max-w-[1170px] mx-auto border-t border-b border-black border-opacity-[0.1] ">
<div
className="flex lg:flex-row flex-col space-y-6 lg:space-y-0 lg:justify-between lg:space-x-8 items-center py-10 px-10
rounded-md "
>
<div>
<span className=" text-2xl text-black font-bold">Starter</span>
</div>
<div>
<ul className=" space-y-4">
<li className=" flex space-x-[9px]">
<img src={check} alt="" />
<span>Sed sed felis neque vehicula iaculis</span>
</li>
<li className=" flex space-x-[9px]">
<img src={check} alt="" />
<span>Cras consequat ligula vel augue</span>
</li>
<li className=" flex space-x-[9px]">
<img src={check} alt="" />
<span>Maecenas bibendum massa eget</span>
</li>
</ul>
</div>
<div className="w-[150px] text-center">
<span className="block font-bold text-black text-[44px]">
Free
</span>
</div>
<div>
<a href="#" className="btn btn-black">
Get Started
</a>
</div>
</div>
<div
className="flex lg:flex-row flex-col lg:justify-between space-y-6 lg:space-y-0 lg:space-x-8 items-center bg-white py-10 px-10
rounded-md "
>
<div>
<span className=" text-2xl text-primary font-bold">
Professional
</span>
</div>
<div>
<ul className=" space-y-4">
<li className=" flex space-x-[9px]">
<img src={check} alt="" />
<span>Sed sed felis neque vehicula iaculis</span>
</li>
<li className=" flex space-x-[9px]">
<img src={check} alt="" />
<span>Cras consequat ligula vel augue</span>
</li>
<li className=" flex space-x-[9px]">
<img src={check} alt="" />
<span>Maecenas bibendum massa eget</span>
</li>
</ul>
</div>
<div className="w-[150px] text-center">
<span className="block font-bold text-black text-[44px]">
$89.69
</span>
</div>
<div>
<a href="#" className="btn btn-primary">
Get Started
</a>
</div>
</div>
<div
className="flex lg:flex-row flex-col space-y-6 lg:space-y-0 lg:justify-between lg:space-x-8 items-center py-10 px-10
rounded-md "
>
<div>
<span className=" text-2xl text-black font-bold">Business</span>
</div>
<div>
<ul className=" space-y-4">
<li className=" flex space-x-[9px]">
<img src={check} alt="" />
<span>Sed sed felis neque vehicula iaculis</span>
</li>
<li className=" flex space-x-[9px]">
<img src={check} alt="" />
<span>Cras consequat ligula vel augue</span>
</li>
<li className=" flex space-x-[9px]">
<img src={check} alt="" />
<span>Maecenas bibendum massa eget</span>
</li>
</ul>
</div>
<div className="w-[150px] text-center">
<span className="block font-bold text-black text-[44px]">
$129.69
</span>
</div>
<div>
<a href="#" className="btn btn-black">
Get Started
</a>
</div>
</div>
</div>
</div>
</div>
);
};
export default Achivement;
@@ -0,0 +1,66 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
import { Link } from "react-router-dom";
import { blogArticleData } from "../../constant/dummyData";
import { calender2, clock2 } from "../../constant/images";
const BlogArticle = () => {
return (
<div className=" section-padding">
<div className="container">
<div className="text-center">
<div className="mini-title">Blog & Airticle</div>
<div className="column-title ">
Take A Look At The Latest <span className="shape-bg">Articles</span>
</div>
</div>
<div className="grid xl:grid-cols-2 grid-cols-1 gap-[30px] lg:pt-10 pt-5">
{blogArticleData.map((item, index) => (
<div
className=" bg-white shadow-box7 rounded-[8px] group transition duration-150 ring-0 hover:ring-2 hover:ring-primary
hover:shadow-box8 sm:flex p-4 sm:space-x-6 space-y-6 sm:space-y-0"
key={index}
>
<div className="flex-none">
<div className="sm:w-[200px] h-[182px] rounded relative">
<img
src={item.img}
alt=""
className=" w-full h-full object-cover rounded"
/>
</div>
</div>
<div className="course-content flex-1">
<div className="mb-4">
<span className="inline-block text-base text-secondary bg-[#E3F9F6] font-medium rounded px-[10px] py-1">
Learning
</span>
</div>
<h4 className=" lg:text-2xl lg:leading-[36px] text-1xl mb-4 font-bold">
<Link
to={'/react-templates/edumim/single-blog'}
className=" group-hover:text-primary transitio duration-150"
>
{item.title}
</Link>
</h4>
<div className="flex space-x-6">
<a className=" flex items-center space-x-2" href="#">
<img src={calender2} alt="" />
<span>21 Feb, 22</span>
</a>
<a className=" flex items-center space-x-2" href="#">
<img src={clock2} alt="" />
<span>4k Lesson</span>
</a>
</div>
</div>
</div>
))}
</div>
</div>
</div>
);
};
export default BlogArticle;
@@ -0,0 +1,53 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
import ct1 from "../../assets/images/icon/ct1.svg";
import ct2 from "../../assets/images/icon/ct2.svg";
import ct3 from "../../assets/images/icon/ct3.svg";
import ct4 from "../../assets/images/icon/ct4.svg";
import ct5 from "../../assets/images/icon/ct5.svg";
import ct6 from "../../assets/images/icon/ct6.svg";
const Categories = () => {
return (
<div className="feature-area bg-[url('../images/all-img/section-bg-6.png')] bg-cover bg-no-repeat bg-center section-padding">
<div className="container">
<div className="text-center">
<div className="mini-title">Course Categories</div>
<div className="column-title ">
Browse Top <span className="shape-bg">Categories</span>
</div>
</div>
<div className="grid lg:grid-cols-3 md:grid-cols-2 grid-cols-1 gap-[30px] pt-10">
{[ct1, ct2, ct3, ct4, ct5, ct6].map((item, index) => (
<a
className=" rounded-[8px] transition-all duration-300 hover:shadow-box bg-white flex space-x-5 p-[30px] border-l-4
border-white hover:border-primary"
href="#"
key={index}
>
<div className="w-[72px] h-[72px] rounded bg-white relative group-hover:bg-[#FFE8E8]">
<img
src={item}
alt=""
className="w-full h-full object-cover rounded "
/>
</div>
<div className="course-content">
<h4 className=" lg:text-2xl text-1xl mb-2 font-bold">
Data Science
</h4>
<p>{Math.floor(5 + Math.random() * 70)} Courses</p>
</div>
</a>
))}
</div>
<div className="text-center pt-[70px]">
<a href="#" className=" btn btn-primary">
View All Categories
</a>
</div>
</div>
</div>
);
};
export default Categories;
@@ -0,0 +1,36 @@
import React from "react";
import { achivementCounter } from "../../constant/dummyData";
const Counter = () => {
return (
<div className=" section-padding">
<div className="container">
<div className="text-center">
<div className="mini-title">Some Fun Fact</div>
<div className="column-title ">
Our Great <span className="shape-bg">Achievement</span>
</div>
</div>
<div className="grid xl:grid-cols-4 md:grid-cols-2 grid-cols-1 gap-[30px] pt-10">
{achivementCounter.map((item, index) => (
<div
className="bg-white shadow-box7 text-center pt-[64px] pb-8 px-[50px] rounded-[8px] relative my-4"
key={index}
>
<img
src={item.icon}
alt=""
className=" absolute left-1/2 -translate-x-1/2 -top-10"
/>
<h4 className=" text-[44px] leading-[66px] text-black font-bold mb-1 ">
<span className="counter">{item.num}</span> +
</h4>
<p>{item.sector}</p>
</div>
))}
</div>
</div>
</div>
);
};
export default Counter;
@@ -0,0 +1,77 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
import { courseData } from "../../constant/dummyData";
import { file2, review, user2 } from "../../constant/images";
const Courses = () => {
return (
<div className=" section-padding bg-[url('../images/all-img/section-bg-7.png')] bg-cover bg-no-repeat bg-center">
<div className="container">
<div className="text-center">
<div className="mini-title">Featured Courses</div>
<div className="column-title ">
Choose Unlimited <span className="shape-bg">Courses</span>
</div>
</div>
<div className="grid xl:grid-cols-2 grid-cols-1 gap-[30px] lg:pt-10 pt-5">
{courseData.map((course, index) => (
<a
className=" bg-white rounded-[8px] transition duration-150 border-b-4 hover:border-primary border-transparent
hover:shadow-box6 sm:flex p-8 sm:space-x-6 space-y-6 sm:space-y-0"
href="#"
key={index}
>
<div className="flex-none">
<div className="sm:w-[159px] h-[159px] rounded relative">
<img
src={course.img}
alt={course.img}
className=" w-full h-full object-cover rounded"
/>
</div>
</div>
<div className="course-content flex-1">
<div className="text-primary font-bold lg:text-2xl text-1xl mb-2 flex justify-between">
<span className=" inline-block">{course.price}</span>
<span className=" flex space-x-1">
{[1, 2, 3, 4].map((star, index) => (
<span
className="w-4 h-4 inline-block "
key={star + index}
>
<img
src={review}
alt=""
className=" w-full h-full block object-cover"
/>
</span>
))}
</span>
</div>
<h4 className=" lg:text-2xl lg:eading-[36px] text-1xl mb-4 font-bold">
{course.title}
</h4>
<div className="flex space-x-6">
<span className=" flex items-center space-x-2">
<img src={file2} alt="" />
<span>2 Lessons</span>
</span>
<span className=" flex items-center space-x-2">
<img src={user2} alt="" />
<span>4k Lesson</span>
</span>
</div>
</div>
</a>
))}
</div>
<div className="text-center lg:pt-16 pt-10">
<a href="#" className=" btn btn-primary">
View All Courses
</a>
</div>
</div>
</div>
);
};
export default Courses;
+170
View File
@@ -0,0 +1,170 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
import {
fbIcon,
footerLogo2,
insIcon,
pnIcon,
twIcon,
insIcon1,
insIcon2,
insIcon3,
insIcon4,
insIcon5,
insIcon6,
} from "../../constant/images";
const Footer = () => {
return (
<footer>
<div className="relative z-[1] mx-auto max-w-[1170px] rounded-md bg-[url('../images/all-img/section-bg-3.png')] bg-cover bg-center bg-no-repeat p-20">
<div className="items-center space-x-4 space-y-5 text-center lg:flex lg:space-y-0 lg:text-left">
<div className="flex-1">
<div className="max-w-[590px] text-3xl font-bold text-white md:text-3xl lg:text-[44px] lg:leading-[61px]">
Education Is About Creating Leaders For Tomorrow
</div>
</div>
<div className="flex-none">
<button className="btn bg-white font-bold text-black">
Register Today
</button>
</div>
</div>
</div>
<div className="-mt-[150px] bg-[url('../images/all-img/section-bg-10.png')] bg-cover bg-center bg-no-repeat pt-[150px]">
<div className="section-padding container">
<div className="grid grid-cols-12 gap-5">
<div className="single-footer col-span-12 lg:col-span-6 xl:col-span-3">
<div className="lg:max-w-[270px]">
<a href="#" className="mb-10 block">
<img src={footerLogo2} alt="" />
</a>
<p>
Lorem ipsum amet, consectetur adipiscing elit. Suspendis
varius enim eros elementum tristique. Duis cursus.
</p>
<ul className="flex space-x-4 pt-8">
<li>
<a href="#" className="flex h-10 w-10">
<img src={fbIcon} alt="" />
</a>
</li>
<li>
<a href="#" className="flex h-10 w-10">
<img src={twIcon} alt="" />
</a>
</li>
<li>
<a href="#" className="flex h-10 w-10">
<img src={pnIcon} alt="" />
</a>
</li>
<li>
<a href="#" className="flex h-10 w-10">
<img src={insIcon} alt="" />
</a>
</li>
</ul>
</div>
</div>
<div className="single-footer col-span-12 lg:col-span-6 xl:col-span-6">
<div className="ml-auto xl:w-[80%]">
<div className="flex space-x-[80px]">
<div className="flex-1 lg:flex-none">
<h4 className="mb-8 text-2xl font-bold text-black">
Links
</h4>
<ul className="list-item space-y-5">
<li>
<a href="#">Home</a>
</li>
<li>
<a href="#">About Us</a>
</li>
<li>
<a href="#">Pricing</a>
</li>
<li>
<a href="#">Courses</a>
</li>
<li>
<a href="#">Contact Us</a>
</li>
<li>
<a href="#">Blog</a>
</li>
</ul>
</div>
<div className="flex-1 lg:flex-none">
<h4 className="mb-8 text-2xl font-bold text-black">
Legal
</h4>
<ul className="list-item space-y-5">
<li>
<a href="#">Legal</a>
</li>
<li>
<a href="#">Tearms of Use</a>
</li>
<li>
<a href="#">Tearm & Condition</a>
</li>
<li>
<a href="#">Payment Method</a>
</li>
<li>
<a href="#">Privacy Policy</a>
</li>
<li>
<a href="#">Privacy Policy</a>
</li>
</ul>
</div>
</div>
</div>
</div>
<div className="single-footer col-span-12 lg:col-span-6 xl:col-span-3">
<h4 className="mb-8 text-2xl font-bold text-black">
Instagram Post
</h4>
<div className="grid grid-cols-3 gap-4">
{[
insIcon1,
insIcon2,
insIcon3,
insIcon4,
insIcon5,
insIcon6,
].map((item, index) => (
<div key={index}>
<a
href="#"
className="group relative block h-20 w-full rounded"
>
<img
src={item}
alt=""
className="block h-full w-full rounded object-cover"
/>
<div className="absolute left-0 top-0 flex h-full w-full flex-col items-center justify-center rounded bg-black bg-opacity-40 text-3xl text-white opacity-0 transition-all duration-150 group-hover:opacity-100">
<span className="scale-0 transition-all duration-150 group-hover:scale-100">
<iconify-icon icon="akar-icons:instagram-fill"></iconify-icon>
</span>
</div>
</a>
</div>
))}
</div>
</div>
</div>
</div>
<div className="container border-t border-[#E9D4D0] py-8 text-center text-base">
&copy; Copyright 2022 | Edumim Template | All Rights Reserved
</div>
</div>
</footer>
);
};
export default Footer;
@@ -0,0 +1,285 @@
/* eslint-disable no-unused-expressions */
/* eslint-disable jsx-a11y/anchor-is-valid */
import React, { useEffect, useRef, useState } from "react";
import wfb from "../../assets/images/social/wfb.svg";
import wt from "../../assets/images/social/wt.svg";
import wi from "../../assets/images/social/w-i.svg";
import wins from "../../assets/images/social/w-ins.svg";
import search from "../../assets/images/svg/search.svg";
import logo from "../../assets/images/logo/logo.svg";
import man2 from "../../assets/images/banner/man2.png";
import { Link } from "react-router-dom";
import MobileMenu from "../MobileMenu";
const HomeTwoHeader = () => {
const scrollNav = useRef(null);
const [activeMobileMenu, setActiveMobileMenu] = useState(false);
const [showSearchBar, setShowSearchBar] = useState(false);
let body = document.querySelector("body");
const handleShowSearchBar = () => {
setShowSearchBar(!showSearchBar);
};
useEffect(() => {
// scrolling nav
window.addEventListener("scroll", () => {
let windowScroll = window.scrollY > 100;
scrollNav.current.classList.toggle("rt-sticky-active", windowScroll);
});
}, []);
showSearchBar
? body.classList.add("modal-open")
: body.classList.remove("modal-open");
body.classList.contains("modal-open")
? (document.documentElement.scrollTop = 0)
: "";
return (
<section className=" xl:min-h-screen bg-[url('../images/banner/2.png')] bg-cover bg-no-repeat bg-center overflow-hidden xl:pb-[130px]">
<header className="site-header ">
<div className="bg-primary text-white py-3 md:block hidden">
<div className=" container">
<div className="grid lg:grid-cols-2 grid-cols-1 gap-5 ">
<ul className=" flex divide-x divide-white divide-opacity-25 text-base lg:justify-start justify-center">
<li className="mr-4">12893 Green Valley Street, USA 83682</li>
<li className="pl-4">
<a href="mailto:contactinfo@gmail.com">
contactinfo@gmail.com
</a>
</li>
</ul>
<ul className=" text-base flex lg:justify-end justify-center divide-x divide-white divide-opacity-25 items-center">
<li className="px-2">Follow Us On:</li>
<li className="px-2">
<a href="#">
<img src={wfb} alt="" />
</a>
</li>
<li className="px-2">
<a href="#">
<img src={wt} alt="" />
</a>
</li>
<li className="px-2">
<a href="#">
<img src={wi} alt="" />
</a>
</li>
<li className="px-2">
<a href="#">
<img src={wins} alt="" />
</a>
</li>
</ul>
</div>
</div>
</div>
<div
className="main-header py-8 header-normal2 rt-sticky top-0 w-full z-[999] "
ref={scrollNav}
>
<div className="container">
<div className=" flex items-center justify-between ">
<Link
to={"/react-templates/edumim"}
className="brand-logo flex-none lg:mr-10 md:w-auto max-w-[120px] "
>
<img src={logo} alt="" />
</Link>
<div className="flex items-center flex-1">
<div className="flex-1 main-menu relative mr-[74px]">
<ul className="menu-active-classNamees">
<li className={`menu-item-has-children `}>
<a href="#">Home</a>
<ul className="sub-menu">
<li>
<Link to={"/react-templates/edumim"}> Home One</Link>
</li>
<li>
<Link to={"/react-templates/edumim/home-two"}>
Home Two
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/home-three"}>
Home Three
</Link>
</li>
</ul>
</li>
<li className="menu-item-has-children">
<a href="#">Pages</a>
<ul className="sub-menu">
<li>
<Link to={"/react-templates/edumim/about"}>
About 1
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/about-two"}>
About 2
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/instructor"}>
Instructor
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/instructor-two"}>
Instructor 2
</Link>
</li>
<li>
<Link
to={"/react-templates/edumim/instructor-details"}
>
Instructor Single
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/event"}>
Event
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/event-single"}>
Event Single
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/error"}>404</Link>
</li>
</ul>
</li>
<li className="menu-item-has-children">
<a href="#">Courses</a>
<ul className="sub-menu">
<li>
<Link to={"/react-templates/edumim/courses"}>
Courses
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/courses-sidebar"}>
Courses Sidebar
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/single-course"}>
Single Course
</Link>
</li>
</ul>
</li>
<li className="menu-item-has-children">
<a href="#">Blog</a>
<ul className="sub-menu">
<li>
<Link to={"/react-templates/edumim/blog-standard"}>
Blog Standard
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/single-blog"}>
Blog Single
</Link>
</li>
</ul>
</li>
<li>
<Link to={"/react-templates/edumim/contacts"}>
Contacts
</Link>
</li>
</ul>
<div className=" lg:block hidden">
<div className="border border-gray rounded-md h-[46px] modal-search">
<input
type="text"
className=" block w-full rounded-md h-full border-none ring-0 focus:outline-none focus:ring-0"
placeholder="Search.."
/>
</div>
</div>
</div>
<div className="flex-none flex space-x-[18px]">
<div>
<button
type="button"
className=" md:w-[56px] md:h-[56px] h-10 w-10 rounded bg-white flex flex-col items-center justify-center modal-
trigger"
onClick={handleShowSearchBar}
>
<img src={search} alt="" />
</button>
</div>
<div className=" block lg:hidden">
<button
type="button"
className=" text-3xl md:w-[56px] h-10 w-10 md:h-[56px] rounded bg-white flex flex-col items-center justify-center menu-click"
onClick={() => setActiveMobileMenu(!activeMobileMenu)}
>
<iconify-icon
icon="cil:hamburger-menu"
rotate="180deg"
></iconify-icon>
</button>
</div>
<div className=" hidden lg:block">
<a
href="#"
className="btn bg-black text-white py-[15px] px-8"
>
Start Free Trial
</a>
</div>
</div>
</div>
</div>
</div>
</div>
</header>
<div className="container">
<div className=" lg:hidden block">
<div className="border border-gray rounded-md h-[46px] modal-search">
<input
type="text"
className=" block w-full rounded-md h-full border-none ring-0 focus:outline-none focus:ring-0"
placeholder="Search.."
/>
</div>
</div>
</div>
{activeMobileMenu && (
<MobileMenu
activeMenu={activeMobileMenu}
setActiveMenu={setActiveMobileMenu}
/>
)}
<div className="container relative">
<div className="xl:max-w-[570px] xl:pt-[129px] lg:py-28 md:py-20 py-14 lg:space-y-10 space-y-6">
<div className=" lg:text-[77px] lg:leading-[106.4px] md:text-6xl md:leading-[72px] text-black font-bold text-5xl leading-[62px]">
Better <span className="text-primary">Learning Future</span> Starts
With Edumim
</div>
<div className=" plain-text text-gray leading-[30px] border-l-2 border-primary pl-4">
It is long established fact that reader distracted by the readable
content.
</div>
<div className="md:flex md:space-x-4 space-y-3 md:space-y-0 pt-5">
<a href="#" className="btn btn-primary">
Get Started Now
</a>{" "}
<a href="#" className="btn btn-black">
Get Started Now
</a>
</div>
</div>
<div className="imge-box hidden xl:block absolute right-[-60px] top-1/2 -translate-y-1/2 mt-[60px] ">
<img src={man2} alt="" />
</div>
</div>
</section>
);
};
export default HomeTwoHeader;
@@ -0,0 +1,41 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
import { video } from "../../constant/images";
import Brands from "../Brands";
const Video = () => {
return (
<div className=" relative video-area section-padding-bottom z-[1]">
<div
className="bg-[url('../images/all-img/section-bg-7.png')] bg-cover bg-no-repeat bg-center absolute left-0 bottom-0 h-[60%]
w-full z-[-1]"
></div>
<div className="container ">
<div className="video-wrapper xl:mb-[205px] lg:mb-[150px] mb-20">
<div className="xl:h-[652px] lg:h-[500px] h-[400px] max-w-[1112px] mx-auto p-6 bg-white shadow-box8 rounded-lg relative ">
<img
src={video}
alt=""
className=" object-cover w-full h-full block"
/>
<div
className="h-[80px] w-[80px] mx-auto absolute left-1/2 top-1/2 -translate-y-1/2 -translate-x-1/2 flex flex-col justify-center
items-center"
>
<div className="animate-ping absolute inline-flex h-full w-full rounded-full ring-white ring-2"></div>
<a
href="#"
className="bg-white w-20 h-20 flex flex-col justify-center items-center rounded-full text-3xl text-primary "
>
<iconify-icon icon="bi:play-fill"></iconify-icon>
</a>
</div>
</div>
</div>
</div>
<Brands />
</div>
);
};
export default Video;
@@ -0,0 +1,55 @@
import React from "react";
import { about4, miniHeart, miniTarget } from "../../constant/images";
const WhyChoose = () => {
return (
<div className="about-area section-padding bg-[url('../images/all-img/section-bg-8.png')] bg-cover bg-no-repeat bg-center">
<div className="container">
<div className="lg:grid grid-cols-12 lg:gap-10 space-y-6 lg:space-y-0">
<div className="xl:col-span-5 lg:col-span-6 col-span-12">
<div className="mini-title">Why Choose Edumim</div>
<h4 className="column-title ">
Grow Your Skill, Define Your {' '}
<span className="shape-bg pb-4">Bright Future</span>
</h4>
<div className=" mb-8">
Learn at your own pace, move between multiple courses, or switch
to a different course. Earn a certificate for every learning
program that you complete at no additional cost multiple courses
this year.
</div>
<div>
<div className="grid lg:grid-cols-2 grid-cols-1 gap-[30px] md:block">
<div className="bg-white shadow-box7 p-6 rounded">
<div>
<img src={miniTarget} alt="" />
</div>
<div className=" font-semibold leading-[27px] text-black mt-3">
Learn At Your Own Multiple Courses
</div>
</div>
<div className="bg-white shadow-box7 p-6 rounded">
<div>
<img src={miniHeart} alt="" />
</div>
<div className=" font-semibold leading-[27px] text-black mt-3">
We Provide Study Materials
</div>
</div>
</div>
</div>
</div>
<div className="xl:col-span-7 lg:col-span-6 col-span-12 ">
<img
src={about4}
alt=""
className=" block w-full object-contain "
/>
</div>
</div>
</div>
</div>
);
};
export default WhyChoose;
+24
View File
@@ -0,0 +1,24 @@
import React from "react";
const InsTructorBanner = ({ instructor, teamMember, num, about }) => {
return (
<div class="breadcrumbs section-padding bg-[url('../images/all-img/bred.png')] bg-cover bg-center bg-no-repeat">
<div class="container text-center">
<h2>{about} Instructor</h2>
<nav>
<ol class="flex items-center justify-center space-x-3">
<li class="breadcrumb-item">
<a href="index.html">Pages </a>
</li>
<li class="breadcrumb-item">-</li>
<li class="text-primary">
{instructor} {teamMember} {num}
</li>
</ol>
</nav>
</div>
</div>
);
};
export default InsTructorBanner;
+204
View File
@@ -0,0 +1,204 @@
/* eslint-disable no-unused-expressions */
/* eslint-disable jsx-a11y/anchor-is-valid */
import React, { useState } from "react";
import { Link } from "react-router-dom";
import logo from "../assets/images/logo/logo.svg";
import { fbIcon, twIcon, pnIcon, insIcon } from "../constant/images";
const MobileMenu = ({ activeMenu, setActiveMenu }) => {
const [showHomeMenu, setShowHomeMenu] = useState(false);
const [showPageMenu, setShowPageMenu] = useState(false);
const [showBlogMenu, setShowBlogMenu] = useState(false);
const [showCourseMenu, setShowCourseMenu] = useState(false);
const handleShowHomeMenu = () => {
setShowHomeMenu(!showHomeMenu);
};
const handleShowPageMenu = () => {
setShowPageMenu(!showPageMenu);
};
const handleShowBlogMenu = () => {
setShowBlogMenu(!showBlogMenu);
};
const handleShowCourseMenu = () => {
setShowCourseMenu(!showCourseMenu);
};
return (
<>
<div className="openmobile-menu fixed top-0 h-screen pt-10 pb-6 bg-white shadow-box2 w-[320px] overflow-y-auto flex flex-col z-[999] active-mobile-menu">
<div className="flex justify-between px-6 flex-none">
<Link
to={"/react-templates/edumim/home"}
className="brand-logo flex-none mr-10 "
>
<img src={logo} alt="logo" />
</Link>
<span
className=" text-3xl text-black cursor-pointer rt-mobile-menu-close"
onClick={() => {
setActiveMenu(!activeMenu);
}}
>
<iconify-icon icon="fe:close"></iconify-icon>
</span>
</div>
<div className="mobile-menu mt-6 flex-1 ">
<ul className="menu-active-classNamees">
<li
className={`menu-item-has-children ${showHomeMenu ? "open" : ""}`}
onClick={handleShowHomeMenu}
>
<a href="#">Home</a>
<ul
className="sub-menu"
style={
showHomeMenu ? { display: "block" } : { display: "none" }
}
>
<li>
<Link to={"/react-templates/edumim"}>Home One</Link>
</li>
<li>
<Link to={"/react-templates/edumim/home-two"}>Home Two</Link>
</li>
<li>
<Link to={"/react-templates/edumim/home-three"}>
Home Three
</Link>
</li>
</ul>
</li>
<li
className={`menu-item-has-children ${showPageMenu ? "open" : ""}`}
onClick={handleShowPageMenu}
>
<a href="#">Pages</a>
<ul
className="sub-menu"
style={
showPageMenu ? { display: "block" } : { display: "none" }
}
>
<li>
<Link to={"/react-templates/edumim/about"}>About 1</Link>
</li>
<li>
<Link to={"/react-templates/edumim/about-two"}>About 2</Link>
</li>
<li>
<Link to={"/react-templates/edumim/instructor"}>
Instructor
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/instructor-two"}>
Instructor 2
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/instructor-details"}>
Instructor Single
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/event"}>Event</Link>
</li>
<li>
<Link to={"/react-templates/edumim/event-single"}>
Event Single
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/error"}>404</Link>
</li>
</ul>
</li>
<li
className={`menu-item-has-children ${
showCourseMenu ? "open" : ""
}`}
onClick={handleShowCourseMenu}
>
<a href="#">Courses</a>
<ul
className="sub-menu"
style={
showCourseMenu ? { display: "block" } : { display: "none" }
}
>
<li>
<Link to={"/react-templates/edumim/courses"}>courses</Link>
</li>
<li>
<Link to={"/react-templates/edumim/courses-sidebar"}>
courses Sidebar
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/single-course"}>
Single-course
</Link>
</li>
</ul>
</li>
<li
className={`menu-item-has-children ${showBlogMenu ? "open" : ""}`}
onClick={handleShowBlogMenu}
>
<a href="#">Blog</a>
<ul
className="sub-menu"
style={
showBlogMenu ? { display: "block" } : { display: "none" }
}
>
<li>
<Link to={"/react-templates/edumim/blog-standard"}>
Blog Standard
</Link>
</li>
<li>
<Link to={"/react-templates/edumim/single-blog"}>
Single Blog
</Link>
</li>
</ul>
</li>
<li>
<Link to={"/react-templates/edumim/contacts"}>Contacts</Link>
</li>
</ul>
</div>
<div className=" flex-none pb-4">
<div className=" text-center text-black font-semibold mb-2">
Follow Us
</div>
<ul className="flex space-x-4 justify-center ">
<li>
<a href="#" className="flex h-10 w-10">
<img src={fbIcon} alt="fbIcon" />
</a>
</li>
<li>
<a href="#" className="flex h-10 w-10">
<img src={twIcon} alt="twiter" />
</a>
</li>
<li>
<a href="#" className="flex h-10 w-10">
<img src={pnIcon} alt="pnIcon" />
</a>
</li>
<li>
<a href="#" className="flex h-10 w-10">
<img src={insIcon} alt="insIcon" />
</a>
</li>
</ul>
</div>
</div>{" "}
<div className={`rt-mobile-menu-overlay ${activeMenu && "active"}`}></div>
</>
);
};
export default MobileMenu;
+46
View File
@@ -0,0 +1,46 @@
import React from "react";
import mailWhite from "../assets/images/svg/mail-white.svg";
import bigMail from "../assets/images/svg/big-mail.svg";
const NewsLetter = () => {
return (
<div className="bg-[url('../images/all-img/section-bg-3.png')] bg-cover bg-no-repeat bg-center py-20">
<div className="container">
<div className="lg:flex lg:items-center lg:space-x-[70px]">
<div className=" flex-none">
<div className="flex items-center space-x-8 text-white max-w-[327px] mx-auto lg:mb-0 md:mb-10 mb-5">
<div className=" flex-none ">
<img src={bigMail} alt="" />
</div>
<div className="flex-1 lg:text-[33px] lg:leading-[51px] md:text-3xl text-2xl font-bold">
Subscribe to My Newsletter
</div>
</div>
</div>
<div className=" flex-1">
<div className="md:flex items-center relative md:space-x-6 md:space-y-0 space-y-4 ">
<div className="flex-1 relative">
<span className=" absolute left-0 top-1/2 -translate-y-1/2 ">
<img src={mailWhite} alt="" />
</span>
<input
type="text"
placeholder="Enter your mail address"
className=" border-b border-t-0 border-l-0 border-r-0 border-[#B2E2DF] ring-0 focus:ring-0 bg-transparent text-white
placeholder:text-[#B2E2DF] focus:outline-0 focus:border-[#B2E2DF] transition pl-8 text-lg"
/>
</div>
<div className="flex-none">
<button className="btn bg-white text-secondary md:w-auto w-full">
Get Started Now
</button>
</div>
</div>
</div>
</div>
</div>
</div>
);
};
export default NewsLetter;
+28
View File
@@ -0,0 +1,28 @@
import React, { useEffect } from "react";
import { Link } from "react-router-dom";
const PageBanner = ({ pageName, pageTitle, num, title }) => {
useEffect(() => {
document.documentElement.scrollTop = 0;
}, []);
return (
<div className="breadcrumbs section-padding bg-[url('../images/all-img/bred.png')] bg-cover bg-center bg-no-repeat">
<div className="container text-center">
<h2>{title}</h2>
<nav>
<ol className="flex items-center justify-center space-x-3">
<li className="breadcrumb-item">
<Link to={"/react-templates/edumim/home"}> Pages</Link>
</li>
<li className="breadcrumb-item">-</li>
<li className="text-primary">
{pageName} {pageTitle} {num}
</li>
</ol>
</nav>
</div>
</div>
);
};
export default PageBanner;
+30
View File
@@ -0,0 +1,30 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
import { Link } from "react-router-dom";
import { error404 } from "../../constant/images";
import Footer from "../Footer";
import Header from "../Header";
const ErrorPage = () => {
return (
<>
<Header />
<div className=" min-h-screen bg-[url('../images/all-img/404-bg.png')] bg-cover bg-no-repeat bg-center">
<div className="max-w-[570px] mx-auto flex flex-col items-center text-center justify-center min-h-screen px-4">
<img src={error404} alt="" className="mb-14" />
<h2 className=" mb-6">Page not found</h2>
<div className="mb-10">
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
eiusmod tempor labore et dolore magna aliqua.
</div>
<Link to={"/react-templates/edumim"} className="btn btn-primary">
Back To Home
</Link>
</div>
</div>
<Footer />
</>
);
};
export default ErrorPage;
+28
View File
@@ -0,0 +1,28 @@
import React from "react";
import Feature from "../Feature";
import Footer from "../Footer";
import Header from "../Header";
import Accordion from "../HomeThreeComponents/Accordion";
import Team from "../HomeThreeComponents/Team";
import About from "../HomeTwoComponents/About";
import Counter from "../HomeTwoComponents/Counter";
import PageBanner from "../PageBanner";
import Testimonials from "../Testimonials";
const AboutOne = () => {
return (
<>
<Header />
<PageBanner title={"About Us"} pageTitle="About Us" num={1} />
<About />
<Feature />
<Counter />
<Testimonials />
<Team />
<Accordion />
<Footer />
</>
);
};
export default AboutOne;
+31
View File
@@ -0,0 +1,31 @@
import React from "react";
import Footer from "../Footer";
import Header from "../Header";
import About from "../HomeThreeComponents/About";
import CourseBlock from "../HomeThreeComponents/CourseBlock";
import Video from "../HomeTwoComponents/Video";
import NewsLetter from "../NewsLetter";
import PageBanner from "../PageBanner";
import Platform from "../Platform";
import Team from "../Team";
import Topics from "../Topics";
const AboutTwo = () => {
return (
<>
<Header />
<PageBanner title={"About Us"} pageTitle='About Us' num={2} />
<About />
<Topics />
<Platform />
<CourseBlock />
<Video />
<Team />
<NewsLetter />
<Footer />
</>
);
};
export default AboutTwo;
+435
View File
@@ -0,0 +1,435 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
import {
bThumb1,
bThumb2,
bThumb3,
calender,
clockIcon,
insIcon1,
insIcon2,
insIcon3,
insIcon4,
insIcon5,
insIcon6,
rc1,
rc2,
rc3,
search,
} from "../../constant/images";
import Footer from "../Footer";
import Header from "../Header";
import PageBanner from "../PageBanner";
const BLogStandard = () => {
return (
<>
<Header />
<PageBanner title={"Blog Standard"} pageName={"Blog Standard"} />
<div className="nav-tab-wrapper tabs section-padding">
<div className="container">
<div className="grid grid-cols-12 gap-[30px]">
<div className="lg:col-span-8 col-span-12">
<div className="grid grid-cols-1 gap-[30px]">
{[bThumb1, bThumb2, bThumb3].map((item, index) => (
<div className=" bg-white shadow-box12 rounded-[8px] transition duration-100 hover:shadow-box13">
<div
className="course-thumb h-[420px] rounded-t-[8px] relative"
key={index}
>
<img
src={item}
alt=""
className=" w-full h-full object-cover rounded-t-[8px]"
/>
</div>
<div className="course-content p-8">
<span className="bg-secondary py-1 px-3 text-lg font-semibold rounded text-white inline-block">
Education
</span>
<h3 className=" mb-4 mt-4">
<a
href="single-blog"
className=" hover:text-primary transition duration-150"
>
Analytics To Help You Understand Your Customers
Properly
</a>
</h3>
<p>
There are many variations of passages of Lorem Ipsum
available, but the majority have suffered alteration in
some form, by injected humour.
</p>
<div className="flex lg:space-x-10 space-x-5 mt-6">
<a
className=" flex items-center space-x-2"
href="blog-single.html"
>
<img src={calender} alt="" />
<span>21 Feb, 22</span>
</a>
<a
className=" flex items-center space-x-2"
href="single-blog"
>
<img src={clockIcon} alt="" />
<span>3 Min Read</span>
</a>
</div>
</div>
</div>
))}
</div>
<div className="pagination mt-14">
<ul className=" flex justify-center space-x-3">
<li className="inline-flex">
<a
href="#"
className="flex w-12 h-12 flex-col items-center justify-center bg-[#ECECEC] rounded font-semibold"
>
<iconify-icon
icon="heroicons:chevron-double-left-20-solid"
class="text-2xl"
></iconify-icon>
</a>
</li>
<li className="inline-flex">
<a
href="#"
className="flex w-12 h-12 flex-col items-center justify-center bg-primary text-white rounded font-semibold"
>
1
</a>
</li>
<li className="inline-flex">
<a
href="#"
className="flex w-12 h-12 flex-col items-center justify-center bg-[#ECECEC] rounded font-semibold"
>
2
</a>
</li>
<li className="inline-flex">
<a
href="#"
className="flex w-12 h-12 flex-col items-center justify-center bg-[#ECECEC] rounded font-semibold"
>
3
</a>
</li>
<li className="inline-flex">
<a
href="#"
className="flex w-12 h-12 flex-col items-center justify-center bg-[#ECECEC] rounded font-semibold"
>
4
</a>
</li>
<li className="inline-flex">
<a
href="#"
className="flex w-12 h-12 flex-col items-center justify-center bg-[#ECECEC] rounded font-semibold"
>
<iconify-icon
icon="heroicons:chevron-double-right-20-solid"
class="text-2xl"
></iconify-icon>
</a>
</li>
</ul>
</div>
</div>
<div className="lg:col-span-4 col-span-12">
<div className="sidebarWrapper space-y-[30px]">
<div className="wdiget widget_search">
<div className="bg-[#F8F8F8] flex rounded-md shadow-e1 items-center py-[4px] pl-3 relative">
<div className="flex-1">
<input
type="text"
placeholder="Search keyword..."
className="border-none focus:ring-0 bg-transparent"
/>
</div>
<div className="flex-none">
<button className="btn btn-primary">
<img src={search} alt="" />
</button>
</div>
</div>
</div>
<div className="wdiget widget_catagory">
<h4 className="widget-title">Categories</h4>
<ul className=" list-item space-y-4">
<li className=" block">
<a
href="#"
className=" flex justify-between bg-[#F8F8F8] py-[17px] px-5 rounded hover:bg-primary hover:text-white transition-all
duration-150"
>
<span>Development (23)</span>
<span class="text-2xl">
<iconify-icon icon="heroicons:chevron-right-20-solid"></iconify-icon>
</span>
</a>
</li>
<li className=" block">
<a
href="#"
className=" flex justify-between bg-[#F8F8F8] py-[17px] px-5 rounded hover:bg-primary hover:text-white transition-all
duration-150"
>
<span>Art &amp; Design (45)</span>
<span class="text-2xl">
<iconify-icon icon="heroicons:chevron-right-20-solid"></iconify-icon>
</span>
</a>
</li>
<li className=" block">
<a
href="#"
className=" flex justify-between bg-[#F8F8F8] py-[17px] px-5 rounded hover:bg-primary hover:text-white transition-all
duration-150"
>
<span>Data Science (14)</span>
<span class="text-2xl">
<iconify-icon icon="heroicons:chevron-right-20-solid"></iconify-icon>
</span>
</a>
</li>
<li className=" block">
<a
href="#"
className=" flex justify-between bg-[#F8F8F8] py-[17px] px-5 rounded hover:bg-primary hover:text-white transition-all
duration-150"
>
<span>Data Science (14)</span>
<span class="text-2xl">
<iconify-icon icon="heroicons:chevron-right-20-solid"></iconify-icon>
</span>
</a>
</li>
<li className=" block">
<a
href="#"
className=" flex justify-between bg-[#F8F8F8] py-[17px] px-5 rounded hover:bg-primary hover:text-white transition-all
duration-150"
>
<span>Technology (28)</span>
<span class="text-2xl">
<iconify-icon icon="heroicons:chevron-right-20-solid"></iconify-icon>
</span>
</a>
</li>
<li className=" block">
<a
href="#"
className=" flex justify-between bg-[#F8F8F8] py-[17px] px-5 rounded hover:bg-primary hover:text-white transition-all
duration-150"
>
<span>It Management (34)</span>
<span class="text-2xl">
<iconify-icon icon="heroicons:chevron-right-20-solid"></iconify-icon>
</span>
</a>
</li>
</ul>
</div>
<div className="wdiget widget-recent-post">
<h4 className=" widget-title">Related Courses</h4>
<ul className="list">
<li className=" flex space-x-4 border-[#ECECEC] pb-6 mb-6 last:pb-0 last:mb-0 last:border-0 border-b">
<div className="flex-none ">
<div className="h-20 w-20 rounded">
<img
src={rc1}
alt=""
className=" w-full h-full object-cover rounded"
/>
</div>
</div>
<div className="flex-1 ">
<div className="mb-1 font-semibold text-black">
How to Manage Ads For Clients The Right Way
</div>
<a className=" text-secondary font-semibold" href="#">
Read More
</a>
</div>
</li>
<li className=" flex space-x-4 border-[#ECECEC] pb-6 mb-6 last:pb-0 last:mb-0 last:border-0 border-b">
<div className="flex-none ">
<div className="h-20 w-20 rounded">
<img
src={rc2}
alt=""
className=" w-full h-full object-cover rounded"
/>
</div>
</div>
<div className="flex-1 ">
<div className="mb-1 font-semibold text-black">
How to Manage Ads For Clients The Right Way
</div>
<a className=" text-secondary font-semibold" href="#">
Read More
</a>
</div>
</li>
<li className=" flex space-x-4 border-[#ECECEC] pb-6 mb-6 last:pb-0 last:mb-0 last:border-0 border-b">
<div className="flex-none ">
<div className="h-20 w-20 rounded">
<img
src={rc3}
alt=""
className=" w-full h-full object-cover rounded"
/>
</div>
</div>
<div className="flex-1 ">
<div className="mb-1 font-semibold text-black">
How to Manage Ads For Clients The Right Way
</div>
<a className=" text-secondary font-semibold" href="#">
Read More
</a>
</div>
</li>
</ul>
</div>
<div className="wdiget">
<h4 className="widget-title">Popular Tags</h4>
<ul className="flex flex-wrap">
<li className="mr-2 mb-2">
<a
href="#"
className="bg-[#F8F8F8] px-3 py-1 rounded text-base transition-all duration-150 hover:bg-primary hover:text-white"
>
Business
</a>
</li>
<li className="mr-2 mb-2">
<a
href="#"
className="bg-[#F8F8F8] px-3 py-1 rounded text-base transition-all duration-150 hover:bg-primary hover:text-white"
>
Education
</a>
</li>
<li className="mr-2 mb-2">
<a
href="#"
className="bg-[#F8F8F8] px-3 py-1 rounded text-base transition-all duration-150 hover:bg-primary hover:text-white"
>
Design
</a>
</li>
<li className="mr-2 mb-2">
<a
href="#"
className="bg-[#F8F8F8] px-3 py-1 rounded text-base transition-all duration-150 hover:bg-primary hover:text-white"
>
Students
</a>
</li>
<li className="mr-2 mb-2">
<a
href="#"
className="bg-[#F8F8F8] px-3 py-1 rounded text-base transition-all duration-150 hover:bg-primary hover:text-white"
>
Teachers
</a>
</li>
<li className="mr-2 mb-2">
<a
href="#"
className="bg-[#F8F8F8] px-3 py-1 rounded text-base transition-all duration-150 hover:bg-primary hover:text-white"
>
classNameroom
</a>
</li>
<li className="mr-2 mb-2">
<a
href="#"
className="bg-[#F8F8F8] px-3 py-1 rounded text-base transition-all duration-150 hover:bg-primary hover:text-white"
>
Online
</a>
</li>
<li className="mr-2 mb-2">
<a
href="#"
className="bg-[#F8F8F8] px-3 py-1 rounded text-base transition-all duration-150 hover:bg-primary hover:text-white"
>
e-Learning
</a>
</li>
<li className="mr-2 mb-2">
<a
href="#"
className="bg-[#F8F8F8] px-3 py-1 rounded text-base transition-all duration-150 hover:bg-primary hover:text-white"
>
Book
</a>
</li>
</ul>
</div>
<div className="wdiget">
<h4 className="widget-title">Instagram Feed</h4>
<div className="grid grid-cols-3 gap-4">
{[
insIcon1,
insIcon2,
insIcon3,
insIcon4,
insIcon5,
insIcon6,
].map((item, index) => (
<div key={index}>
<a
href="#"
className="group relative block h-20 w-full rounded"
>
<img
src={item}
alt=""
className="block h-full w-full rounded object-cover"
/>
<div
className="absolute left-0 top-0 flex h-full w-full flex-col items-center justify-center rounded bg-black bg-opacity-40
text-3xl text-white opacity-0 transition-all duration-150 group-hover:opacity-100"
>
<span className="scale-0 transition-all duration-150 group-hover:scale-100">
<iconify-icon icon="akar-icons:instagram-fill"></iconify-icon>
</span>
</div>
</a>
</div>
))}
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<Footer />
</>
);
};
export default BLogStandard;
+74
View File
@@ -0,0 +1,74 @@
import React from "react";
import { call, mail, map } from "../../constant/images";
import ContactForm from "../ContactForm";
import Footer from "../Footer";
import Header from "../Header";
import PageBanner from "../PageBanner";
const ContactUs = () => {
return (
<>
<Header />
<PageBanner title={"Contact Us"} pageName="Contact" />
<div class="nav-tab-wrapper tabs section-padding">
<div class="container">
<div class=" grid grid-cols-12 gap-[30px]">
<div class="xl:col-span-5 lg:col-span-6 col-span-12 ">
<div class="mini-title">Contact Us</div>
<h4 class="column-title ">
Get In Touch <span class="shape-bg">Today</span>
</h4>
<div>
There are many variations of passages of Lorem Ipsum available,
but the majority have suffered.
</div>
<ul class=" list-item space-y-6 pt-8">
<li class="flex">
<div class="flex-none mr-6">
<div class="">
<img src={mail} alt="" class="" />
</div>
</div>
<div class="flex-1">
<h4 class=" lg:text-xl text-lg mb-1">Email-Us :</h4>
<div>Contactyourmail@gmail.com</div>
</div>
</li>
<li class="flex">
<div class="flex-none mr-6">
<div class="">
<img src={call} alt="" class="" />
</div>
</div>
<div class="flex-1">
<h4 class=" lg:text-xl text-lg mb-1">Call Us:</h4>
<div>+88012 2910 1781, +88019 6128 1689</div>
</div>
</li>
<li class="flex">
<div class="flex-none mr-6">
<div class="">
<img src={map} alt="" class="" />
</div>
</div>
<div class="flex-1">
<h4 class="lg:text-xl text-lg mb-1">Office :</h4>
<div>Mountain Green Road 2389, NY, USA</div>
</div>
</li>
</ul>
</div>
<div class="xl:col-span-7 lg:col-span-6 col-span-12">
<div class="bg-white shadow-box7 p-8 rounded-md">
<ContactForm />
</div>
</div>
</div>
</div>
</div>
<Footer />
</>
);
};
export default ContactUs;
+327
View File
@@ -0,0 +1,327 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React, { useState } from "react";
import {
rating1,
rating2,
rating3,
rating4,
rating5,
search,
whiteCheck,
} from "../../constant/images";
import FilteredCourse from "../FilteredCourse";
import Footer from "../Footer";
import Header from "../Header";
import PageBanner from "../PageBanner";
const CourseSideBar = () => {
return (
<>
<Header />
<PageBanner title="Courses" pageTitle="Courses" />
<div className="nav-tab-wrapper tabs pt-10 section-padding-bottom">
<div className="container">
<div className="grid grid-cols-12 gap-[30px]">
<div className="lg:col-span-8 col-span-12">
<FilteredCourse
classNameForTabOne={
"grid md:grid-cols-2 grid-cols-1 gap-[30px]"
}
classNameForTabTwo={"grid grid-cols-1 gap-[30px]"}
/>
</div>
<div class="lg:col-span-4 col-span-12">
<SideBar />
</div>
</div>
</div>
</div>
<Footer />
</>
);
};
export default CourseSideBar;
const SideBar = () => {
const [priceVal, setPriceVal] = useState(0)
return (
<div className="sidebarWrapper space-y-[30px]">
<div className="wdiget widget_search">
<div className="bg-[#F8F8F8] flex rounded-md shadow-e1 items-center py-[4px] pl-3 relative">
<div className="flex-1">
<input
type="text"
placeholder="Search keyword..."
className="border-none focus:ring-0 bg-transparent"
/>
</div>
<div className="flex-none">
<button className="btn btn-primary">
<img src={search} alt="" />
</button>
</div>
</div>
</div>
<div className="wdiget widget_catagory">
<h4 className="widget-title">Price Filter</h4>
{/* <div className="slider-range"></div> */}
<input type="range" max={10000} min={1500} className="slider-range" onChange={(e) => setPriceVal(e.target.value)} />
<div className="price_slider_amount">
<div className=" mt-6">
<div className="flex space-x-2 text-xl font-medium text-black">
<span className=" flex-none">Price:</span>
<input
type="number"
name="price"
placeholder="Add Your Price"
value={priceVal}
disabled
className="amount flex-1 border-none focus:outline-none focus:ring-0 p-0 text-xl font-medium text-black"
/>
</div>
</div>
</div>
</div>
<div className="wdiget widget_catagory">
<h4 className="widget-title">Categories</h4>
<ul className=" list-item space-y-4">
<li className=" block">
<a
href="#"
className=" flex justify-between bg-[#F8F8F8] py-[17px] px-5 rounded hover:bg-primary hover:text-white transition-all
duration-150"
>
<span>Development (23)</span>
<span className=" text-2xl">
<iconify-icon icon="heroicons:chevron-right-20-solid"></iconify-icon>
</span>
</a>
</li>
<li className=" block">
<a
href="#"
className=" flex justify-between bg-[#F8F8F8] py-[17px] px-5 rounded hover:bg-primary hover:text-white transition-all
duration-150"
>
<span>Art &amp; Design (45)</span>
<span className=" text-2xl">
<iconify-icon icon="heroicons:chevron-right-20-solid"></iconify-icon>
</span>
</a>
</li>
<li className=" block">
<a
href="#"
className=" flex justify-between bg-[#F8F8F8] py-[17px] px-5 rounded hover:bg-primary hover:text-white transition-all
duration-150"
>
<span>Data Science (14)</span>
<span className=" text-2xl">
<iconify-icon icon="heroicons:chevron-right-20-solid"></iconify-icon>
</span>
</a>
</li>
<li className=" block">
<a
href="#"
className=" flex justify-between bg-[#F8F8F8] py-[17px] px-5 rounded hover:bg-primary hover:text-white transition-all
duration-150"
>
<span>Data Science (14)</span>
<span className=" text-2xl">
<iconify-icon icon="heroicons:chevron-right-20-solid"></iconify-icon>
</span>
</a>
</li>
<li className=" block">
<a
href="#"
className=" flex justify-between bg-[#F8F8F8] py-[17px] px-5 rounded hover:bg-primary hover:text-white transition-all
duration-150"
>
<span>Technology (28)</span>
<span className=" text-2xl">
<iconify-icon icon="heroicons:chevron-right-20-solid"></iconify-icon>
</span>
</a>
</li>
<li className=" block">
<a
href="#"
className=" flex justify-between bg-[#F8F8F8] py-[17px] px-5 rounded hover:bg-primary hover:text-white transition-all
duration-150"
>
<span>It Management (34)</span>
<span className=" text-2xl">
<iconify-icon icon="heroicons:chevron-right-20-solid"></iconify-icon>
</span>
</a>
</li>
</ul>
</div>
<div className="wdiget widget_catagory">
<h4 className="widget-title">Skill Level</h4>
<ul className=" list-item space-y-5">
<li className=" block">
<label className=" flex space-x-3 form-check cursor-pointer">
<input type="checkbox" className=" hidden form-check-input" />
<span className="ck-box flex flex-col items-center justify-center">
<img src={whiteCheck} alt="" className="object-contain" />
</span>
<span className="form-check-label">All Levels (82)</span>
</label>
</li>
<li className=" block">
<label className=" flex space-x-3 form-check cursor-pointer">
<input type="checkbox" className=" hidden form-check-input" />
<span className="ck-box flex flex-col items-center justify-center">
<img src={whiteCheck} alt="" className="object-contain" />
</span>
<span className="form-check-label">Beginner Levels (82)</span>
</label>
</li>
<li className=" block">
<label className=" flex space-x-3 form-check cursor-pointer">
<input type="checkbox" className=" hidden form-check-input" />
<span className="ck-box flex flex-col items-center justify-center">
<img src={whiteCheck} alt="" className="object-contain" />
</span>
<span className="form-check-label">Intermediate Level (82)</span>
</label>
</li>
<li className=" block">
<label className=" flex space-x-3 form-check cursor-pointer">
<input type="checkbox" className=" hidden form-check-input" />
<span className="ck-box flex flex-col items-center justify-center">
<img src={whiteCheck} alt="" className="object-contain" />
</span>
<span className="form-check-label">Expert Level (82)</span>
</label>
</li>
</ul>
</div>
<div className="wdiget widget_catagory">
<h4 className="widget-title">Language</h4>
<ul className=" list-item space-y-5">
<li className=" block">
<label className=" flex space-x-3 form-check cursor-pointer">
<input type="checkbox" className=" hidden form-check-input" />
<span className="ck-box flex flex-col items-center justify-center">
<img src={whiteCheck} alt="" className="object-contain" />
</span>
<span className="form-check-label">Spanish Language</span>
</label>
</li>
<li className=" block">
<label className=" flex space-x-3 form-check cursor-pointer">
<input type="checkbox" className=" hidden form-check-input" />
<span className="ck-box flex flex-col items-center justify-center">
<img src={whiteCheck} alt="" className="object-contain" />
</span>
<span className="form-check-label">Arabic Language</span>
</label>
</li>
<li className=" block">
<label className=" flex space-x-3 form-check cursor-pointer">
<input type="checkbox" className=" hidden form-check-input" />
<span className="ck-box flex flex-col items-center justify-center">
<img src={whiteCheck} alt="" className="object-contain" />
</span>
<span className="form-check-label">United States (US)</span>
</label>
</li>
<li className=" block">
<label className=" flex space-x-3 form-check cursor-pointer">
<input type="checkbox" className=" hidden form-check-input" />
<span className="ck-box flex flex-col items-center justify-center">
<img src={whiteCheck} alt="" className="object-contain" />
</span>
<span className="form-check-label">United Kingdom (UK)</span>
</label>
</li>
</ul>
</div>
<div className="wdiget widget_catagory">
<h4 className="widget-title">Rating By</h4>
<ul className=" list-item space-y-5">
<li className=" block">
<label className=" flex space-x-3 form-check cursor-pointer">
<input type="checkbox" className=" hidden form-check-input" />
<span className="ck-box flex flex-col items-center justify-center">
<img src={whiteCheck} alt="" className="object-contain" />
</span>
<span className="form-check-label">
<img src={rating1} alt="" />
</span>
</label>
</li>
<li className=" block">
<label className=" flex space-x-3 form-check cursor-pointer">
<input type="checkbox" className=" hidden form-check-input" />
<span className="ck-box flex flex-col items-center justify-center">
<img src={whiteCheck} alt="" className="object-contain" />
</span>
<span className="form-check-label">
<img src={rating2} alt="" />
</span>
</label>
</li>
<li className=" block">
<label className=" flex space-x-3 form-check cursor-pointer">
<input type="checkbox" className=" hidden form-check-input" />
<span className="ck-box flex flex-col items-center justify-center">
<img src={whiteCheck} alt="" className="object-contain" />
</span>
<span className="form-check-label">
<img src={rating3} alt="" />
</span>
</label>
</li>
<li className=" block">
<label className=" flex space-x-3 form-check cursor-pointer">
<input type="checkbox" className=" hidden form-check-input" />
<span className="ck-box flex flex-col items-center justify-center">
<img src={whiteCheck} alt="" className="object-contain" />
</span>
<span className="form-check-label">
<img src={rating4} alt="" />
</span>
</label>
</li>
<li className=" block">
<label className=" flex space-x-3 form-check cursor-pointer">
<input type="checkbox" className=" hidden form-check-input" />
<span className="ck-box flex flex-col items-center justify-center">
<img src={whiteCheck} alt="" className="object-contain" />
</span>
<span className="form-check-label">
<img src={rating5} alt="" />
</span>
</label>
</li>
</ul>
</div>
</div>
);
};
+30
View File
@@ -0,0 +1,30 @@
import React from "react";
import FilteredCourse from "../FilteredCourse";
import Footer from "../Footer";
import Header from "../Header";
import PageBanner from "../PageBanner";
const Courses = () => {
return (
<>
<Header />
<PageBanner title={"Courses"} pageName="Courses" />
<div className="nav-tab-wrapper tabs pt-10 section-padding-bottom">
<div className="container">
<FilteredCourse
classNameForTabOne={
"grid lg:grid-cols-3 md:grid-cols-2 grid-cols-1 gap-[30px]"
}
classNameForTabTwo={
"grid lg:grid-cols-2 md:grid-cols-1 grid-cols-1 gap-[30px]"
}
/>
</div>
</div>
<Footer />
</>
);
};
export default Courses;
+18
View File
@@ -0,0 +1,18 @@
import React from "react";
import EventsList from "../EventsList";
import Footer from "../Footer";
import Header from "../Header";
import PageBanner from "../PageBanner";
const Event = () => {
return (
<>
<Header />
<PageBanner title={"Events"} pageTitle="Events" />
<EventsList />
<Footer />
</>
);
};
export default Event;
+18
View File
@@ -0,0 +1,18 @@
import React from "react";
import EventDetails from "../EventDetails";
import Footer from "../Footer";
import Header from "../Header";
import PageBanner from "../PageBanner";
const EventSingle = () => {
return (
<>
<Header />
<PageBanner title={"Painting Contest 2022"} pageTitle={"Events"} />
<EventDetails />
<Footer />
</>
);
};
export default EventSingle;
@@ -0,0 +1,22 @@
import React from "react";
import CoralinaCloud from "../CoralinaCloud";
import Footer from "../Footer";
import Header from "../Header";
import PageBanner from "../PageBanner";
const InstructorDetails = () => {
return (
<>
<Header />
<PageBanner
title={"About Instructor"}
pageTitle={"Team Member"}
num={1}
/>
<CoralinaCloud />
<Footer />
</>
);
};
export default InstructorDetails;
+25
View File
@@ -0,0 +1,25 @@
import React from "react";
import Brands from "../Brands";
import Footer from "../Footer";
import Header from "../Header";
import Testimonial from "../HomeThreeComponents/Testimonial";
import PageBanner from "../PageBanner";
import Team from "../Team";
const InstructorOne = () => {
return (
<>
<Header />
<PageBanner title={"Instructor"} pageName={"Instructor"} num={1} />
<Team />
<Testimonial />
<Brands
section_padding_bottom={"section-padding-bottom"}
section_padding_top={"section-padding-top"}
/>
<Footer />
</>
);
};
export default InstructorOne;
+20
View File
@@ -0,0 +1,20 @@
import React from "react";
import Footer from "../Footer";
import Header from "../Header";
import Team from "../HomeThreeComponents/Team";
import PageBanner from "../PageBanner";
import Testimonials from "../Testimonials";
const InstructorTwo = () => {
return (
<>
<Header />
<PageBanner title={"Instructor"} pageName={"Instructor"} num={2} />
<Team />
<Testimonials />
<Footer />
</>
);
};
export default InstructorTwo;
+18
View File
@@ -0,0 +1,18 @@
import React from "react";
import BlogPost from "../BlogPost";
import Footer from "../Footer";
import Header from "../Header";
import PageBanner from "../PageBanner";
const SingleBlog = () => {
return (
<>
<Header />
<PageBanner title={"Blog Details"} pageName="Blog Details" />
<BlogPost />
<Footer />
</>
);
};
export default SingleBlog;
+18
View File
@@ -0,0 +1,18 @@
import React from "react";
import CourseDetails from "../CourseDetails";
import Footer from "../Footer";
import Header from "../Header";
import PageBanner from "../PageBanner";
const SingleCourse = () => {
return (
<>
<Header />
<PageBanner title={"Course Details"} pageName={"Course Details"} />
<CourseDetails />
<Footer />
</>
);
};
export default SingleCourse;
+24
View File
@@ -0,0 +1,24 @@
import React from "react";
import { Link } from "react-router-dom";
const Thanks = () => {
return (
<section className="welcome-area">
<div className="container">
<div className="row">
<center>
<div className="hero-text">
<h1>Thank you for your e-mail.</h1>
<h3>We Will contact you very soon.</h3>
<Link className="back-home" to={"/react-templates/edumim"}>
Back To Home
</Link>
</div>
</center>
</div>
</div>
</section>
);
};
export default Thanks;
+74
View File
@@ -0,0 +1,74 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
import ok from "../assets/images/svg/ok.svg";
import aboutTwo from "../assets/images/all-img/about2.png";
const Platform = () => {
return (
<div className="bg-[url('../images/all-img/section-bg-2.png')] bg-cover bg-no-repeat bg-center section-padding">
<div className="container">
<div className="lg:grid grid-cols-12 gap-[30px]">
<div className="xl:col-span-5 lg:col-span-6 col-span-12">
<div className="mini-title">Best Online Learning Platform</div>
<h4 className="column-title ">
One Platfrom & Many
<span className="shape-bg">Courses</span> For You
</h4>
<div>
There are many variations of passages of Lorem Ipsum available,
but the majority have suffered.
</div>
<ul className=" space-y-2 pt-8">
<li className="flex flex-wrap">
<div className="flex-none mr-3">
<div className="">
<img src={ok} alt="" />
</div>
</div>
<div className="flex-1">
<h4 className=" text-lg mb-1 font-semibold">
9/10 Average Satisfaction Rate
</h4>
</div>
</li>
<li className="flex flex-wrap">
<div className="flex-none mr-3">
<div className="">
<img src={ok} alt="" />
</div>
</div>
<div className="flex-1">
<h4 className=" text-lg mb-1 font-semibold">
96% Completitation Rate
</h4>
</div>
</li>
<li className="flex flex-wrap">
<div className="flex-none mr-3">
<div className="">
<img src={ok} alt="" />
</div>
</div>
<div className="flex-1">
<h4 className=" text-lg mb-1 font-semibold">
Friendly Environment & Expert Teacher
</h4>
</div>
</li>
</ul>
<div className="pt-8">
<a href="#" className=" btn btn-primary">
Explore Our Courses
</a>
</div>
</div>
<div className="xl:col-span-7 lg:col-span-6 col-span-12 lg:pt-0 md:pt-10 pt-6">
<img src={aboutTwo} alt="" className=" mx-auto block w-full" />
</div>
</div>
</div>
</div>
);
};
export default Platform;
+71
View File
@@ -0,0 +1,71 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
import { teamData } from "../constant/dummyData";
const Team = () => {
return (
<div className=" section-padding">
<div className="container">
<div className="text-center">
<div className="mini-title">Team Member</div>
<div className="column-title ">
Our Expert <span className="shape-bg">Instructors</span>
</div>
</div>
<div className="grid xl:grid-cols-4 lg:grid-cols-3 md:grid-cols-2 grid-cols-1 gap-[30px] pt-10">
{teamData.map((item, index) => (
<div
className=" bg-white shadow-box3 rounded-[8px] transition-all duration-100 pt-10 pb-[28px] px-6 text-center hover:shadow-box4
border-t-4 border-transparent hover:border-secondary "
key={index}
>
<div className="w-[170px] h-[170px] rounded-full relative mx-auto mb-8">
<img
src={item.img}
alt=""
className=" w-full h-full object-cover rounded-full"
/>
</div>
<div className="course-content">
<h4 className=" lg:text-2xl text-1xl mb-1 font-bold">
{item.name}
</h4>
<div>{item.title}</div>
<ul className="space-x-4 flex justify-center pt-6">
<li>
<a
href="#"
className=" h-10 w-10 rounded bg-red-paste text-primary flex flex-col justify-center items-center text-2xl transition
hover:bg-primary hover:text-white"
>
<iconify-icon icon="bxl:facebook"></iconify-icon>
</a>
</li>
<li>
<a
href="#"
className=" h-10 w-10 rounded bg-green-paste text-secondary flex flex-col justify-center items-center text-2xl transition
hover:bg-secondary hover:text-white"
>
<iconify-icon icon="bxl:twitter"></iconify-icon>
</a>
</li>
<li>
<a
href="#"
className=" h-10 w-10 rounded bg-[#EEE8FF] text-#8861DB flex flex-col justify-center items-center text-2xl transition
hover:bg-[#8861DB] hover:text-white"
>
<iconify-icon icon="bxl:linkedin"></iconify-icon>
</a>
</li>
</ul>
</div>
</div>
))}
</div>
</div>
</div>
);
};
export default Team;
+80
View File
@@ -0,0 +1,80 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
import testiLeft from "../assets/images/all-img/testi-left.png";
const Testimonials = () => {
return (
<div className=" section-padding bg-[url('../images/all-img/section-bg-16.png')] bg-cover bg-no-repeat lg:mt-[136px]">
<div className="container lg:-mt-[250px] xl:pb-[136px] lg:pb-20 pb-10">
<div
className="grid xl:grid-cols-4 lg:grid-cols-3 md:grid-cols-2 grid-cols-1 gap-[30px] bg-white shadow-box14 rounded-md
divide-x-2 divide-[#E4EEED] py-20"
>
<div className=" text-center ">
<h2 className="text-secondary font-bold ">
<span className=" counter">82</span>K+
</h2>
<span className="block text-black font-semibold">
Enrolled Students
</span>
</div>
<div className=" text-center">
<h2 className="text-secondary font-bold ">
<span className=" counter">348</span>+
</h2>
<span className="block text-black font-semibold">
Academic Programs
</span>
</div>
<div className=" text-center">
<h2 className="text-secondary font-bold ">
<span className=" counter">125</span>+
</h2>
<span className="block text-black font-semibold">
Winning Award
</span>
</div>
<div className=" text-center">
<h2 className="text-secondary font-bold ">
<span className=" counter">37</span>+
</h2>
<span className="block text-black font-semibold">
Certified Students
</span>
</div>
</div>
</div>
<div className="container">
<div className="grid grid-cols-12 lg:gap-10 gap-6 ">
<div className="xl:col-span-7 lg:col-span-6 col-span-12">
<img src={testiLeft} alt="" draggable="false" />
</div>
<div className="xl:col-span-5 lg:col-span-6 col-span-12 flex flex-col justify-center ">
<div className="mini-title">Testimonial</div>
<h4 className="column-title ">
What Says Our
<span className="shape-bg">Students</span>
About Us
</h4>
<div>
There are many variations of passages of Lorem Ipsum available,
but the majority have suffered. There are many variations of
passages of Lorem Ipsum available, but the majority have suffered
alteration in some form, by injected humour.
</div>
<div className="mt-12">
<a href="#" className="btn btn-primary">
View All Reviews
</a>
</div>
</div>
</div>
</div>
</div>
);
};
export default Testimonials;
+42
View File
@@ -0,0 +1,42 @@
/* eslint-disable jsx-a11y/anchor-is-valid */
import React from "react";
import { topicsData } from "../constant/dummyData";
const Topics = () => {
return (
<div className=" section-padding">
<div className="container">
<div className="text-center">
<div className="mini-title">Start Learning From Today</div>
<div className="column-title ">
Popular <span className="shape-bg">Topics</span> To Learn
</div>
</div>
<div className="grid lg:grid-cols-4 md:grid-cols-2 grid-cols-1 gap-[30px] pt-10">
{topicsData.map((item, index) => (
<a
className=" rounded-[8px] transition duration-100 hover:shadow-box hover:bg-white group bg-[#FFE8E8] text-center px-6
py-[65px] hover:-translate-y-2"
href="#"
key={index}
>
<div className="w-[72px] h-[72px] rounded-full bg-white relative mx-auto flex flex-col justify-center items-center mb-8 group-hover:bg-[#FFE8E8]">
<img
src={item.logo}
alt=""
className=" w-[32px] h-[32px] object-cover "
/>
</div>
<div className="course-content">
<h4 className=" text-2xl mb-2 font-bold">{item.title}</h4>
<p>{item.quantity}</p>
</div>
</a>
))}
</div>
</div>
</div>
);
};
export default Topics;
File diff suppressed because it is too large Load Diff
+9
View File
@@ -0,0 +1,9 @@
.social-explore:hover > ul {
display: flex;
}
.social-explore > ul {
display: none;
}
.social-explore:hover > button {
display: none;
}
File diff suppressed because it is too large Load Diff
+43
View File
@@ -0,0 +1,43 @@
@import url("https://fonts.googleapis.com/css?family=Open+Sans:300i,400,400i,600,600i,700,700i");
.welcome-area {
background: #fff;
}
.hero-text {
margin-top: 200px;
}
.hero-text h1 {
color: #35ac39;
font-size: 60px;
font-weight: 500;
line-height: 70px;
margin-bottom: 20px;
position: relative;
text-transform: capitalize;
}
.hero-text h3 {
margin-bottom: 60px;
font-weight: 600;
color: #333;
position: relative;
}
.back-home {
background: #35ac39;
border: 2px solid #35ac39;
border-radius: 500px;
color: #fff;
font-weight: 600;
position: relative;
margin: 15px 15px 0;
padding: 12px 36px;
text-transform: capitalize;
transition: all 0.2s ease 0s;
text-decoration: navajowhite;
}
.back-home:hover,
.back-home:focus {
background: #4328b7;
color: #fff;
border: 2px solid #4328b7;
text-decoration: none;
}
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More