Skip to content

Mantle-Hackaton/Blueprint

Repository files navigation

Blueprint - Tokenized FIBRAs Trading Platform

A blockchain-based platform for trading tokenized Real Estate Investment Trusts (FIBRAs) backed by actual Mexican real estate properties.

Next.js TypeScript Para Wallet

🌟 Overview

Blueprint enables foreign investors to buy and sell tokenized FIBRAs, Mexican Real Estate Investment Trusts and invest in properties.

What are FIBRAs?

FIBRAs in Mexico are Real Estate Investment Trusts that allow investors to:

  • Invest in diversified real estate portfolios without buying properties directly
  • Generate passive income from property rentals (mandatory 95% distribution of taxable income)
  • Access low entry barriers - start investing with small amounts
  • Benefit from professional management of properties
  • Enjoy tax benefits - gains from selling FIBRA certificates are typically tax-exempt

✨ Features

🏒 Tokenized FIBRAs Trading

  • Buy and sell tokenized FIBRAs backed by real Mexican real estate
  • Real-time price tracking and market data
  • On-chain transparency for all transactions
  • Support for multiple FIBRA types (Industrial, Commercial, Office, Mixed)

πŸ’° CETES Integration

  • Invest in Mexican Treasury Certificates (28-day maturity bonds)
  • Auto-reinvestment options
  • Real-time APR tracking
  • Position management with maturity tracking

πŸ—οΈ Real Estate Crowdfunding

  • Invest in commercial and residential properties
  • Fractional ownership through tokenized shares
  • Expected returns tracking
  • Property portfolio diversification

πŸ” Para Wallet Integration

  • Seamless wallet connection using Para Wallet SDK
  • Secure transaction signing
  • Multi-chain support (Mantle Sepolia)
  • User-friendly authentication flow

🎨 Modern UI/UX

  • Beautiful Blueprint design system
  • Dark mode support
  • Responsive design for all devices
  • Intuitive dashboard and navigation

πŸš€ Getting Started

Prerequisites

  • Node.js 18+ and npm/pnpm/yarn
  • Para Wallet API Key - Get yours at Para Developer Portal
  • Mantle Sepolia RPC (optional, for better performance) - Get from Alchemy or use public RPC

Installation

  1. Clone the repository

    git clone https://github.com/Mantle-Hackaton/Front_1.git
    cd Front_1
  2. Install dependencies

    npm install
    # or
    pnpm install
    # or
    yarn install
  3. Configure environment variables

    Create a .env.local file in the root directory:

    # Para Wallet API Key (required)
    NEXT_PUBLIC_API_KEY=beta_your_para_api_key_here
    
    # Mantle Sepolia RPC (optional, for better performance)
    NEXT_PUBLIC_ALCHEMY_API_KEY=your_alchemy_api_key
    # OR
    NEXT_PUBLIC_MANTLE_SEPOLIA_RPC_URL=https://rpc.sepolia.mantle.xyz
  4. Run the development server

    npm run dev
    # or
    pnpm dev
  5. Open your browser

    Navigate to http://localhost:3000

πŸ“ Project Structure

blueprint-mantle/
β”œβ”€β”€ app/                    # Next.js app directory
β”‚   β”œβ”€β”€ dashboard/         # Dashboard pages
β”‚   β”‚   β”œβ”€β”€ markets/       # Markets page with CETES, FIBRAs, Real Estate
β”‚   β”‚   β”œβ”€β”€ portfolio/     # Portfolio management
β”‚   β”‚   └── ...
β”‚   β”œβ”€β”€ manager/           # FIBRA manager page (deploy new FIBRAs)
β”‚   β”œβ”€β”€ login/             # Login page with Para Wallet
β”‚   β”œβ”€β”€ signup/            # Signup page
β”‚   └── providers.tsx      # Para Wallet and React Query providers
β”œβ”€β”€ components/
β”‚   β”œβ”€β”€ markets/           # Market components (CETES, FIBRAs, Real Estate)
β”‚   β”œβ”€β”€ dashboard/         # Dashboard components
β”‚   β”œβ”€β”€ ui/                # shadcn/ui components
β”‚   └── ...
β”œβ”€β”€ lib/
β”‚   β”œβ”€β”€ contracts.ts       # Smart contract addresses and ABIs
β”‚   └── utils.ts           # Utility functions
└── public/                # Static assets

πŸ”§ Configuration

Para Wallet Setup

  1. Visit Para Developer Portal
  2. Create an account or sign in
  3. Create a new project
  4. Copy your API Key (starts with beta_)
  5. Add it to .env.local as NEXT_PUBLIC_API_KEY

Smart Contracts

The platform uses smart contracts deployed on Mantle Sepolia (Chain ID: 5003):

  • CetesVault: For CETES investments
  • CetesOracle: For APR and MXN/USD rate data
  • FibrasFactory: For deploying new FIBRAs
  • USDb: For payments (testnet stablecoin)

Contract addresses are defined in lib/contracts.ts.

πŸ› οΈ Development

Available Scripts

# Development server
npm run dev

# Production build
npm run build

# Start production server
npm start

# Lint code
npm run lint

Tech Stack

  • Framework: Next.js 16.0 (App Router)
  • Language: TypeScript
  • Styling: Tailwind CSS 4
  • UI Components: Radix UI + shadcn/ui
  • Wallet: Para Wallet SDK
  • Blockchain: viem, wagmi
  • State Management: React Query (TanStack Query)

πŸ“Š Markets

CETES Market

  • 28-day maturity Mexican Treasury Certificates
  • Real-time APR tracking
  • Auto-reinvestment options
  • Position management

FIBRAs Market

  • Tokenized Real Estate Investment Trusts
  • On-chain supply tracking
  • Price and yield information
  • Buy/sell functionality

Real Estate Crowdfunding

  • Commercial and residential properties
  • Fractional ownership
  • Expected returns tracking
  • Investment tracking

🀝 Contributing

We welcome contributions! Please follow these steps:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'feat: Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“ License

This project is part of the Mantle Hackathon.

πŸ”— Links


πŸ”— Smart Contracts (Mantle Sepolia)

All contracts are deployed on Mantle Sepolia (Chain ID: 5003).
Addresses are defined in lib/contracts.ts.

CetesToken: ERC20 token representing CETES positions 0xd7E0AB9e4DcafFDAc2322DC8c41963Dd2e3977C8

CetesOracle: Provides CETES APR and MXN/USD exchange rate data 0x287b417feAC4857cBd3eD87Ec4C3e28585fAc6F7

CetesVault: Manages CETES deposits, redemptions, and reinvestment logic 0x6cEE338a4CBF57B9E89482C3251a56A314a8502a

USDb: Testnet USD stablecoin used for payments and settlements 0xFD4F186BD8458b8c07E6864cA4f3B171D64EE413

FibrasFactory: Factory contract for deploying new tokenized FIBRAs 0x088FE2A038ECB7ad49d1b8D59C07186c6B89A311

FibraPriceOracle: Oracle providing pricing and yield data for FIBRA tokens 0xa9869d65e972b19434d9399b241ac67789e26120

FibrasDex: On-chain DEX for trading tokenized FIBRAs 0xdc834d3cfbd3b96d563869efa8c4823b58105b13

PropertyNFT: ERC721 contract representing individual real estate properties 0x90eb2825dd49ea39302ff1993d41706065d2f0de

PropertyCrowdfundingFactory: Factory for deploying fractional real estate crowdfunding campaigns 0x18c2bbee7e7fe4653ff41b0d21af5e7f6784d948


πŸ“§ Support

For issues and questions, please open an issue on GitHub.

Releases

No releases published

Packages

 
 
 

Contributors