diff --git a/packages/nextjs/app/market/page.tsx b/packages/nextjs/app/market/page.tsx new file mode 100644 index 0000000..a15c505 --- /dev/null +++ b/packages/nextjs/app/market/page.tsx @@ -0,0 +1,153 @@ +"use client"; + +import React from "react"; +import { useRouter } from "next/navigation"; +import { motion } from "framer-motion"; +import { Address } from "~~/components/scaffold-eth"; + +// Dummy NFT data +const DUMMY_NFTS = [ + { + id: "1", + tokenId: "1", + owner: "0x1234567890123456789012345678901234567890", + metadata: { + name: "Cyber Runner #1", + description: "A futuristic cyber athlete in neon-lit streets", + image: "https://picsum.photos/400/400?random=1", + attributes: [ + { trait_type: "Background", value: "Neon City" }, + { trait_type: "Rarity", value: "Legendary" }, + { trait_type: "Power Level", value: "89" } + ] + }, + }, + { + id: "2", + tokenId: "2", + owner: "0x2345678901234567890123456789012345678901", + metadata: { + name: "Digital Dreams #42", + description: "Abstract digital art with vibrant colors and geometric patterns", + image: "https://picsum.photos/400/400?random=2", + attributes: [ + { trait_type: "Style", value: "Abstract" }, + { trait_type: "Colors", value: "Vibrant" }, + { trait_type: "Edition", value: "42/100" } + ] + }, + }, + { + id: "3", + tokenId: "3", + owner: "0x3456789012345678901234567890123456789012", + metadata: { + name: "Neon Samurai", + description: "A modern warrior in a cyberpunk setting", + image: "https://picsum.photos/400/400?random=3", + attributes: [ + { trait_type: "Class", value: "Warrior" }, + { trait_type: "Weapon", value: "Plasma Katana" }, + { trait_type: "Level", value: "75" } + ] + }, + }, +]; + +export default function Marketplace() { + const router = useRouter(); + + return ( +
+ {/* Hero Section with Back Button */} +
+
+ + +

NFT Gallery

+

View your collection of unique digital assets

+
+
+ + {/* NFT Grid */} +
+
+
+ {DUMMY_NFTS.map((nft, index) => ( + + {/* NFT Image */} +
+ {nft.metadata.name} +
+ + {/* NFT Details */} +
+

{nft.metadata.name}

+

{nft.metadata.description}

+ + {/* Owner */} +
+ Owner: +
+
+ + {/* Attributes */} +
+ {nft.metadata.attributes.map((attr, i) => ( +
+
{attr.trait_type}
+
{attr.value}
+
+ ))} +
+
+
+ ))} +
+
+
+ + {/* Stats Section */} +
+
+
+

{DUMMY_NFTS.length}

+

Total NFTs

+
+
+

+ {DUMMY_NFTS[0].metadata.attributes.length} +

+

Attributes

+
+
+

+ {new Set(DUMMY_NFTS.map(nft => nft.owner)).size} +

+

Unique Owners

+
+
+
+
+ ); +} \ No newline at end of file diff --git a/packages/nextjs/app/page.tsx b/packages/nextjs/app/page.tsx index cc1bc8b..7be0f3f 100644 --- a/packages/nextjs/app/page.tsx +++ b/packages/nextjs/app/page.tsx @@ -41,64 +41,122 @@ const Home: NextPage = () => { }; return ( -
-
-

- - Welcome to Momentum - - - Stake your steps, earn rewards + <> + {/* Background Overlay */} + + + {/* Main Content */} + + {/* Pull Down Indicator */} + + + ↓ + + + Pull down for Leaderboard -

+ - {/* Stats Section */} -
- - +
+ Swipe down to check the leaderboard rankings
- {/* Stake Card Section */} -
-
-
- Stake Now! - - - -
+
+

+ + Welcome to Momentum + + + Stake your steps, earn rewards + +

+ + {/* Stats Section */} +
+ +
- -
- {/* Connected Address */} - {connectedAddress && ( -
- Connected: -
+ {/* Stake Card Section */} +
+
+
+ Stake Now! + + + +
+
+
- )} - {/* Footer Links */} -
- -

Debug Contracts

-

Test and debug your smart contracts

- - - -

Block Explorer

-

View transaction history and contract interactions

- + {/* Connected Address */} + {connectedAddress && ( +
+ Connected: +
+
+ )} + + {/* Footer Links */} + {/*
+ +

Debug Contracts

+

Test and debug your smart contracts

+ + + +

Block Explorer

+

View transaction history and contract interactions

+ +
*/}
-
-
+ + ); };