Docibo is a decentralized prediction market application built on the Aptos blockchain. This platform allows users to create and participate in prediction markets on various real-world events or speculative topics, leveraging the security and decentralization of Aptos.
- Decentralized Prediction Markets: Create and bet on outcomes of events.
- Aptos Wallet Integration: Seamlessly connect with Aptos-compatible wallets like Petra and Privy.
- Intuitive User Interface: A modern, responsive, and visually appealing design for easy market interaction.
- Two-State Market Cards: Interactive market cards that expand to show betting options.
- Themed UI: Features a dark theme with glassmorphism effects and vibrant purple/blue accents.
To get this project up and running on your local machine, follow these steps:
Make sure you have the following installed:
- Node.js (v18 or later recommended)
- npm (v9 or later) or Yarn (v1 or later)
- Git
-
Clone the repository:
git clone <repository-url> cd docibo-devnet
-
Install dependencies:
npm install # or yarn install
To start the development server:
npm run dev
# or
yarn devOpen http://localhost:3000 in your browser to see the application.
- Next.js: React framework for building server-side rendered and static web applications.
- React: JavaScript library for building user interfaces.
- TypeScript: Superset of JavaScript that adds static types.
- Aptos Blockchain: For decentralized operations and smart contracts.
- @aptos-labs/wallet-adapter-react: React hooks for Aptos wallet integration.
- PostCSS: For transforming CSS with JavaScript plugins.
- Tailwind CSS (potentially, though custom CSS is currently used): A utility-first CSS framework (if integrated in future).
docibo-devnet/
├── .git/
├── .next/ # Next.js build output
├── app/ # Main application routes and pages
│ ├── favicon.ico
│ ├── globals.css # Global styles (custom CSS)
│ ├── layout.tsx # Root layout component
│ ├── page.tsx # Home page component
│ ├── providers.tsx # Context providers (e.g., wallet, theme)
│ └── market/
│ └── [id]/
│ └── page.tsx # Dynamic market detail page
├── components/ # Reusable UI components
│ └── WalletConnectModal.tsx # Modal for wallet connection
├── lib/ # Utility functions and libraries
│ ├── aptos.ts
│ └── privy-aptos.ts
├── public/ # Static assets
├── .gitignore
├── eslint.config.mjs
├── next.config.ts
├── package-lock.json
├── package.json
├── postcss.config.mjs
├── README.md
└── tsconfig.json
- Re-integrate
getMarketCountand owner-specific functionalities. - Implement actual market creation and betting logic with Aptos smart contracts.
- Detailed market pages displaying historical data, different betting outcomes, etc.
- User profiles and bet history.
- Notifications and real-time updates.