├── public
├── favicon.ico
├── logo192.png
├── logo512.png
├── robots.txt
├── img
│ ├── item-1.png
│ ├── item-2.png
│ ├── item-3.png
│ ├── item-4.png
│ ├── item-5.png
│ ├── item-6.png
│ ├── avatar-1.png
│ ├── avatar-10.png
│ ├── avatar-2.png
│ ├── avatar-3.png
│ ├── avatar-4.png
│ ├── avatar-5.png
│ ├── avatar-6.png
│ ├── avatar-7.png
│ ├── avatar-8.png
│ ├── avatar-9.png
│ ├── steps-1.png
│ ├── steps-2.png
│ └── steps-3.png
├── manifest.json
└── index.html
├── postcss.config.js
├── src
├── index.css
├── index.js
├── App.js
├── data
│ ├── item-nft.json
│ └── creator.json
└── Components
│ ├── Community.js
│ ├── Button.js
│ ├── Footer.js
│ ├── Collections.js
│ ├── Navbar.js
│ ├── Steps.js
│ ├── Hero.js
│ └── Creators.js
├── .gitignore
├── tailwind.config.js
├── README.md
└── package.json
/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bedddev/nft-landing-page/HEAD/public/favicon.ico
--------------------------------------------------------------------------------
/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bedddev/nft-landing-page/HEAD/public/logo192.png
--------------------------------------------------------------------------------
/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bedddev/nft-landing-page/HEAD/public/logo512.png
--------------------------------------------------------------------------------
/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/public/img/item-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bedddev/nft-landing-page/HEAD/public/img/item-1.png
--------------------------------------------------------------------------------
/public/img/item-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bedddev/nft-landing-page/HEAD/public/img/item-2.png
--------------------------------------------------------------------------------
/public/img/item-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bedddev/nft-landing-page/HEAD/public/img/item-3.png
--------------------------------------------------------------------------------
/public/img/item-4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bedddev/nft-landing-page/HEAD/public/img/item-4.png
--------------------------------------------------------------------------------
/public/img/item-5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bedddev/nft-landing-page/HEAD/public/img/item-5.png
--------------------------------------------------------------------------------
/public/img/item-6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bedddev/nft-landing-page/HEAD/public/img/item-6.png
--------------------------------------------------------------------------------
/public/img/avatar-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bedddev/nft-landing-page/HEAD/public/img/avatar-1.png
--------------------------------------------------------------------------------
/public/img/avatar-10.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bedddev/nft-landing-page/HEAD/public/img/avatar-10.png
--------------------------------------------------------------------------------
/public/img/avatar-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bedddev/nft-landing-page/HEAD/public/img/avatar-2.png
--------------------------------------------------------------------------------
/public/img/avatar-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bedddev/nft-landing-page/HEAD/public/img/avatar-3.png
--------------------------------------------------------------------------------
/public/img/avatar-4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bedddev/nft-landing-page/HEAD/public/img/avatar-4.png
--------------------------------------------------------------------------------
/public/img/avatar-5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bedddev/nft-landing-page/HEAD/public/img/avatar-5.png
--------------------------------------------------------------------------------
/public/img/avatar-6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bedddev/nft-landing-page/HEAD/public/img/avatar-6.png
--------------------------------------------------------------------------------
/public/img/avatar-7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bedddev/nft-landing-page/HEAD/public/img/avatar-7.png
--------------------------------------------------------------------------------
/public/img/avatar-8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bedddev/nft-landing-page/HEAD/public/img/avatar-8.png
--------------------------------------------------------------------------------
/public/img/avatar-9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bedddev/nft-landing-page/HEAD/public/img/avatar-9.png
--------------------------------------------------------------------------------
/public/img/steps-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bedddev/nft-landing-page/HEAD/public/img/steps-1.png
--------------------------------------------------------------------------------
/public/img/steps-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bedddev/nft-landing-page/HEAD/public/img/steps-2.png
--------------------------------------------------------------------------------
/public/img/steps-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bedddev/nft-landing-page/HEAD/public/img/steps-3.png
--------------------------------------------------------------------------------
/postcss.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | plugins: {
3 | tailwindcss: {},
4 | autoprefixer: {},
5 | },
6 | }
7 |
--------------------------------------------------------------------------------
/src/index.css:
--------------------------------------------------------------------------------
1 | @tailwind base;
2 | @tailwind components;
3 | @tailwind utilities;
4 |
5 | body {
6 | background-color: #191919;
7 | }
8 |
--------------------------------------------------------------------------------
/src/index.js:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import ReactDOM from "react-dom/client";
3 | import "./index.css";
4 | import App from "./App";
5 |
6 | const root = ReactDOM.createRoot(document.getElementById("root"));
7 | root.render(
8 |
9 |
10 |
11 | );
12 |
--------------------------------------------------------------------------------
/.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 | # production
12 | /build
13 |
14 | # misc
15 | .DS_Store
16 | .env.local
17 | .env.development.local
18 | .env.test.local
19 | .env.production.local
20 |
21 | npm-debug.log*
22 | yarn-debug.log*
23 | yarn-error.log*
24 |
--------------------------------------------------------------------------------
/tailwind.config.js:
--------------------------------------------------------------------------------
1 | /** @type {import('tailwindcss').Config} */
2 | module.exports = {
3 | content: ["./src/**/*.{js,jsx,ts,tsx}"],
4 | theme: {
5 | extend: {
6 | fontFamily: {
7 | sans: ["Montserrat Alternates", "sans-serif"],
8 | primary: ["Cormorant Garamond", "serif"],
9 | },
10 | colors: {
11 | background: "#191919",
12 | primary: "#2D4263",
13 | secondary: "#C84B31",
14 | tertiary: "#ECDBBA",
15 | },
16 | },
17 | },
18 | plugins: [],
19 | };
20 |
--------------------------------------------------------------------------------
/public/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "short_name": "React App",
3 | "name": "Create React App Sample",
4 | "icons": [
5 | {
6 | "src": "favicon.ico",
7 | "sizes": "64x64 32x32 24x24 16x16",
8 | "type": "image/x-icon"
9 | },
10 | {
11 | "src": "logo192.png",
12 | "type": "image/png",
13 | "sizes": "192x192"
14 | },
15 | {
16 | "src": "logo512.png",
17 | "type": "image/png",
18 | "sizes": "512x512"
19 | }
20 | ],
21 | "start_url": ".",
22 | "display": "standalone",
23 | "theme_color": "#000000",
24 | "background_color": "#ffffff"
25 | }
26 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # 3D NFT Landing Page Collections.
2 |
3 | [Demo Project](https://3d-nft.netlify.app/).
4 |
5 | [Watch it on youtube](https://youtu.be/Oe7MWQ0-kfA)
6 |
7 | Hi friends, today i hope we get a great day and this repo is a build 3D NFT Landing Page Collections with React JS and Tailwind CSS
8 |
9 | [Figma File](https://www.figma.com/community/file/1121655354645544040)
10 |
11 | Social Media : \
12 | [Instagram](https://www.instagram.com/bedddev/) \
13 | [Dribbble](https://dribbble.com/bedddev) \
14 | [Youtube](https://www.youtube.com/channel/UC_XQkWu_EPqam4vHdvh058A)
15 |
16 | hope you guys like it\
17 | Thanks a lot
18 |
19 | 
20 |
--------------------------------------------------------------------------------
/src/App.js:
--------------------------------------------------------------------------------
1 | import Navbar from "./Components/Navbar";
2 | import Hero from "./Components/Hero";
3 | import Collections from "./Components/Collections";
4 | import Steps from "./Components/Steps";
5 | import Creators from "./Components/Creators";
6 | import Community from "./Components/Community";
7 | import Footer from "./Components/Footer";
8 | import AOS from "aos";
9 | import "aos/dist/aos.css";
10 | import { useEffect } from "react";
11 |
12 | function App() {
13 | useEffect(() => {
14 | AOS.init();
15 | AOS.refresh();
16 | });
17 |
18 | return (
19 | <>
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | >
28 | );
29 | }
30 |
31 | export default App;
32 |
--------------------------------------------------------------------------------
/src/data/item-nft.json:
--------------------------------------------------------------------------------
1 | [
2 | {
3 | "id": 1,
4 | "image": "item-1.png",
5 | "title": "Knight Sword",
6 | "username": "santosox",
7 | "price": 3
8 | },
9 | {
10 | "id": 2,
11 | "image": "item-2.png",
12 | "title": "Daft Punk",
13 | "username": "punix",
14 | "price": 2.34
15 | },
16 | {
17 | "id": 3,
18 | "image": "item-3.png",
19 | "title": "Skater Girl",
20 | "username": "inoino",
21 | "price": 10.5
22 | },
23 | {
24 | "id": 4,
25 | "image": "item-4.png",
26 | "title": "Grogu",
27 | "username": "alexio",
28 | "price": 20.5
29 | },
30 | {
31 | "id": 5,
32 | "image": "item-5.png",
33 | "title": "Foodies",
34 | "username": "animola",
35 | "price": 7
36 | },
37 | {
38 | "id": 6,
39 | "image": "item-6.png",
40 | "title": "Friends Kawaii",
41 | "username": "kunai",
42 | "price": 80
43 | }
44 | ]
45 |
--------------------------------------------------------------------------------
/src/Components/Community.js:
--------------------------------------------------------------------------------
1 | import { FaDiscord } from "react-icons/fa";
2 | export default function Community() {
3 | return (
4 | <>
5 |
10 |
11 | Join Our Community
12 |
13 |
14 | Meet the company team, artist and collector for platform updates,
15 | announcements, and more ...
16 |
17 |
18 | Launch Discord
19 |
20 |
21 | >
22 | );
23 | }
24 |
--------------------------------------------------------------------------------
/src/data/creator.json:
--------------------------------------------------------------------------------
1 | [
2 | {
3 | "image": "avatar-1.png",
4 | "name": "Cary Goldner",
5 | "value": 16548
6 | },
7 | {
8 | "image": "avatar-2.png",
9 | "name": "Gregg Prosacco V",
10 | "value": 24507
11 | },
12 | {
13 | "image": "avatar-3.png",
14 | "name": "Angelina Koss",
15 | "value": 91031
16 | },
17 | {
18 | "image": "avatar-4.png",
19 | "name": "Faith Mayert",
20 | "value": 66800
21 | },
22 | {
23 | "image": "avatar-5.png",
24 | "name": "Saul Bashirian",
25 | "value": 50587
26 | },
27 | {
28 | "image": "avatar-6.png",
29 | "name": "Pam Frami",
30 | "value": 500
31 | },
32 | {
33 | "image": "avatar-7.png",
34 | "name": "Axio Sun",
35 | "value": 80224
36 | },
37 | {
38 | "image": "avatar-8.png",
39 | "name": "Gloria Wolff MD",
40 | "value": 29369
41 | },
42 | {
43 | "image": "avatar-9.png",
44 | "name": "Albert Trantow",
45 | "value": 53808
46 | },
47 | {
48 | "image": "avatar-10.png",
49 | "name": "Alexis Mante",
50 | "value": 20123
51 | }
52 | ]
53 |
--------------------------------------------------------------------------------
/src/Components/Button.js:
--------------------------------------------------------------------------------
1 | export default function Button(props) {
2 | const { text, size, variant } = props;
3 |
4 | const sizeBtn = () => {
5 | if (size === "lg") {
6 | return "text-2xl px-6 py-3";
7 | } else {
8 | return "text-lg px-4 py-2";
9 | }
10 | };
11 |
12 | const variantBtn = () => {
13 | if (variant === "primary") {
14 | return "bg-primary text-tertiary hover:bg-transparent hover:text-primary border-primary";
15 | } else if (variant === "primary-outline") {
16 | return "bg-tertiary text-primary hover:bg-primary hover:text-tertiary border-primary";
17 | } else if (variant === "secondary") {
18 | return "bg-transparent text-tertiary hover:bg-tertiary hover:text-primary border-tertiary";
19 | } else {
20 | return "bg-primary text-tertiary hover:bg-tertiary border-primary hover:text-primary";
21 | }
22 | };
23 |
24 | return (
25 |
29 | {text}
30 |
31 | );
32 | }
33 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "nft-landing-page",
3 | "version": "0.1.0",
4 | "private": true,
5 | "dependencies": {
6 | "@splinetool/react-spline": "^2.2.1",
7 | "@testing-library/jest-dom": "^5.16.4",
8 | "@testing-library/react": "^13.3.0",
9 | "@testing-library/user-event": "^13.5.0",
10 | "aos": "^2.3.4",
11 | "react": "^18.2.0",
12 | "react-dom": "^18.2.0",
13 | "react-fast-marquee": "^1.3.2",
14 | "react-icons": "^4.4.0",
15 | "react-scripts": "5.0.1",
16 | "web-vitals": "^2.1.4"
17 | },
18 | "scripts": {
19 | "start": "react-scripts start",
20 | "build": "react-scripts build",
21 | "test": "react-scripts test",
22 | "eject": "react-scripts eject"
23 | },
24 | "eslintConfig": {
25 | "extends": [
26 | "react-app",
27 | "react-app/jest"
28 | ]
29 | },
30 | "browserslist": {
31 | "production": [
32 | ">0.2%",
33 | "not dead",
34 | "not op_mini all"
35 | ],
36 | "development": [
37 | "last 1 chrome version",
38 | "last 1 firefox version",
39 | "last 1 safari version"
40 | ]
41 | },
42 | "devDependencies": {
43 | "autoprefixer": "^10.4.7",
44 | "postcss": "^8.4.14",
45 | "tailwindcss": "^3.1.3"
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/src/Components/Footer.js:
--------------------------------------------------------------------------------
1 | import { FaArrowRight } from "react-icons/fa";
2 |
3 | export default function Footer() {
4 | return (
5 | <>
6 |
11 |
12 |
13 |
14 |
15 | ED
16 |
17 |
18 | The largest 3D NFT marketplace. Authentic and truly unique
19 | digital creation. Signed and issued by the creator. made
20 | possible by blockchain technology
21 |
22 |
23 |
24 |
Quick Links
25 |
About
26 |
Blog
27 |
Press
28 |
29 |
30 |
Resources
31 |
Help Center
32 |
Community
33 |
Partners
34 |
35 |
36 |
Subscribe
37 |
38 | Get NFT Updates
39 |
40 |
41 |
42 |
43 |
44 | >
45 | );
46 | }
47 |
--------------------------------------------------------------------------------
/src/Components/Collections.js:
--------------------------------------------------------------------------------
1 | import Button from "./Button";
2 | import { FaEthereum } from "react-icons/fa";
3 |
4 | import data from "../data/item-nft.json";
5 |
6 | export default function Collections() {
7 | return (
8 | <>
9 |
14 |
15 |
16 | Hot Drops
17 |
18 |
19 |
20 |
21 | {data.map((item) => {
22 | return (
23 |
24 |
25 |
30 |
31 |
32 | {item.title}
33 |
34 |
@{item.username}
35 |
36 |
37 |
{item.price} ETH
38 |
39 |
40 |
41 |
42 |
43 |
44 | );
45 | })}
46 |
47 |
48 | >
49 | );
50 | }
51 |
--------------------------------------------------------------------------------
/src/Components/Navbar.js:
--------------------------------------------------------------------------------
1 | import { useState } from "react";
2 | import { BiMenu, BiXCircle } from "react-icons/bi";
3 | import Button from "./Button";
4 | export default function Navbar() {
5 | const [active, setActive] = useState(true);
6 |
7 | return (
8 |
9 |
10 |
11 | ED
12 |
13 |
14 | setActive(!active)}>
15 | {active ? : }
16 |
17 |
18 |
58 |
59 |
60 | );
61 | }
62 |
--------------------------------------------------------------------------------
/public/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
12 |
13 |
17 |
18 |
27 | React App
28 |
29 |
30 |
34 |
35 |
36 | You need to enable JavaScript to run this app.
37 |
38 |
48 |
49 |
50 |
--------------------------------------------------------------------------------
/src/Components/Steps.js:
--------------------------------------------------------------------------------
1 | export default function Steps() {
2 | return (
3 | <>
4 |
9 |
10 | Create and sell your NFTs
11 |
12 |
13 |
14 |
15 |
16 | Create Artwork
17 |
18 |
19 | Create your collection, Add social links, a description, profile &
20 | banner images, and set a secondary sales fee
21 |
22 |
23 |
24 |
25 |
26 | Add your NFTs
27 |
28 |
29 | Upload your work, add a title and description, and customize your
30 | NFTs with properties, stats, and unlockable content.
31 |
32 |
33 |
34 |
35 |
36 | List them for sale
37 |
38 |
39 | Choose between auctions and declining-price listings. You choose
40 | how you want to sell your NFTs, and we help you sell them!
41 |
42 |
43 |
44 |
45 | >
46 | );
47 | }
48 |
--------------------------------------------------------------------------------
/src/Components/Hero.js:
--------------------------------------------------------------------------------
1 | import Button from "./Button";
2 | import Spline from "@splinetool/react-spline";
3 |
4 | export default function Hero() {
5 | return (
6 | <>
7 |
8 |
9 |
14 |
15 | Discover{" "}
16 |
17 | Rare 3D Collections
18 | {" "}
19 | in the{" "}
20 |
21 | World
22 |
23 |
24 |
25 | The largest 3D NFT marketplace authentic and truly unique digital
26 | creation. Create yout own NFT dream gallery
27 |
28 |
29 |
30 |
$278M
31 |
Trading Volume
32 |
33 |
34 |
300K
35 |
Art Work
36 |
37 |
38 |
1.8M
39 |
Total Users
40 |
41 |
42 |
43 |
44 |
45 |
46 |
51 |
55 |
56 |
57 |
58 | >
59 | );
60 | }
61 |
--------------------------------------------------------------------------------
/src/Components/Creators.js:
--------------------------------------------------------------------------------
1 | import { FaEthereum } from "react-icons/fa";
2 | import React from "react";
3 | import Marquee from "react-fast-marquee";
4 | import data from "../data/creator.json";
5 | export default function Creators() {
6 | return (
7 |
8 |
9 | Top Creators
10 |
11 |
16 | {data.map((item) => {
17 | return (
18 |
19 |
24 |
25 |
26 | {item.name}
27 |
28 |
29 |
30 |
31 |
32 |
{item.value}
33 |
34 |
35 |
36 | );
37 | })}
38 |
39 |
45 | {data.map((item) => {
46 | return (
47 |
48 |
53 |
54 |
55 | {item.name}
56 |
57 |
58 |
59 |
60 |
61 |
{item.value}
62 |
63 |
64 |
65 | );
66 | })}
67 |
68 |
69 | );
70 | }
71 |
--------------------------------------------------------------------------------