Skip to content

A blockchain-based platform for verifying and tokenizing blue carbon projects. This platform uses AI to analyze coastal ecosystem images and issues carbon credits as NFTs.

Notifications You must be signed in to change notification settings

Unnati-Gupta24/Carbon-MRV-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Blue Carbon Project 🌊🌱

A blockchain-based platform for verifying and tokenizing blue carbon projects. This platform uses AI to analyze coastal ecosystem images and issues carbon credits as NFTs.

Features 🚀

  • Blockchain Integration: Smart contract deployment on Polygon Network
  • AI Analysis: Image processing for carbon credit calculation
  • NFT Minting: Convert carbon credits into tradeable NFTs
  • Project Management: Track and manage blue carbon projects
  • Verification System: Verified organization status for project validation

Tech Stack 💻

  • Frontend: React.js, TailwindCSS
  • Backend: Node.js, Express
  • Blockchain: Ethereum/Polygon, Solidity
  • AI/ML: Python (for image analysis)
  • Storage: IPFS (for decentralized storage)

Prerequisites 📋

  • Node.js (v14 or higher)
  • Python 3.x (for AI model)
  • MetaMask wallet
  • Git

Installation 🔧

  1. Clone the repository:
git clone https://github.com/yourusername/blue-carbon-project.git
cd blue-carbon-project
  1. Install dependencies:
# Install backend dependencies
cd backend
npm install

# Install frontend dependencies
cd ../frontend
npm install
  1. Set up environment variables:
# In backend/.env
CONTRACT_ADDRESS=your_contract_address
PRIVATE_KEY=your_private_key
RPC_URL=your_rpc_url
PORT=3001

# In frontend/.env
REACT_APP_BACKEND_URL=http://localhost:3001

Running the Application 🏃‍♂️

  1. Start the backend server:
cd backend
npm start
  1. Start the frontend development server:
cd frontend
npm start
  1. Access the application at http://localhost:3000

API Endpoints 📡

  • POST /api/projects: Create a new project
  • GET /api/projects/user/:address: Get user's projects
  • GET /api/projects/:id: Get single project details
  • GET /api/stats: Get platform statistics
  • GET /api/verify/:address: Check if address is verified
  • GET /api/admin: Get admin address
  • POST /api/admin/verify-org: Add verified organization

Smart Contract Functions 📘

  • createProject: Create a new blue carbon project
  • verifyProjectAndIssueCredits: Verify project and issue carbon credits
  • addVerifiedOrganization: Add a verified organization
  • getPlatformStats: Get platform statistics
  • getProject: Get project details

Project Structure 📁

blue-carbon-project/
├── backend/
│   ├── ai_results/
│   ├── contract/
│   │   └── BlueCarbonRegistry.sol
│   ├── controllers/
│   │   ├── adminController.js
│   │   ├── healthController.js
│   │   └── projectController.js
│   ├── models/
│   │   ├── aiModel.js
│   │   └── blockchainModel.js
│   ├── routes/
│   │   ├── adminRoutes.js
│   │   ├── healthRoutes.js
│   │   └── projectRoutes.js
│   ├── services/
│   │   ├── aiService.js
│   │   └── blockchainService.js
│   ├── uploads/
│   ├── utils/
│   │   └── multerConfig.js
│   ├── .env
│   └── .gitignore
├── frontend/
│   ├── src/
│   │   ├── components/
│   │   ├── pages/
│   │   └── App.js
│   └── public/
└── README.md

Contributing 🤝

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

License 📝

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments 🙏

About

A blockchain-based platform for verifying and tokenizing blue carbon projects. This platform uses AI to analyze coastal ecosystem images and issues carbon credits as NFTs.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published