# Clone the repository
git clone <repository-url>
cd GraphDe
# Install dependencies
cd backend && npm install
cd ../frontend && npm install
# Set up environment variables
cd ../backend
cp env.example .env
# Edit .env with your API keys
# Start the application
cd ../backend && npm start
cd ../frontend && npm startVisit http://localhost:3000 to start using GraphDe!
GraphDe is a full-stack web application that combines AI-powered natural language processing with blockchain data analysis. Users can ask questions in plain English and receive interactive charts and visualizations of blockchain data.
- 🤖 AI Chatbot Interface - Natural language queries for blockchain data
- 📊 Interactive Charts - Beautiful visualizations using Chart.js
- ⛓️ Multi-Chain Support - Ethereum, Arbitrum, Optimism, Aptos, Avalanche, Base, Kaia, Polygon
- 🔄 Real-time Data - Live blockchain data via Nodit MCP
- 🎨 Modern UI - Clean, responsive interface with Tailwind CSS
- 🔒 Secure - Rate limiting, input validation, and error handling
- "Show me the balance of 0x742d35Cc6634C0532925a3b8D4C9db96C4b4d8b6 on Ethereum"
- "Graph the top tokens in this wallet"
- "What's the transaction volume for this address?"
- "Create a pie chart of token distribution"
GraphDe/
├── backend/ # Node.js API server
│ ├── routes/ # API endpoints
│ ├── services/ # Business logic
│ ├── middleware/ # Express middleware
│ └── utils/ # Utility functions
├── frontend/ # React application
│ ├── src/
│ │ ├── components/ # React components
│ │ ├── services/ # API calls
│ │ └── utils/ # Utility functions
└── docs/ # Documentation
- Node.js - Runtime environment
- Express.js - Web framework
- OpenAI API - Natural language processing
- Nodit MCP - Blockchain data access
- Joi - Input validation
- Helmet - Security middleware
- React - UI framework
- Tailwind CSS - Styling
- Chart.js - Data visualization
- Lucide React - Icons
- Axios - HTTP client
POST /api/chat/message- Process chat messageGET /api/chat/history/:sessionId- Get chat historyDELETE /api/chat/history/:sessionId- Clear chat history
GET /api/mcp/balance/:chain/:address- Get wallet balanceGET /api/mcp/tokens/:chain/:address- Get token dataGET /api/mcp/transactions/:chain/:address- Get transaction historyPOST /api/mcp/query- Execute custom MCP query
- Node.js v16+
- OpenAI API key
- Nodit MCP API key
PORT=3001
NODE_ENV=production
OPENAI_API_KEY=your_openai_api_key
NODIT_API_KEY=your_nodit_api_key
FRONTEND_URL=https://your-domain.com# Backend
cd backend && npm run build && npm start
# Frontend
cd frontend && npm run build
# Deploy build/ folder to your hosting service- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- User authentication and session management
- Database integration for persistent data
- Advanced chart types and customization
- Multi-language support
- Mobile application
- WebSocket support for real-time updates
- Export functionality for charts and data
Made with ❤️ by the GraphDe Team