├── .eslintrc.json
├── app
├── favicon.ico
├── layout.js
├── page.css
├── globals.css
└── page.js
├── public
├── video.mp4
├── persons.png
├── hero
│ ├── person1.jpg
│ ├── person2.jpg
│ ├── person3.jpg
│ ├── person4.jpg
│ ├── person5.jpg
│ ├── person6.jpg
│ └── hero-arrow.png
├── OurDiff
│ ├── Frame-0.png
│ ├── Frame-1.png
│ └── Frame-2.png
├── features
│ ├── Frame-0.png
│ ├── Frame-1.png
│ ├── Frame-2.png
│ ├── Frame-3.png
│ ├── Frame-4.png
│ └── Frame-5.png
├── howItWorks
│ ├── Frame-0.png
│ ├── Frame-1.png
│ └── Frame-2.png
├── apos.svg
├── vercel.svg
├── next.svg
└── vite.svg
├── jsconfig.json
├── next.config.js
├── .gitignore
├── package.json
├── src
├── components
│ ├── BrandingVideo
│ │ ├── BrandingVideo.css
│ │ └── BrandingVideo.jsx
│ ├── Testimonials
│ │ ├── Testimonials.jsx
│ │ ├── Testimonials.css
│ │ └── SlickSlider.jsx
│ ├── EmailBox
│ │ ├── EmailBox.css
│ │ └── EmailBox.jsx
│ ├── Footer
│ │ ├── Footer.css
│ │ └── Footer.jsx
│ ├── OurDiff
│ │ ├── OurDiff.css
│ │ └── OurDiff.jsx
│ ├── WhoWeInvest
│ │ ├── WhoWeInvest.css
│ │ └── WhoWeInvest.jsx
│ ├── HowItWorks
│ │ ├── HowItWorks.css
│ │ └── HowItWorks.jsx
│ ├── WhatWeDo
│ │ ├── WhatWeDo.css
│ │ └── WhatWeDo.jsx
│ ├── Navbar
│ │ ├── Navbar.css
│ │ └── Navbar.jsx
│ └── Hero
│ │ ├── Hero.css
│ │ └── Hero.jsx
└── utils
│ ├── animation.js
│ └── data.js
└── README.md
/.eslintrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "next/core-web-vitals"
3 | }
4 |
--------------------------------------------------------------------------------
/app/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Collins77/Agency-website/HEAD/app/favicon.ico
--------------------------------------------------------------------------------
/public/video.mp4:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Collins77/Agency-website/HEAD/public/video.mp4
--------------------------------------------------------------------------------
/public/persons.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Collins77/Agency-website/HEAD/public/persons.png
--------------------------------------------------------------------------------
/public/hero/person1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Collins77/Agency-website/HEAD/public/hero/person1.jpg
--------------------------------------------------------------------------------
/public/hero/person2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Collins77/Agency-website/HEAD/public/hero/person2.jpg
--------------------------------------------------------------------------------
/public/hero/person3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Collins77/Agency-website/HEAD/public/hero/person3.jpg
--------------------------------------------------------------------------------
/public/hero/person4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Collins77/Agency-website/HEAD/public/hero/person4.jpg
--------------------------------------------------------------------------------
/public/hero/person5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Collins77/Agency-website/HEAD/public/hero/person5.jpg
--------------------------------------------------------------------------------
/public/hero/person6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Collins77/Agency-website/HEAD/public/hero/person6.jpg
--------------------------------------------------------------------------------
/public/OurDiff/Frame-0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Collins77/Agency-website/HEAD/public/OurDiff/Frame-0.png
--------------------------------------------------------------------------------
/public/OurDiff/Frame-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Collins77/Agency-website/HEAD/public/OurDiff/Frame-1.png
--------------------------------------------------------------------------------
/public/OurDiff/Frame-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Collins77/Agency-website/HEAD/public/OurDiff/Frame-2.png
--------------------------------------------------------------------------------
/public/hero/hero-arrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Collins77/Agency-website/HEAD/public/hero/hero-arrow.png
--------------------------------------------------------------------------------
/jsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "paths": {
4 | "@/*": ["./*"]
5 | }
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/public/features/Frame-0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Collins77/Agency-website/HEAD/public/features/Frame-0.png
--------------------------------------------------------------------------------
/public/features/Frame-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Collins77/Agency-website/HEAD/public/features/Frame-1.png
--------------------------------------------------------------------------------
/public/features/Frame-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Collins77/Agency-website/HEAD/public/features/Frame-2.png
--------------------------------------------------------------------------------
/public/features/Frame-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Collins77/Agency-website/HEAD/public/features/Frame-3.png
--------------------------------------------------------------------------------
/public/features/Frame-4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Collins77/Agency-website/HEAD/public/features/Frame-4.png
--------------------------------------------------------------------------------
/public/features/Frame-5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Collins77/Agency-website/HEAD/public/features/Frame-5.png
--------------------------------------------------------------------------------
/public/howItWorks/Frame-0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Collins77/Agency-website/HEAD/public/howItWorks/Frame-0.png
--------------------------------------------------------------------------------
/public/howItWorks/Frame-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Collins77/Agency-website/HEAD/public/howItWorks/Frame-1.png
--------------------------------------------------------------------------------
/public/howItWorks/Frame-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Collins77/Agency-website/HEAD/public/howItWorks/Frame-2.png
--------------------------------------------------------------------------------
/next.config.js:
--------------------------------------------------------------------------------
1 | /** @type {import('next').NextConfig} */
2 | const nextConfig = {}
3 |
4 | module.exports = nextConfig
5 |
--------------------------------------------------------------------------------
/public/apos.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 | /.pnp
6 | .pnp.js
7 |
8 | # testing
9 | /coverage
10 |
11 | # next.js
12 | /.next/
13 | /out/
14 |
15 | # production
16 | /build
17 |
18 | # misc
19 | .DS_Store
20 | *.pem
21 |
22 | # debug
23 | npm-debug.log*
24 | yarn-debug.log*
25 | yarn-error.log*
26 |
27 | # local env files
28 | .env*.local
29 |
30 | # vercel
31 | .vercel
32 |
33 | # typescript
34 | *.tsbuildinfo
35 | next-env.d.ts
36 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "digital-business-next",
3 | "version": "0.1.0",
4 | "private": true,
5 | "scripts": {
6 | "dev": "next dev",
7 | "build": "next build",
8 | "start": "next start",
9 | "lint": "next lint"
10 | },
11 | "dependencies": {
12 | "eslint": "8.47.0",
13 | "eslint-config-next": "13.4.16",
14 | "framer-motion": "^10.15.2",
15 | "next": "13.4.16",
16 | "react": "18.2.0",
17 | "react-dom": "18.2.0",
18 | "react-icons": "^4.10.1",
19 | "react-scroll": "^1.8.9",
20 | "react-slick": "^0.29.0"
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/public/vercel.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/components/BrandingVideo/BrandingVideo.css:
--------------------------------------------------------------------------------
1 | .bv-container .container {
2 | display: flex;
3 | align-items: center;
4 | justify-content: center;
5 | overflow: visible;
6 | }
7 | .bv-video {
8 | width: 95%;
9 | border-radius: 4rem;
10 | margin-top: -10rem; /* 10rem */
11 | z-index: 1;
12 | }
13 |
14 | @media (max-width: 1024px) {
15 | .bv-video {
16 | margin-top: 1rem;
17 | }
18 | }
19 |
20 | @media (max-width: 768px) {
21 | .bv-video {
22 | border-radius: 2rem;
23 | }
24 | }
25 |
26 | @media (min-width: 768px) {
27 | .bv-video {
28 | margin-top: -5rem;
29 | width: 85%;
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/src/components/Testimonials/Testimonials.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react'
2 | import SlickSlider from './SlickSlider'
3 | import './Testimonials.css'
4 |
5 | const Testimonials = () => {
6 | return (
7 |
8 |
9 |
10 |
11 | Testimonials
12 | Access capital that complements traditional funding options.
13 | What people say about us
14 |
15 |
16 | {/* slider */}
17 |
18 |
19 |
20 | )
21 | }
22 |
23 | export default Testimonials
--------------------------------------------------------------------------------
/app/layout.js:
--------------------------------------------------------------------------------
1 | import "./globals.css";
2 | import {Josefin_Sans} from 'next/font/google';
3 |
4 | export const metadata = {
5 | title: "Cotek Technologies",
6 | description: "Generated by create next app",
7 | };
8 |
9 | const Josef = Josefin_Sans({
10 | subsets: ['latin'],
11 | weight: ['100', '200', '300', '400', '500', '600', '700'],
12 | display: 'swap'
13 | })
14 |
15 | export default function RootLayout({ children }) {
16 | return (
17 |
18 |
19 |
20 |
21 |
22 | {children}
23 |
24 | );
25 | }
26 |
--------------------------------------------------------------------------------
/src/components/EmailBox/EmailBox.css:
--------------------------------------------------------------------------------
1 | .emailBox {
2 | background-color: white;
3 | padding: 1rem 2rem;
4 | border-radius: 999px;
5 | display: flex;
6 | align-items: center;
7 | width: 70%;
8 | position: relative;
9 | overflow: hidden;
10 | }
11 |
12 | .emailBox>input {
13 | outline: none;
14 | border: none;
15 | margin-left: 1rem;
16 | font-size: 1rem;
17 | color: rgb(150, 150, 150);
18 | font-family: '__Josefin_Sans_584c1b', '__Josefin_Sans_Fallback_584c1b';
19 | flex: 1;
20 | }
21 |
22 | .emailBox>input::placeholder {
23 | font-size: 0.8rem;
24 | }
25 |
26 | .getFunded {
27 | position: absolute;
28 | right: 0.5rem;
29 | height: 80%;
30 | background-color: var(--secondary-color);
31 | display: flex;
32 | align-items: center;
33 | justify-content: center;
34 | padding: 0rem 2rem;
35 | border-radius: 999px;
36 | color: white;
37 | }
--------------------------------------------------------------------------------
/src/components/BrandingVideo/BrandingVideo.jsx:
--------------------------------------------------------------------------------
1 | "use client"
2 |
3 | import React, { useRef } from 'react'
4 | import './BrandingVideo.css'
5 | import { motion, useScroll, useTransform } from 'framer-motion'
6 |
7 | const BrandingVideo = () => {
8 | const ref = useRef(null);
9 | const {scrollYProgress} = useScroll({
10 | target: ref,
11 | offset: ["start end", "end end"]
12 | })
13 |
14 | const scale = useTransform(scrollYProgress, [0, 1], [.6, 1])
15 |
16 | return (
17 |
18 |
19 |
25 |
26 |
27 |
28 |
29 | )
30 | }
31 |
32 | export default BrandingVideo
--------------------------------------------------------------------------------
/src/components/Footer/Footer.css:
--------------------------------------------------------------------------------
1 | .f-wrapper .container {
2 | margin-top: 5rem;
3 | padding-top: 5rem;
4 | padding-bottom: 2rem;
5 | }
6 |
7 | .f-wrapper {
8 | background-color: var(--primary-color);
9 | }
10 |
11 | .f-container {
12 | display: flex;
13 | flex-direction: column;
14 | gap: 2rem;
15 | align-items: center;
16 | }
17 |
18 | .f-container .title {
19 | color: white;
20 | }
21 |
22 | .f-container .emailBox {
23 | max-width: 36rem;
24 | }
25 |
26 | .f-container hr {
27 | border-color: var(--border-color-light);
28 | width: 100%;
29 | }
30 |
31 | .f-menu {
32 | display: flex;
33 | justify-content: space-between;
34 | width: 100%;
35 | flex-wrap: wrap;
36 | }
37 |
38 | .f-menu span {
39 | color: white;
40 | text-transform: uppercase;
41 | font-size: 0.9rem;
42 | font-weight: bold;
43 | }
44 |
45 | @media (max-width: 990px) {
46 | .f-menu {
47 | flex-direction: column;
48 | gap: 2rem;
49 | align-items: center;
50 | }
51 | }
--------------------------------------------------------------------------------
/src/components/Footer/Footer.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react'
2 | import './Footer.css'
3 | import EmailBox from '../EmailBox/EmailBox'
4 |
5 | const Footer = () => {
6 | return (
7 |
8 |
9 |
10 |
11 | Get Funded Today!
12 |
13 |
14 |
15 |
16 |
17 | Home
18 | What we do
19 | how it works
20 | who we invest
21 | testimonials
22 |
23 |
24 |
25 |
26 | Made with love by Cotek Technologies
27 |
28 |
29 |
30 |
31 | )
32 | }
33 |
34 | export default Footer
--------------------------------------------------------------------------------
/src/components/OurDiff/OurDiff.css:
--------------------------------------------------------------------------------
1 | .od-wrapper {
2 | padding-top: 12rem;
3 | }
4 |
5 | .od-container {
6 | display: flex;
7 | flex-direction: column;
8 | gap: 2rem;
9 | }
10 |
11 | .od-head {
12 | display: flex;
13 | flex-direction: column;
14 | gap: 2rem;
15 | align-items: center;
16 | }
17 |
18 | .od-head .tag {
19 | color: white;
20 | }
21 |
22 | .od-head .text {
23 | color: white;
24 | text-align: center;
25 | max-width: 65%;
26 | }
27 |
28 | .od-features {
29 | display: flex;
30 | gap: 2rem;
31 | }
32 |
33 | .od-feature {
34 | flex: 1;
35 | background-color: white;
36 | box-shadow: var(--shadow);
37 | display: flex;
38 | flex-direction: column;
39 | gap: 1rem;
40 | align-items: center;
41 | padding: 2rem;
42 | border-radius: 1rem;
43 | }
44 |
45 | .od-feature .text {
46 | text-align: center;
47 | }
48 |
49 | @media (max-width: 990px) {
50 | .od-features {
51 | flex-direction: column;
52 | }
53 | }
54 |
55 | @media (max-width: 590px) {
56 | .od-feature {
57 | width: 80%;
58 | margin: auto;
59 | }
60 | }
--------------------------------------------------------------------------------
/app/page.css:
--------------------------------------------------------------------------------
1 | .app {
2 | position: relative;
3 | transition: all 300ms ease-out;
4 | }
5 | .tag {
6 | color: var(--secondary-color);
7 | font-size: 1.5rem;
8 | font-weight: bold;
9 | }
10 |
11 | .title {
12 | font-size: 2.6rem;
13 | color: var(--title-color);
14 | font-weight: bold;
15 | text-align: center;
16 | line-height: 3.5rem;
17 | text-transform: capitalize;
18 | }
19 |
20 | .des {
21 | font-size: 1.4rem;
22 | color: var(--text-color);
23 | line-height: 2rem;
24 | }
25 |
26 | .sec-title {
27 | font-size: 2rem;
28 | color: var(--title-color);
29 | font-weight: 600;
30 | text-align: center;
31 | line-height: 3rem;
32 | text-transform: capitalize;
33 | }
34 |
35 | .text {
36 | color: var(--text-color);
37 | font-size: 1.1rem;
38 | line-height: 1.8rem;
39 | }
40 |
41 | @media (max-width: 768px) {
42 | .title {
43 | font-size: 2.2rem;
44 | }
45 | .sec-title {
46 | font-size: 1.8rem;
47 | }
48 |
49 | .des {
50 | font-size: 1.8rem;
51 | }
52 | }
53 |
54 | @media (max-width: 640px) {
55 | .title {
56 | font-size: 1.8rem;
57 | }
58 | .sec-title {
59 | font-size: 1.6rem;
60 | }
61 | }
--------------------------------------------------------------------------------
/src/utils/animation.js:
--------------------------------------------------------------------------------
1 | export const containerVariants = (delay = 0)=> ({
2 | "offscreen": {
3 | opacity: 0,
4 | y: 30
5 | },
6 | "onscreen": {
7 | opacity: 1,
8 | y: 0,
9 | transition: {
10 | type: "spring",
11 | duration: 2,
12 | delay
13 | }
14 | }
15 | })
16 |
17 | export const tagVariants = {
18 | "offscreen": {
19 | opacity: 0,
20 | y: 10
21 | },
22 | "onscreen": {
23 | opacity: 1,
24 | y: 0,
25 | transition: {
26 | type: "spring",
27 | duration: 2,
28 | }
29 | }
30 | }
31 | export const titleVariants = {
32 | "offscreen": {
33 | opacity: 0,
34 | y: 30
35 | },
36 | "onscreen": {
37 | opacity: 1,
38 | y: 0,
39 | transition: {
40 | type: "spring",
41 | duration: 2.2,
42 | }
43 | }
44 | }
45 | export const desVariants = {
46 | "offscreen": {
47 | opacity: 0,
48 | y: 20
49 | },
50 | "onscreen": {
51 | opacity: 1,
52 | y: 0,
53 | transition: {
54 | type: "spring",
55 | duration: 2.6,
56 | delay: .2
57 | }
58 | }
59 | }
--------------------------------------------------------------------------------
/public/next.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/app/globals.css:
--------------------------------------------------------------------------------
1 |
2 | :root {
3 | --dark-bg: #000;
4 | --light-bg: #f6f7fb;
5 | --primary-color: #533fd7;
6 | --secondary-color: #00caf9;
7 | --third-color: #54f3a6;
8 | --fourth-color: #fee590;
9 | --text-color: #867eb5;
10 | --text-secondary: #554b92;
11 | --text-color-dark: #12183f;
12 | --text-color-light: #fcf3d4;
13 | --title-color: #221577;
14 | --border-color: #6a55f8;
15 | --border-color-dark: #27263a;
16 | --border-color-light: #6a55f8;
17 | --shadow: 10px 12px 48px rgba(181, 187, 203, 0.206);
18 | }
19 |
20 | html {
21 | box-sizing: border-box;
22 | }
23 |
24 | body {
25 | color: var(--text-color);
26 | margin: 0 !important;
27 | max-width: 100%;
28 | overflow-x: hidden;
29 | padding: 0 !important;
30 | touch-action: pan-y, pan-x;
31 | transition: all 0.4s cubic-bezier(0.57, 0.25, 0.33, 1) 0s;
32 | }
33 |
34 | .container {
35 | width: 100%;
36 | margin: auto;
37 | overflow: hidden;
38 |
39 | }
40 |
41 | @media (min-width: 2100px) {
42 | .container {
43 | max-width: 1600px;
44 | }
45 | }
46 |
47 | @media (min-width: 576px) {
48 | .container {
49 | max-width: 540px;
50 | }
51 | }
52 |
53 | @media (min-width: 768px) {
54 | .container {
55 | max-width: 720px;
56 | }
57 | }
58 |
59 | @media (min-width: 992px) {
60 | .container {
61 | max-width: 960px;
62 | }
63 | }
64 |
65 | @media (min-width: 1200px) {
66 | .container {
67 | max-width: 1200px;
68 | }
69 | }
--------------------------------------------------------------------------------
/public/vite.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app).
2 |
3 | ## Getting Started
4 |
5 | First, run the development server:
6 |
7 | ```bash
8 | npm run dev
9 | # or
10 | yarn dev
11 | # or
12 | pnpm dev
13 | ```
14 |
15 | Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
16 |
17 | You can start editing the page by modifying `app/page.js`. The page auto-updates as you edit the file.
18 |
19 | This project uses [`next/font`](https://nextjs.org/docs/basic-features/font-optimization) to automatically optimize and load Inter, a custom Google Font.
20 |
21 | ## Learn More
22 |
23 | To learn more about Next.js, take a look at the following resources:
24 |
25 | - [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
26 | - [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.
27 |
28 | You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome!
29 |
30 | ## Deploy on Vercel
31 |
32 | The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.
33 |
34 | Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details.
35 |
--------------------------------------------------------------------------------
/src/components/WhoWeInvest/WhoWeInvest.css:
--------------------------------------------------------------------------------
1 | .wwi-wrapper .container {
2 | padding-top: 13rem;
3 | }
4 |
5 | .wwi-container {
6 | display: flex;
7 | justify-content: space-between;
8 | align-items: center;
9 | }
10 |
11 | .wwi-container > div {
12 | flex: 1;
13 | }
14 |
15 | .wwi-left {
16 | display: flex;
17 | flex-direction: column;
18 | gap: 2rem;
19 | }
20 |
21 | .wwi-left .head {
22 | display: flex;
23 | flex-direction: column;
24 | gap: 1rem;
25 | align-items: flex-start;
26 | }
27 |
28 | .wwi-left .head .title {
29 | text-align: left;
30 | color: white;
31 | }
32 |
33 | .wwi-feature {
34 | display: flex;
35 | flex-direction: column;
36 | gap: 0.5rem;
37 | max-width: 28rem;
38 | }
39 |
40 | .wwi-feature .des {
41 | color: var(--fourth-color);
42 | }
43 |
44 | .wwi-feature .text {
45 | color: white;
46 | text-align: justify;
47 | }
48 |
49 | .wwi-right {
50 | display: flex;
51 | align-items: center;
52 | justify-content: center;
53 | align-self: flex-end;
54 | }
55 |
56 | .wwi-right img {
57 | width: 100%;
58 | }
59 |
60 | @media (max-width: 990px) {
61 | .wwi-container {
62 | flex-direction: column;
63 | padding: 2rem;
64 | }
65 |
66 | .wwi-right {
67 | align-self: center;
68 | margin-top: 2rem;
69 | }
70 |
71 | .wwi-right img {
72 | max-width: 20rem;
73 | }
74 | }
75 |
76 | @media (min-width: 768px) {
77 | .container {
78 | max-width: 80%;
79 | }
80 | }
--------------------------------------------------------------------------------
/src/components/EmailBox/EmailBox.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react'
2 | import './EmailBox.css'
3 | import {LuMail} from 'react-icons/lu'
4 | import {motion} from 'framer-motion'
5 | import { containerVariants } from '@/src/utils/animation'
6 |
7 | const EmailBox = () => {
8 | return (
9 |
23 | {/* icon */}
24 |
32 |
33 |
34 |
35 | {/* input */}
36 |
45 |
46 | {/* get funded button */}
47 |
55 | Get Funded
56 |
57 |
58 | )
59 | }
60 |
61 | export default EmailBox
--------------------------------------------------------------------------------
/app/page.js:
--------------------------------------------------------------------------------
1 | "use client"
2 |
3 | import Navbar from '@/src/components/Navbar/Navbar';
4 | import './page.css'
5 | import Hero from '@/src/components/Hero/Hero';
6 | import BrandingVideo from '@/src/components/BrandingVideo/BrandingVideo';
7 | import WhatWeDo from '@/src/components/WhatWeDo/WhatWeDo';
8 | import OurDiff from '@/src/components/OurDiff/OurDiff';
9 | import { motion, useAnimation } from 'framer-motion';
10 | import HowItWorks from '@/src/components/HowItWorks/HowItWorks';
11 | import WhoWeInvest from '@/src/components/WhoWeInvest/WhoWeInvest';
12 | import Testimonials from '@/src/components/Testimonials/Testimonials';
13 | import Footer from '@/src/components/Footer/Footer';
14 |
15 | export default function Home() {
16 |
17 | const controls = useAnimation()
18 |
19 | return (
20 |
21 |
22 |
23 |
24 |
25 |
27 | controls.start({
28 | backgroundColor: "var(--secondary-color)",
29 | })
30 | }
31 | onViewportLeave={()=> controls.start({
32 | backgroundColor: "white",
33 | })}
34 | viewport={{amount: 0.4}}
35 | >
36 |
37 |
38 |
39 |
40 |
42 | controls.start({
43 | backgroundColor: "var(--primary-color)",
44 | })
45 | }
46 | onViewportLeave={()=> controls.start({
47 | backgroundColor: "white",
48 | })}
49 | viewport={{amount: 0.4}}
50 | >
51 |
52 |
53 |
54 |
55 |
56 |
57 | );
58 | }
59 |
--------------------------------------------------------------------------------
/src/components/Testimonials/Testimonials.css:
--------------------------------------------------------------------------------
1 | .t-wrapper .container {
2 | padding-top: 13rem;
3 | }
4 |
5 | .t-container{
6 | display: flex;
7 | flex-direction: column;
8 | gap: 2rem;
9 | align-items: center;
10 | }
11 |
12 | .t-head {
13 | display: flex;
14 | flex-direction: column;
15 | gap: 1rem;
16 | align-items: center;
17 | max-width: 50rem;
18 | }
19 |
20 | .slick-slider {
21 | margin-top: 5rem;
22 | }
23 |
24 | .slick-track {
25 | padding: 4rem 0rem;
26 | }
27 |
28 | .slick-slide > div {
29 | padding: 0 20px;
30 | }
31 |
32 | .slick-dots {
33 | bottom: 0px!important;
34 | }
35 |
36 | .comment {
37 | display: flex !important;
38 | flex-direction: column;
39 | border-radius: 20px;
40 | position: relative;
41 | box-sizing: border-box;
42 | padding: 2rem;
43 | gap: 3rem;
44 | }
45 |
46 | .c-content {
47 | height: 200px;
48 | display: flex;
49 | align-items: flex-start;
50 | flex-direction: column;
51 | gap: 2rem;
52 | }
53 |
54 | .c-content span {
55 | font-size: 1rem;
56 | line-height: 1.5rem;
57 | }
58 |
59 | .c-info {
60 | display: flex;
61 | align-items: center;
62 | gap: 1rem;
63 | }
64 |
65 | .c-avatar {
66 | background-color: #877eb5;
67 | color: white;
68 | font-size: 1.1rem;
69 | border-radius: 100%;
70 | display: flex;
71 | align-items: center;
72 | justify-content: center;
73 | width: 3rem;
74 | height: 3rem;
75 | }
76 |
77 | .c-person {
78 | display: flex;
79 | flex-direction: column;
80 | gap: 0.5rem;
81 | }
82 |
83 | .c-person > :nth-child(1) {
84 | font-weight: bold;
85 | }
86 |
87 | .c-person > :nth-child(2) {
88 | font-weight: bold;
89 | color: rgba(128, 128, 128, 0.688);
90 | font-size: 0.8rem;
91 | }
92 |
93 | @media (min-width: 1280px) {
94 | .slick-slide.slick-active.slick-current + .slick-slide .comment {
95 | transition: all 1000ms ease-out;
96 | scale: 1.1;
97 | transform: translateY(-30px);
98 | box-shadow: var(--shadow);
99 | }
100 | }
101 |
--------------------------------------------------------------------------------
/src/components/HowItWorks/HowItWorks.css:
--------------------------------------------------------------------------------
1 | .hiw-wrapper {
2 | padding-top: 13rem;
3 | }
4 |
5 | .hiw-container {
6 | display: flex;
7 | flex-direction: column;
8 | gap: 2rem;
9 | }
10 |
11 | .hiw-head {
12 | display: flex;
13 | flex-direction: column;
14 | gap: 2rem;
15 | align-items: center;
16 | max-width: 35rem;
17 | margin: auto;
18 | }
19 |
20 | .hiw-features {
21 | display: flex;
22 | flex-direction: column;
23 | gap: 2rem;
24 | align-items: center;
25 | }
26 |
27 | .hiw-feature {
28 | max-width: 38rem;
29 | display: flex;
30 | align-items: center;
31 | background-color: var(--light-bg);
32 | border-radius: 2rem;
33 | padding: 0.5rem 1rem;
34 | width: max-content;
35 | }
36 |
37 | .hiw-feature .detail {
38 | display: flex;
39 | flex-direction: column;
40 | gap: 1rem;
41 | align-items: flex-start;
42 | translate: -18% 0rem;
43 | }
44 |
45 | .hiw-feature .detail >:nth-child(1) {
46 | font-weight: bold;
47 | font-size: 1.1rem;
48 | }
49 |
50 | .hiw-feature:nth-of-type(2) {
51 | margin-left: 10rem;
52 | }
53 |
54 | .hiw-feature:nth-of-type(1),
55 | .hiw-feature:nth-of-type(3) {
56 | margin-right: 5rem;
57 | }
58 |
59 | @media (max-width: 1280px) {
60 | .hiw-feature {
61 | max-width: 80%;
62 | }
63 |
64 | .hiw-feature:nth-of-type(2) {
65 | margin-left: 0rem;
66 | }
67 |
68 | .hiw-feature:nth-of-type(1),
69 | .hiw-feature:nth-of-type(3) {
70 | margin-right: 0rem;
71 | }
72 |
73 | .hiw-feature .detail {
74 | translate: 0;
75 | }
76 |
77 | .hiw-feature .icon img {
78 | translate: 0;
79 | }
80 | }
81 |
82 | @media (min-width: 768px) {
83 | .hiw-feature:nth-of-type(2) {
84 | margin-left: 10rem;
85 | }
86 |
87 | .hiw-feature:nth-of-type(1),
88 | .hiw-feature:nth-of-type(3) {
89 | margin-right: 5rem;
90 | }
91 | .hiw-feature {
92 | max-width: 38rem;
93 | }
94 | .hiw-feature .detail {
95 | translate: -18% 0rem;
96 | }
97 | }
98 |
99 | @media (max-width: 576px) {
100 | .hiw-feature {
101 | flex-direction: column-reverse;
102 | }
103 | }
104 |
--------------------------------------------------------------------------------
/src/components/Testimonials/SlickSlider.jsx:
--------------------------------------------------------------------------------
1 | import { testimonialsData } from '@/src/utils/data'
2 | import Image from 'next/image'
3 | import React from 'react'
4 | import Slider from 'react-slick'
5 |
6 | const SlickSlider = () => {
7 | const settings = {
8 | dots: true,
9 | infinite: true,
10 | speed: 1000,
11 | slidesToShow: 3,
12 | slidesToScroll: 1,
13 | initialSlide: 0,
14 | touchMove: true,
15 | useCSS: true,
16 | responsive: [
17 | {
18 | breakpoint: 1024,
19 | settings: {
20 | slidesToShow: 3,
21 | slidesToScroll: 3,
22 | infinite: true,
23 | dots: true,
24 | },
25 | },
26 | {
27 | breakpoint: 1000,
28 | settings: {
29 | slidesToShow: 2,
30 | slidesToScroll: 2,
31 | initialSlide: 2,
32 | },
33 | },
34 | {
35 | breakpoint: 768,
36 | settings: {
37 | slidesToShow: 1,
38 | slidesToScroll: 1,
39 | },
40 | },
41 | ]
42 | }
43 | return (
44 |
45 |
46 | {
47 | testimonialsData.map((comment, i)=> (
48 |
49 | {/* upper side */}
50 |
51 |
58 | {comment.comment}
59 |
60 |
61 | {/* lower side */}
62 |
63 |
64 | {comment.name[0]}
65 |
66 |
67 | {comment.name}
68 | {comment.profession}
69 |
70 |
71 |
72 | ))
73 | }
74 |
75 |
76 | )
77 | }
78 |
79 | export default SlickSlider
--------------------------------------------------------------------------------
/src/components/WhoWeInvest/WhoWeInvest.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react'
2 | import './WhoWeInvest.css'
3 | import { whoWeInvest } from '@/src/utils/data'
4 | import { motion } from 'framer-motion'
5 | import { containerVariants, tagVariants, titleVariants } from '@/src/utils/animation'
6 |
7 | const WhoWeInvest = () => {
8 | return (
9 |
10 |
11 |
12 | {/* left side */}
13 |
14 |
15 |
20 | Who we invest in
21 |
22 |
27 | {" "}
28 | Digital businesses
29 | with early tracion
30 |
31 |
32 |
33 | {/* features */}
34 |
35 | {
36 | whoWeInvest.map((feature,i) => (
37 |
42 | {feature.title}
43 | {feature.des}
44 |
45 | ))
46 | }
47 |
48 |
49 |
50 | {/* right side */}
51 |
52 |
58 |
59 |
60 |
61 |
62 | )
63 | }
64 |
65 | export default WhoWeInvest
--------------------------------------------------------------------------------
/src/components/OurDiff/OurDiff.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react'
2 | import './OurDiff.css'
3 | import { ourDiffFeatures } from '@/src/utils/data'
4 | import Image from 'next/image'
5 | import { motion } from 'framer-motion'
6 | import { containerVariants, desVariants, tagVariants, titleVariants } from '@/src/utils/animation'
7 |
8 | const OurDiff = () => {
9 | return (
10 |
11 |
12 |
13 | {/* head */}
14 |
15 |
20 | Our Difference
21 |
22 |
28 | Fair capital, hassle free
29 |
30 |
35 | Our mission is to level the playing field for early stage growth capital
36 | We provide capital that is unbiased, flexible and non
37 | dilutive with the execution support to accelerate value creation.
38 |
39 |
40 | {/* features */}
41 |
42 | {
43 | ourDiffFeatures.map((feature, i)=> (
44 |
49 |
50 | {feature.title}
51 | {feature.des}
52 |
53 | ))
54 | }
55 |
56 |
57 |
58 |
59 | )
60 | }
61 |
62 | export default OurDiff
--------------------------------------------------------------------------------
/src/components/WhatWeDo/WhatWeDo.css:
--------------------------------------------------------------------------------
1 | .wwd-wrapper {
2 | position: relative;
3 | /* padding-bottom: 10rem; */
4 | }
5 |
6 | .wwd-container {
7 | margin-top: 10rem;
8 | display: flex;
9 | flex-direction: column;
10 | gap: 2rem;
11 | align-items: center;
12 | justify-content: center;
13 | padding: 1rem;
14 | }
15 |
16 | .wwd-head {
17 | display: flex;
18 | flex-direction: column;
19 | gap: 1.5rem;
20 | align-items: center;
21 | justify-content: center;
22 | width: 75%;
23 | }
24 |
25 | .wwd-blocks {
26 | width: 100%;
27 | display: flex;
28 | gap: 2rem;
29 | }
30 |
31 | .wwd-block {
32 | flex: 1;
33 | display: flex;
34 | flex-direction: column;
35 | gap: 1rem;
36 | align-items: center;
37 | justify-content: center;
38 | padding: 2rem;
39 | text-align: center;
40 | box-shadow: var(--shadow);
41 | border-radius: 2rem;
42 | }
43 |
44 | .block-features {
45 | margin-top: 1rem;
46 | display: flex;
47 | gap: 1rem;
48 | }
49 |
50 | .block-feature {
51 | flex: 1;
52 | display: flex;
53 | flex-direction: column;
54 | align-items: center;
55 | justify-content: center;
56 | text-align: center;
57 | gap: 1rem;
58 | border: 1px solid hsla(0, 0%, 59%, 0.17);
59 | border-radius: 1rem;
60 | padding: 1rem;
61 | color: var(--title-color);
62 | font-size: 1.1rem;
63 | font-weight: 500;
64 | height: fit-content;
65 | }
66 |
67 | .wwd-block:nth-child(1) > .block-features > :nth-child(2) {
68 | margin-top: 3rem;
69 | }
70 |
71 | .wwd-block:nth-of-type(2) > .block-features > :nth-child(1),
72 | .wwd-block:nth-of-type(2) > .block-features > :nth-child(3) {
73 | margin-top: 2rem;
74 | }
75 |
76 | .wwd-support {
77 | display: flex;
78 | padding: 2rem;
79 | box-shadow: var(--shadow);
80 | border-radius: 1rem;
81 | justify-content: space-between;
82 | align-items: center;
83 | margin-top: 2.5rem;
84 | background: white;
85 | }
86 |
87 | .wwd-support > div {
88 | display: flex;
89 | flex-direction: column;
90 | align-items: flex-start;
91 | gap: 1rem;
92 | }
93 |
94 | .wwd-support > :nth-child(1) {
95 | flex: 1;
96 | }
97 |
98 | .wwd-support > :nth-child(2) {
99 | flex: 1.6;
100 | }
101 |
102 | @media (max-width: 990px) {
103 | .wwd-blocks {
104 | flex-direction: column;
105 | }
106 | }
107 |
108 | @media (max-width: 768px) {
109 | .wwd-support {
110 | flex-direction: column;
111 | }
112 | }
113 |
114 | @media (max-width: 576px) {
115 | .wwd-block {
116 | width: 80%;
117 | margin: auto;
118 | }
119 |
120 | .block-features {
121 | flex-direction: column;
122 | }
123 |
124 | .block-feature {
125 | margin-top: 0rem !important;
126 | align-items: center;
127 | }
128 | }
--------------------------------------------------------------------------------
/src/components/Navbar/Navbar.css:
--------------------------------------------------------------------------------
1 | .n-wrapper {
2 | background-color: var(--primary-color);
3 | width: 100%;
4 | position: absolute;
5 | z-index: 999;
6 | }
7 |
8 | .sticky {
9 | position: fixed;
10 | box-shadow: 10px 12px 48px rgba(181, 187, 203, .206);
11 | background: white;
12 | top: 0;
13 | }
14 |
15 | .n-container {
16 | padding: 1.5rem 1rem;
17 | color: white;
18 | font-size: 1rem;
19 | display: flex;
20 | align-items: center;
21 | justify-content: space-between;
22 | font-weight: 500;
23 | }
24 |
25 | .sticky .n-container {
26 | color: var(--title-color);
27 | padding: 1rem;
28 | }
29 |
30 | .n-logo {
31 | font-weight: 500;
32 | cursor: pointer;
33 | }
34 |
35 | .n-right {
36 | text-transform: uppercase;
37 | display: flex;
38 | align-items: center;
39 | justify-content: center;
40 | gap: 2.5rem;
41 | font-size: 0.9rem;
42 | }
43 |
44 | .n-menu {
45 | display: flex;
46 | align-items: center;
47 | justify-content: center;
48 | gap: 2.5rem;
49 | }
50 |
51 | .n-menu span {
52 | cursor: pointer;
53 | }
54 |
55 | .fund-button {
56 | color: var(--dark-bg);
57 | background-color: var(--third-color);
58 | padding: 1rem 1.6rem;
59 | font-size: 1rem;
60 | text-transform: capitalize;
61 | border-radius: 999px;
62 | }
63 |
64 | .nm-container {
65 | display: none;
66 | }
67 |
68 | @media (max-width: 1200px) {
69 | .n-container {
70 | display: none;
71 | }
72 | .nm-container {
73 | display: block;
74 | color: white;
75 | display: flex;
76 | align-items: center;
77 | justify-content: space-between;
78 | padding: 1rem;
79 | position: relative;
80 | background-color: var(--primary-color);
81 | }
82 | .nm-container>:nth-child(1) {
83 | font-weight: bold;
84 | }
85 | .nm-menu {
86 | position: fixed;
87 | top: 3.8rem;
88 | padding: 3rem 2rem;
89 | box-sizing: border-box;
90 | left: 0;
91 | display: flex;
92 | background-color: var(--primary-color);
93 | flex-direction: column;
94 | transform: translateX(-150%);
95 | transition: all 300ms ease-in-out;
96 | width: 100%;
97 | font-size: 1.2rem;
98 | z-index: 99;
99 | height: calc(100vh - 3.8rem);
100 | }
101 |
102 | .nm-menu span {
103 | margin-bottom: 2rem;
104 | padding-bottom: 1rem;
105 | border-bottom: 1px solid var(--border-color);
106 | }
107 |
108 | .m-funded-button {
109 | width: 100%;
110 | background-color: var(--third-color);
111 | display: flex;
112 | align-items: center;
113 | justify-content: center;
114 | box-sizing: border-box;
115 | padding: 1rem 0rem;
116 | border-radius: 999px;
117 | color: var(--dark-bg);
118 | }
119 | }
--------------------------------------------------------------------------------
/src/components/Hero/Hero.css:
--------------------------------------------------------------------------------
1 | .h-wrapper {
2 | background-color: var(--primary-color);
3 | height: 120vh;
4 | overflow: hidden;
5 | }
6 |
7 | .h-wrapper .container {
8 | padding-top: 8rem;
9 | }
10 |
11 | .h-arrow {
12 | position: absolute;
13 | top: 6rem;
14 | width: 100%;
15 | max-width: 60rem;
16 | z-index: 0;
17 | }
18 |
19 | .h-container {
20 | display: flex;
21 | height: 80vh;
22 | align-items: center;
23 | justify-content: space-around;
24 | position: relative;
25 | }
26 |
27 |
28 | /* left side styling */
29 | .h-left {
30 | flex: 1;
31 | position: relative;
32 | display: flex;
33 | flex-direction: column;
34 | gap: 2rem;
35 | align-items: center;
36 | padding-top: 5rem;
37 | }
38 |
39 | .image-row {
40 | display: flex;
41 | gap: 2rem;
42 | }
43 |
44 | .person-pill {
45 | height: 15rem;
46 | width: 6rem;
47 | border-radius: 999px;
48 | overflow: hidden;
49 | }
50 |
51 | .person-pill-bg {
52 | border-radius: 999px;
53 | height: 100%;
54 | width: 100%;
55 | overflow: hidden;
56 | }
57 |
58 | .person-pill-bg > img {
59 | width: 100%;
60 | object-fit: cover;
61 | scale: 2;
62 | margin-top: 4rem;
63 | }
64 |
65 | .image-row > :nth-child(2) {
66 | transform: translateY(-4rem);
67 | }
68 |
69 | /* right side styling */
70 |
71 | .h-right {
72 | flex: 1.25;
73 | display: flex;
74 | flex-direction: column;
75 | gap: 2rem;
76 | }
77 |
78 | .h-title {
79 | display: flex;
80 | flex-direction: column;
81 | gap: 2rem;
82 | color: var(--third-color);
83 | font-size: 3.5rem;
84 | font-weight: bold;
85 | text-transform: uppercase;
86 | }
87 |
88 | .h-title>:nth-child(3) {
89 | color: white;
90 | }
91 |
92 | .h-description {
93 | color: white;
94 | font-size: 1.4rem;
95 | line-height: 2rem;
96 | }
97 |
98 | @media (max-width: 1024px) {
99 | .h-wrapper {
100 | height: max-content;
101 | }
102 | .h-wrapper .container {
103 | padding-top: 5rem;
104 | }
105 | .h-container {
106 | height: auto;
107 | flex-direction: column;
108 | align-items: center;
109 | gap: 4rem;
110 | padding-bottom: 3rem;
111 | }
112 |
113 | .h-arrow {
114 | display: none;
115 | }
116 |
117 | .h-right {
118 | flex: 1;
119 | align-items: center;
120 | }
121 |
122 | .h-title {
123 | align-items: center;
124 | font-size: 2.2rem;
125 | }
126 |
127 | .h-description {
128 | font-size: 1.2rem;
129 | width: 80%;
130 | text-align: center;
131 | }
132 |
133 | }
134 |
135 | @media (min-width: 768px) {
136 | .h-container {
137 | height: 90vh;
138 | }
139 | .h-wrapper .container {
140 | padding-top: 5.2rem;
141 | }
142 | .h-arrow {
143 | max-width: 48rem;
144 | }
145 | }
146 |
147 |
--------------------------------------------------------------------------------
/src/components/Navbar/Navbar.jsx:
--------------------------------------------------------------------------------
1 | "use client"
2 |
3 | import React, { useState } from 'react'
4 | import './Navbar.css'
5 | import {BiMenuAltRight} from 'react-icons/bi'
6 | import {RxCross2} from 'react-icons/rx'
7 | import {motion, useMotionValueEvent, useScroll} from 'framer-motion';
8 | import { Link } from 'react-scroll'
9 |
10 | const Navbar = () => {
11 | const [mobileMenuOpened, setMobileMenuOpened] = useState(false)
12 | const [navStyle, setNavStyle] = useState("");
13 | const { scrollYProgress } = useScroll();
14 | useMotionValueEvent(scrollYProgress, "change", (latest) => {
15 | if (latest > 0.2) {
16 | setNavStyle("sticky");
17 | } else {
18 | setNavStyle("")
19 | }
20 | })
21 |
22 | return (
23 |
24 | {/* desktop version */}
25 |
26 |
27 | {/* left side */}
28 |
29 | COTEK TECH
30 |
31 |
32 | {/* right side */}
33 |
34 |
35 |
36 | What we do
37 |
38 |
39 | How it works
40 |
41 |
42 | Who we invest in
43 |
44 |
45 | Testimonials
46 |
47 |
48 |
49 | Get Funded
50 |
51 |
52 |
53 |
54 |
55 | {/* mobile version */}
56 |
57 | {/* logo */}
58 |
COTEK TECH
59 |
60 | {/* menu icon */}
61 | {
62 | !mobileMenuOpened ?
63 |
setMobileMenuOpened(true)}
66 | /> :
67 | setMobileMenuOpened(false)}
70 | />
71 | }
72 |
73 | {/* mobile menu */}
74 |
77 |
What we do
78 |
How it works
79 |
Who we invest in
80 |
Testimonials
81 |
82 | Get Funded
83 |
84 |
85 |
86 |
87 |
88 | )
89 | }
90 |
91 | export default Navbar
--------------------------------------------------------------------------------
/src/components/HowItWorks/HowItWorks.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react'
2 | import './HowItWorks.css'
3 | import { hitFeatures } from '@/src/utils/data'
4 | import Image from 'next/image'
5 | import {motion} from 'framer-motion'
6 | import { tagVariants, titleVariants } from '@/src/utils/animation'
7 |
8 | const HowItWorks = () => {
9 |
10 | const featureVariants = {
11 | offscreen: {
12 | scale: 0.5
13 | },
14 | onscreen: {
15 | scale: 1,
16 | transition: {
17 | type: "spring",
18 | duration: 1.5,
19 | },
20 | },
21 | }
22 |
23 | return (
24 |
25 |
26 |
27 | {/* head */}
28 |
29 |
35 | How it works
36 |
37 |
43 | Unlocking potential alomg the growth journey
44 |
45 |
46 | {/* features */}
47 |
48 | {
49 | hitFeatures.map((feature, i)=> (
50 |
56 | {/* left side */}
57 |
70 | 0{i+1}
71 | {feature.title}
72 | {feature.des}
73 |
74 |
75 | {/* right side */}
76 |
77 |
84 |
85 |
86 | ))
87 | }
88 |
89 |
90 |
91 |
92 | )
93 | }
94 |
95 | export default HowItWorks
--------------------------------------------------------------------------------
/src/components/Hero/Hero.jsx:
--------------------------------------------------------------------------------
1 | "use client"
2 |
3 | import React from 'react'
4 | import './Hero.css'
5 | import EmailBox from '../EmailBox/EmailBox'
6 | import { HeroData } from '@/src/utils/data'
7 | import {motion} from 'framer-motion'
8 |
9 | const Hero = () => {
10 |
11 | const variants = (delay) => ({
12 | initial : {
13 | y: "18rem"
14 | },
15 | animate : {
16 | y: "0rem",
17 | transition: {
18 | type: "spring",
19 | damping: 25,
20 | duration: 2.5,
21 | delay
22 | }
23 | }
24 | })
25 |
26 | const imgVariants = () => ({
27 | initial : {
28 | y: "18rem"
29 | },
30 | animate: {
31 | y: "0rem",
32 | transition: {
33 | type: "spring",
34 | duration: 2,
35 | stiffness: 30,
36 | }
37 | }
38 | })
39 |
40 | return (
41 |
42 |
43 |
44 |
45 | {/* left Side */}
46 |
47 |
48 | {
49 | HeroData.slice(0, 3).map((person, i)=> (
50 |
51 |
57 |
63 |
64 |
65 | ))
66 | }
67 |
68 |
69 | {
70 | HeroData.slice(3, 6).map((person, i)=> (
71 |
72 |
78 |
84 |
85 |
86 | ))
87 | }
88 |
89 |
90 |
91 | {/* right Side */}
92 |
93 |
94 | Redefine How
95 | You Grow your
96 | Digital Business
97 |
98 |
99 |
100 | Revenue based funding and execution support designed for early stage founders
101 |
102 |
103 |
104 |
105 |
106 |
107 | )
108 | }
109 |
110 | export default Hero
--------------------------------------------------------------------------------
/src/utils/data.js:
--------------------------------------------------------------------------------
1 | export const HeroData = [
2 | {
3 | src: "hero/person1.jpg",
4 | bg: "#0be4d1",
5 | delay: 0.1,
6 | },
7 | {
8 | src: "hero/person2.jpg",
9 | bg: "#fde490",
10 | delay: 0.3,
11 | },
12 | {
13 | src: "hero/person3.jpg",
14 | bg: "#00c9f7",
15 | delay: 0.2,
16 | },
17 | {
18 | src: "hero/person4.jpg",
19 | bg: "#83cfdf",
20 | delay: 0.2,
21 | },
22 | {
23 | src: "hero/person5.jpg",
24 | bg: "#fe8856",
25 | delay: 0.3,
26 | },
27 | {
28 | src: "hero/person6.jpg",
29 | bg: "#0be4d1",
30 | delay: 0.25,
31 | },
32 | ];
33 |
34 | export const features = [
35 | {
36 | icon: "/features/Frame-0.png",
37 | title: "3x monthly revenue",
38 | },
39 | {
40 | icon: "/features/Frame-1.png",
41 | title: "Flat fee of 6-12%",
42 | },
43 | {
44 | icon: "/features/Frame-2.png",
45 | title: "Flexible repayments by revenue share",
46 | },
47 | {
48 | icon: "/features/Frame-3.png",
49 | title: "3-4 years repayment",
50 | },
51 | {
52 | icon: "/features/Frame-4.png",
53 | title: "$10-100k seed investment",
54 | },
55 | {
56 | icon: "/features/Frame-5.png",
57 | title: "2% of revenue up to 3X cap",
58 | },
59 | ];
60 |
61 | export const ourDiffFeatures = [
62 | {
63 | icon: "/OurDiff/Frame-0.png",
64 | title: "Data Driven",
65 | des: "Our mission is to level the playing field for early stage growth capital. We provide capital that is unbiased, flexible and non dilutive with the execution support to accelerate value creation",
66 | },
67 | {
68 | icon: "/OurDiff/Frame-1.png",
69 | title: "flexible funding",
70 | des: "Funding that flexes as revenue grows with transparent costs and does not require dilution, personal guarantees or pitch decks",
71 | },
72 | {
73 | icon: "/OurDiff/Frame-2.png",
74 | title: "value accelerating",
75 | des: "On demand expertise to supercharge growth in areas that are hard to access for early stage founders",
76 | },
77 | ];
78 |
79 | export const hitFeatures = [
80 | {
81 | icon: "/howItWorks/Frame-0.png",
82 | title: "Connect",
83 | des: "Register and qualify for funding in less than 5 mins. Connect revenue and marketing platforms you already use.",
84 | },
85 | {
86 | icon: "/howItWorks/Frame-1.png",
87 | title: "Get Funded",
88 | des: "Get a term sheet with upto 3 funding offers. Select option that best suits and complete onboarding to receive funds in days",
89 | },
90 | {
91 | icon: "/howItWorks/Frame-2.png",
92 | title: "Support Growth",
93 | des: "Access curated feed of actionable insights and on demand execution expertise. Auto qualify for follow on funding as you grow",
94 | },
95 | ];
96 |
97 | export const whoWeInvest = [
98 | {
99 | title: "Digital Business Model",
100 | des: "Digital business model e.g. SaaS, subscription, D2C, apps",
101 | },
102 | {
103 | title: "Revenue Generating",
104 | des: "Revenue generating for 6 months, > $1k in monthly recurring revenue",
105 | },
106 | {
107 | title: "Support Growth",
108 | des: "Industry expertise: Fintech, Health, Deep tech, B2B software",
109 | },
110 | {
111 | title: "International Expansion",
112 | des: "Registered in Australia and Singapore (initially) with appetite for international expansion",
113 | },
114 | ];
115 |
116 | export const testimonialsData = [
117 | {
118 | comment:
119 | "SUPER HAPPY! Not only do you get to see the best seed and Early Stage companies but the exciting part is there’s a bunch of investors",
120 | name: "Zach Lee",
121 | profession: "QA specialist, Matrix architect",
122 | },
123 | {
124 | comment:
125 | "I have been working with Cotek on our fundraising strategies. They understands the in depth strategies of Venture Capital and early stage fund raising/company",
126 | name: "Cheryl R. Weiss",
127 | profession: "Founder, Dubrow Cafeteria",
128 | },
129 | {
130 | comment:
131 | "Another masterpiece really digging into the art of venture funds, portfolio construction and deal mechanics! Loved it - I can say without hesitation that it is incredibly valuable for anyone who is investing",
132 | name: "Vicky R. Lane",
133 | profession: "Directork, Lafayette Radio",
134 | },
135 | {
136 | comment:
137 | "BlueVenture is the premier setting for entrepreneurs and investors alike to exchange ideas, and network. As an entrepreneur, I can rely on the BlueVenture to bring top caliber speakers, entrepreneurs and investors",
138 | name: "Jennifer Dubois",
139 | profession: "Manager, China Coast",
140 | },
141 | ];
142 |
--------------------------------------------------------------------------------
/src/components/WhatWeDo/WhatWeDo.jsx:
--------------------------------------------------------------------------------
1 | 'use client'
2 |
3 | import React from 'react'
4 | import './WhatWeDo.css'
5 | import { features } from '@/src/utils/data'
6 | import Image from 'next/image'
7 | import { motion } from 'framer-motion'
8 | import { containerVariants, desVariants, tagVariants, titleVariants } from '@/src/utils/animation'
9 |
10 | const WhatWeDo = () => {
11 | return (
12 |
13 |
14 |
15 | {/* head of section */}
16 |
17 | What we do
23 |
29 | {" "}
30 | Empowering founders with Non Dilutive Capital and execution
31 | expertise
32 |
33 | Here is how we can eveluate
39 |
40 |
41 | {/* two blocks */}
42 |
43 | {/* first block */}
44 |
45 |
50 | Blue Advances
51 |
52 |
57 | Fund recurring growth expenses e.g. customer acquisition,
58 | inventory
59 |
60 |
61 | {
62 | features.slice(0, 3).map((feature, i)=> (
63 |
68 |
69 | {feature.title}
70 |
71 | ))
72 | }
73 |
74 |
75 | {/* second block */}
76 |
77 |
82 | Blue Seed
83 |
84 |
89 | Fund one-offs to scale e.g. product, hiring.
90 |
91 |
92 | {
93 | features.slice(3, 6).map((feature, i)=> (
94 |
100 |
101 | {feature.title}
102 |
103 | ))
104 | }
105 |
106 |
107 |
108 |
109 | {/* support block */}
110 |
115 | {/* left side */}
116 |
117 |
118 | Blue Growth Support
119 |
120 |
121 | Data Insights and full stack expertise to supercharge growth
122 |
123 |
124 |
125 | {/* right side */}
126 |
127 |
128 | Actionable data insights by connecting revenue, marketing and social media platforms
129 |
130 |
131 | On demand execution expertise at cost or revenue share across proposition design
132 | engineering marketing analytics, partnerships, brand, intellectual property, market expansion,
133 | talent management.
134 |
135 |
136 |
137 |
138 |
139 |
140 | )
141 | }
142 |
143 | export default WhatWeDo
--------------------------------------------------------------------------------