Compare commits

...

1 Commits

  • feat: SEO optimization for maximum exposure
    - Added comprehensive meta tags with 40+ keywords
    - Created sitemap.ts with all routes
    - Updated robots.txt for search engine crawlers
    - Added manifest.json for PWA support
    - Added JSON-LD structured data for SEO
    - Enhanced README with:
      - Table of contents
      - Star history chart
      - Better keyword density
      - Social media links
      - Tech stack tables
      - API documentation tables
    - Added 20 GitHub topics for discoverability
    - Optimized Open Graph and Twitter cards
5 changed files with 657 additions and 180 deletions

499
README.md
View File

@@ -1,21 +1,39 @@
# Mantle AI Trader
<div align="center"> <div align="center">
<!-- Main Banner --> <!-- Main Banner -->
<img src="https://img.shields.io/badge/Mantle%20AI%20Trader-🤖%20Trading%20Bot-blue?style=for-the-badge&logo=robot&logoColor=white&labelColor=1a1a2e&color=16213e" alt="Mantle AI Trader Banner" /> <img src="https://img.shields.io/badge/Mantle%20AI%20Trader-🤖%20AI%20Crypto%20Trading%20Bot-blue?style=for-the-badge&logo=robot&logoColor=white&labelColor=1a1a2e&color=16213e" alt="Mantle AI Trader - AI-Powered Crypto Trading Bot" />
<h3>AI-Powered Fundamental News-Based Trading Bot</h3> <h1>🤖 Mantle AI Trader</h1>
<h3>AI-Powered Cryptocurrency Trading Bot with News Sentiment Analysis</h3>
<p>
<strong>Free Open Source Trading Bot</strong> •
<strong>Bybit Integration</strong> •
<strong>Real-time Signals</strong> •
<strong>Backtesting Engine</strong>
</p>
<!-- Badges --> <!-- Badges -->
<p> <p>
<img src="https://img.shields.io/badge/Status-Active-success?style=flat-square" alt="Status" /> <a href="https://github.com/roman-ryzenadvanced/mantle-ai-trader/blob/main/LICENSE">
<img src="https://img.shields.io/badge/Platform-Next.js%2016-black?style=flat-square&logo=next.js" alt="Platform" /> <img src="https://img.shields.io/github/license/roman-ryzenadvanced/mantle-ai-trader?style=flat-square&color=green" alt="License" />
<img src="https://img.shields.io/badge/AI-z--ai--web--dev--sdk-purple?style=flat-square" alt="AI SDK" /> </a>
<img src="https://img.shields.io/badge/Exchange-Bybit-orange?style=flat-square" alt="Exchange" /> <img src="https://img.shields.io/github/stars/roman-ryzenadvanced/mantle-ai-trader?style=flat-square&logo=github&color=yellow" alt="Stars" />
<img src="https://img.shields.io/github/forks/roman-ryzenadvanced/mantle-ai-trader?style=flat-square&logo=github" alt="Forks" />
<img src="https://img.shields.io/github/issues/roman-ryzenadvanced/mantle-ai-trader?style=flat-square" alt="Issues" />
<img src="https://img.shields.io/github/last-commit/roman-ryzenadvanced/mantle-ai-trader?style=flat-square" alt="Last Commit" />
</p> </p>
<p><em>Built for Mantle Turing Test Hackathon</em></p> <p>
<img src="https://img.shields.io/badge/Platform-Next.js%2016-black?style=flat-square&logo=next.js" alt="Platform" />
<img src="https://img.shields.io/badge/Language-TypeScript%205-blue?style=flat-square&logo=typescript" alt="TypeScript" />
<img src="https://img.shields.io/badge/AI-z--ai--web--dev--sdk-purple?style=flat-square" alt="AI SDK" />
<img src="https://img.shields.io/badge/Exchange-Bybit-orange?style=flat-square" alt="Bybit" />
<img src="https://img.shields.io/badge/Database-SQLite-blue?style=flat-square&logo=sqlite" alt="SQLite" />
</p>
<p><em>🏆 Built for <strong>Mantle Turing Test Hackathon</strong> - $120,000 Prize Pool</em></p>
<!-- Made by Badge --> <!-- Made by Badge -->
<a href="https://rommark.dev" target="_blank"> <a href="https://rommark.dev" target="_blank">
@@ -24,62 +42,79 @@
</div> </div>
---
## 📋 Table of Contents
- [Features](#-features)
- [Demo](#-demo)
- [Quick Start](#-quick-start)
- [Installation](#-installation)
- [Usage](#-usage)
- [API Reference](#-api-reference)
- [Configuration](#-configuration)
- [Architecture](#-architecture)
- [Testing](#-testing)
- [Contributing](#-contributing)
- [License](#-license)
---
## 🚀 Features ## 🚀 Features
### Core Trading Capabilities ### 🤖 AI-Powered Trading Signals
- **AI Signal Generation**: Advanced signal generation powered by AI with multi-factor analysis | Feature | Description |
- **Fundamental News Analysis**: Real-time news aggregation from multiple sources with sentiment analysis |---------|-------------|
- **Technical Analysis**: Comprehensive technical indicators (RSI, MACD, SMA, EMA) and pattern recognition | **Signal Generation** | AI-generated buy/sell signals with confidence scores |
- **Risk Assessment**: Intelligent risk scoring and position sizing recommendations | **Technical Analysis** | RSI, MACD, SMA, EMA, Bollinger Bands |
| **Pattern Recognition** | Doji, Hammer, Engulfing, Morning Star |
| **Support/Resistance** | Automated level detection |
### Trading Modes ### 📰 Fundamental News Analysis
- **Demo/Paper Trading**: Test strategies without real money - **Multi-Source Aggregation**: CryptoPanic, CoinGecko, CryptoCompare
- **Manual Mode**: Execute signals manually with full control - **Sentiment Scoring**: Bullish/Bearish classification (-1 to 1)
- **Auto-Trading**: Automated signal execution (configurable) - **Real-time Updates**: Live news feed integration
- **Impact Assessment**: News importance scoring
### Analysis Tools ### 📊 Backtesting Engine
- **Backtesting Engine**: Test strategies on historical data with performance metrics - **Historical Simulation**: Test strategies on past data
- **Signal Rating System**: Track and rate signal performance - **Performance Metrics**: Sharpe Ratio, Win Rate, Max Drawdown
- **Portfolio Analytics**: Real-time P&L tracking and portfolio visualization - **Strategy Optimization**: Parameter grid search
- **Detailed Reports**: Trade-by-trade analysis
### Integration ### 💰 Paper Trading (Demo Mode)
- **Bybit API**: Full integration with Bybit exchange (spot and futures) - **Risk-Free Testing**: Practice without real money
- **WebSocket Real-time Updates**: Live price feeds and portfolio sync - **Real Market Prices**: Live price simulation
- **VectorDB**: Semantic search for news and analysis - **Portfolio Tracking**: P&L monitoring
- **Position Management**: Stop-loss/Take-profit
## 📊 Architecture ### 🔗 Exchange Integration
- **Bybit API**: Full spot and futures support
- **Testnet Mode**: Safe testing environment
- **Order Types**: Market, Limit, Stop orders
- **Position Management**: Leverage, margin, risk controls
``` ---
mantle-ai-trader/
├── src/
│ ├── app/ # Next.js App Router
│ │ ├── api/ # API Routes
│ │ │ └── trading/ # Trading endpoints
│ │ └── page.tsx # Main Dashboard
│ ├── lib/
│ │ ├── trading/
│ │ │ ├── core/ # Core types & Bybit client
│ │ │ ├── signals/ # Signal generation engine
│ │ │ ├── news/ # News aggregation
│ │ │ ├── backtest/ # Backtesting engine
│ │ │ └── demo/ # Paper trading
│ │ └── vector/ # VectorDB integration
│ └── components/ui/ # shadcn/ui components
├── mini-services/
│ └── trading-service/ # WebSocket service
├── prisma/
│ └── schema.prisma # Database schema
└── tests/ # Test files
```
## 🛠 Installation ## 🎬 Demo
### Prerequisites <details>
- Node.js 18+ or Bun <summary>📷 View Screenshots</summary>
- SQLite (included)
- Bybit API keys (optional for live trading)
### Setup ### Dashboard Overview
![Dashboard](./public/dashboard-screenshot.png)
### Signal Generation
![Signals](./public/signals-screenshot.png)
### Paper Trading
![Demo Trading](./public/demo-trading-screenshot.png)
</details>
---
## ⚡ Quick Start
```bash ```bash
# Clone the repository # Clone the repository
@@ -89,58 +124,139 @@ cd mantle-ai-trader
# Install dependencies # Install dependencies
bun install bun install
# Initialize database # Setup database
bun run db:push bun run db:push
# Start development server # Start the application
bun run dev
```
Open [http://localhost:3000](http://localhost:3000) to access the dashboard.
---
## 🛠 Installation
### Prerequisites
| Requirement | Version | Notes |
|------------|---------|-------|
| Node.js | 18+ | or Bun runtime |
| SQLite | Included | Default database |
| Bybit API | Optional | For live trading |
### Step-by-Step Setup
```bash
# 1. Clone repository
git clone https://github.com/roman-ryzenadvanced/mantle-ai-trader.git
# 2. Navigate to project
cd mantle-ai-trader
# 3. Install dependencies
bun install
# 4. Configure environment
cp .env.example .env
# Edit .env with your API keys (optional)
# 5. Initialize database
bun run db:push
# 6. Start development server
bun run dev bun run dev
# Start WebSocket service (separate terminal) # 7. (Optional) Start WebSocket service
bun run trading-service bun run trading-service
``` ```
### Docker Installation (Coming Soon)
```bash
docker-compose up -d
```
---
## 📈 Usage ## 📈 Usage
### Dashboard ### Web Dashboard
Access the dashboard at `http://localhost:3000` | Tab | Function |
|-----|----------|
| **Signals** | Generate and view AI trading signals |
| **Positions** | Manage open positions and portfolio |
| **Backtest** | Run strategy simulations |
| **News** | View market news with sentiment |
1. **Signals Tab**: Generate AI signals for any supported trading pair ### Supported Trading Pairs
2. **Positions Tab**: View open positions and portfolio allocation
3. **Backtest Tab**: Run strategy backtests on historical data
4. **News Tab**: Browse latest market news with sentiment analysis
### API Endpoints - BTCUSDT, ETHUSDT, SOLUSDT, BNBUSDT, XRPUSDT
- And 100+ more via Bybit API
#### Signals ### Signal Example
```bash
# Generate signal
POST /api/trading/signals
Body: { "symbol": "BTCUSDT", "timeframe": "1h", "demo": true }
# Get signals ```json
GET /api/trading/signals?symbol=BTCUSDT&limit=50 {
"symbol": "BTCUSDT",
"action": "BUY",
"confidence": 0.85,
"reasoning": "Bullish trend with strong support at $44,000. RSI oversold recovery.",
"stopLoss": 43500,
"takeProfit": 46500,
"technicalScore": 0.78,
"sentimentScore": 0.65
}
``` ```
#### Demo Trading ---
```bash
# Get portfolio
GET /api/trading/demo?action=portfolio
# Place order ## 🔌 API Reference
POST /api/trading/demo
Body: { "action": "place_order", "symbol": "BTCUSDT", "side": "BUY", "quantity": 0.01, "type": "MARKET" }
# Close position ### Base URL
POST /api/trading/demo ```
Body: { "action": "close_position", "symbol": "BTCUSDT" } http://localhost:3000/api/trading
``` ```
#### Backtest ### Endpoints
```bash
# Run backtest #### Generate Signal
POST /api/trading/backtest ```http
Body: { POST /signals
Content-Type: application/json
{
"symbol": "BTCUSDT",
"timeframe": "1h"
}
```
#### Get Portfolio
```http
GET /demo?action=portfolio
```
#### Place Demo Order
```http
POST /demo
Content-Type: application/json
{
"action": "place_order",
"symbol": "BTCUSDT",
"side": "BUY",
"quantity": 0.01,
"type": "MARKET"
}
```
#### Run Backtest
```http
POST /backtest
Content-Type: application/json
{
"symbol": "BTCUSDT", "symbol": "BTCUSDT",
"startDate": "2024-01-01", "startDate": "2024-01-01",
"endDate": "2024-06-01", "endDate": "2024-06-01",
@@ -148,125 +264,177 @@ Body: {
} }
``` ```
#### News #### Get News
```bash ```http
# Get news GET /news?symbol=BTC&limit=20
GET /api/trading/news?symbol=BTC&limit=20
# Get sentiment
GET /api/trading/news/sentiment?symbol=BTC
``` ```
---
## 🔧 Configuration ## 🔧 Configuration
### Environment Variables ### Environment Variables
Create a `.env` file:
```env ```env
# Bybit API (optional - for live trading) # Bybit Exchange (Optional)
BYBIT_API_KEY=your_api_key BYBIT_API_KEY=your_api_key
BYBIT_API_SECRET=your_api_secret BYBIT_API_SECRET=your_api_secret
BYBIT_TESTNET=true BYBIT_TESTNET=true
# News APIs (optional) # News APIs (Optional)
CRYPTOPANIC_API_KEY=your_key CRYPTOPANIC_API_KEY=your_key
CRYPTOCOMPARE_API_KEY=your_key CRYPTOCOMPARE_API_KEY=your_key
# ChromaDB (optional - for vector search) # Vector Database (Optional)
CHROMADB_URL=http://localhost:8000 CHROMADB_URL=http://localhost:8000
# Database # Database
DATABASE_URL="file:./prisma/data/mantle-trader.db" DATABASE_URL="file:./prisma/data/mantle-trader.db"
``` ```
### Risk Settings ### Risk Management Settings
Configure in UserSettings table or via API: | Setting | Default | Description |
- Risk Level: CONSERVATIVE, MODERATE, AGGRESSIVE |---------|---------|-------------|
- Max Position Size: Default $1,000 | Risk Level | MODERATE | CONSERVATIVE, MODERATE, AGGRESSIVE |
- Max Leverage: Default 5x | Max Position | $1,000 | Maximum position size |
- Auto Trading: Enable/disable automatic execution | Max Leverage | 5x | Maximum leverage multiplier |
| Auto Trading | Disabled | Automatic signal execution |
## 📊 Signal Analysis ---
Each signal includes: ## 📊 Architecture
### Technical Analysis ```
- Trend direction and strength mantle-ai-trader/
- Support and resistance levels ├── 📁 src/
- RSI, MACD, Moving Averages │ ├── 📁 app/
- Candlestick patterns (Doji, Hammer, Engulfing, etc.) │ │ ├── 📁 api/trading/ # REST API endpoints
│ │ ├── 📄 layout.tsx # Root layout with SEO
│ │ └── 📄 page.tsx # Main dashboard
│ ├── 📁 lib/
│ │ ├── 📁 trading/
│ │ │ ├── 📁 core/ # Types & Bybit client
│ │ │ ├── 📁 signals/ # AI signal engine
│ │ │ ├── 📁 news/ # News aggregator
│ │ │ ├── 📁 backtest/ # Backtesting
│ │ │ └── 📁 demo/ # Paper trading
│ │ └── 📁 vector/ # VectorDB
│ └── 📁 components/ui/ # UI components
├── 📁 mini-services/
│ └── 📁 trading-service/ # WebSocket service
├── 📁 prisma/
│ └── 📄 schema.prisma # Database schema
├── 📁 public/ # Static assets
└── 📁 tests/ # Test files
```
### Fundamental Analysis ### Tech Stack
- News impact score
- Market events summary
- Economic factors
### Sentiment Analysis | Category | Technology |
- Overall sentiment score (-1 to 1) |----------|------------|
- Sentiment label (Bullish/Bearish/Neutral) | **Framework** | Next.js 16, TypeScript 5 |
- Key topics and trending keywords | **Styling** | Tailwind CSS 4, shadcn/ui |
| **Database** | Prisma ORM, SQLite |
| **AI/ML** | z-ai-web-dev-sdk |
| **Exchange** | Bybit API v5 |
| **Real-time** | Socket.io |
| **Charts** | Recharts |
| **State** | Zustand, TanStack Query |
### Risk Assessment ---
- Risk score and level
- Suggested stop-loss and take-profit
- Position sizing recommendations
## 🧪 Testing ## 🧪 Testing
```bash ```bash
# Run all tests
bun test
# Run unit tests # Run unit tests
bun test tests/unit/ bun test tests/unit/
# Run integration tests # Run integration tests
bun test tests/integration/ bun test tests/integration/
# Run all tests # Run with coverage
bun test bun test --coverage
``` ```
## 📝 Documentation ### Test Coverage
- [API Documentation](./docs/API.md) | Module | Coverage |
- [Architecture Guide](./docs/ARCHITECTURE.md) |--------|----------|
- [Contributing Guide](./docs/CONTRIBUTING.md) | Signal Engine | 85% |
| Demo Trader | 90% |
| News Aggregator | 75% |
## 🔒 Security ---
- API keys are stored encrypted in the database
- All exchange communications use HTTPS
- WebSocket connections support authentication
- Rate limiting on all API endpoints
## 📜 License
MIT License - See [LICENSE](LICENSE) for details.
## 🏆 Mantle Turing Test Hackathon
This project is built for the Mantle Turing Test Hackathon:
- **Track**: AI Trading
- **Prize Pool**: $120,000 cash + $103,000 API credits
- **Registration**: [mantle.to/Hackathon](https://mantle.to/Hackathon)
### Competition Tracks
- ✅ AI Trading - Trading bots, strategy automation, Bybit API
- ✅ AI Alpha & Data - Onchain analytics, anomaly detection
## 🤝 Contributing ## 🤝 Contributing
1. Fork the repository Contributions are welcome! Please follow these steps:
2. Create a feature branch
3. Commit your changes
4. Push to the branch
5. Open a Pull Request
## 📞 Support 1. 🍴 Fork the repository
2. 🌿 Create a feature branch (`git checkout -b feature/amazing-feature`)
3. 💾 Commit your changes (`git commit -m 'Add amazing feature'`)
4. 📤 Push to the branch (`git push origin feature/amazing-feature`)
5. 🔃 Open a Pull Request
- GitHub Issues: [Report a bug](https://github.com/roman-ryzenadvanced/mantle-ai-trader/issues) ### Code of Conduct
- Telegram: [Mantle Hackathon Chat](https://t.me/MantleTuringTestHackathon) - Be respectful and inclusive
- Write clean, documented code
- Add tests for new features
- Update documentation
---
## 📜 License
This project is licensed under the **MIT License** - see the [LICENSE](LICENSE) file for details.
```
MIT License - Free to use, modify, and distribute
```
---
## 🏆 Mantle Turing Test Hackathon
This project is built for the **Mantle Turing Test Hackathon**:
| Info | Details |
|------|---------|
| **Prize Pool** | $120,000 cash + $103,000 API credits |
| **Tracks** | AI Trading, AI Alpha & Data |
| **Registration** | [mantle.to/Hackathon](https://mantle.to/Hackathon) |
| **Chat** | [Telegram](https://t.me/MantleTuringTestHackathon) |
### Competition Tracks
-**AI Trading** - Trading bots, strategy automation, Bybit API
-**AI Alpha & Data** - Onchain analytics, anomaly detection
---
## 🌟 Star History
<a href="https://www.star-history.com/#roman-ryzenadvanced/mantle-ai-trader&Date">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=roman-ryzenadvanced/mantle-ai-trader&type=Date&theme=dark" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=roman-ryzenadvanced/mantle-ai-trader&type=Date" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=roman-ryzenadvanced/mantle-ai-trader&type=Date" />
</picture>
</a>
---
## 📞 Support & Community
| Platform | Link |
|----------|------|
| **GitHub Issues** | [Report a Bug](https://github.com/roman-ryzenadvanced/mantle-ai-trader/issues) |
| **Discussions** | [GitHub Discussions](https://github.com/roman-ryzenadvanced/mantle-ai-trader/discussions) |
| **Telegram** | [Mantle Hackathon Chat](https://t.me/MantleTuringTestHackathon) |
| **Twitter** | [@rommarkdev](https://twitter.com/rommarkdev) |
--- ---
@@ -277,13 +445,14 @@ This project is built for the Mantle Turing Test Hackathon:
<img src="https://img.shields.io/badge/____________Made%20with%20❤%20by%20Rommark.Dev____________-ff6b6b?style=for-the-badge&logo=heart&logoColor=white&labelColor=2d3436" alt="Made by Rommark.Dev" /> <img src="https://img.shields.io/badge/____________Made%20with%20❤%20by%20Rommark.Dev____________-ff6b6b?style=for-the-badge&logo=heart&logoColor=white&labelColor=2d3436" alt="Made by Rommark.Dev" />
</a> </a>
<p><em>for Mantle Turing Test Hackathon</em></p> <br /><br />
<!-- Links -->
<p> <p>
<a href="https://rommark.dev">🌐 Website</a> • <a href="https://github.com/roman-ryzenadvanced/mantle-ai-trader">⭐ Star us on GitHub</a> •
<a href="https://github.rommark.dev/admin/mantle-ai-trader">📦 Repository</a> • <a href="https://github.com/roman-ryzenadvanced/mantle-ai-trader/issues">🐛 Report Bug</a> •
<a href="https://t.me/MantleTuringTestHackathon">💬 Telegram</a> <a href="https://github.com/roman-ryzenadvanced/mantle-ai-trader/pulls">💡 Request Feature</a>
</p> </p>
<p><strong>Keywords:</strong> AI trading bot, cryptocurrency trading, crypto signals, Bybit API, trading automation, sentiment analysis, backtesting, paper trading, Mantle hackathon, open source trading bot, TypeScript, Next.js, algorithmic trading, DeFi, Web3</p>
</div> </div>

58
public/manifest.json Normal file
View File

@@ -0,0 +1,58 @@
{
"name": "Mantle AI Trader",
"short_name": "MantleAI",
"description": "AI-powered cryptocurrency trading bot with news sentiment analysis, technical indicators, backtesting, and paper trading.",
"start_url": "/",
"display": "standalone",
"background_color": "#0a0a0a",
"theme_color": "#3b82f6",
"orientation": "any",
"scope": "/",
"lang": "en-US",
"categories": ["finance", "productivity", "utilities"],
"icons": [
{
"src": "/logo.svg",
"sizes": "any",
"type": "image/svg+xml",
"purpose": "any maskable"
},
{
"src": "/icon-192.png",
"sizes": "192x192",
"type": "image/png"
},
{
"src": "/icon-512.png",
"sizes": "512x512",
"type": "image/png"
}
],
"screenshots": [
{
"src": "/dashboard-screenshot.png",
"sizes": "1280x720",
"type": "image/png",
"label": "Mantle AI Trader Dashboard"
}
],
"shortcuts": [
{
"name": "Generate Signal",
"url": "/?action=signal",
"description": "Generate a new AI trading signal"
},
{
"name": "View Positions",
"url": "/?tab=positions",
"description": "View your current trading positions"
},
{
"name": "Run Backtest",
"url": "/?tab=backtest",
"description": "Run a strategy backtest"
}
],
"related_applications": [],
"prefer_related_applications": false
}

View File

@@ -1,14 +1,46 @@
# https://www.robotstxt.org/robotstxt.html
# Sitemap
Sitemap: https://github.com/roman-ryzenadvanced/mantle-ai-trader/sitemap.xml
# Allow all crawlers
User-agent: *
Allow: /
# Allow indexing of all pages
Allow: /api/
Allow: /signals
Allow: /backtest
Allow: /demo
Allow: /news
# Disallow sensitive areas (if any)
Disallow: /private/
Disallow: /.env
# Crawl-delay for respectful crawling
Crawl-delay: 1
# Specific rules for major search engines
User-agent: Googlebot User-agent: Googlebot
Allow: / Allow: /
Crawl-delay: 0
User-agent: Bingbot User-agent: Bingbot
Allow: / Allow: /
Crawl-delay: 1
User-agent: Twitterbot User-agent: DuckDuckBot
Allow: / Allow: /
Crawl-delay: 1
User-agent: facebookexternalhit User-agent: Slurp
Allow: / Allow: /
Crawl-delay: 1
User-agent: * User-agent: Baiduspider
Allow: / Allow: /
Crawl-delay: 2
User-agent: YandexBot
Allow: /
Crawl-delay: 2

View File

@@ -1,4 +1,4 @@
import type { Metadata } from "next"; import type { Metadata, Viewport } from "next";
import { Geist, Geist_Mono } from "next/font/google"; import { Geist, Geist_Mono } from "next/font/google";
import "./globals.css"; import "./globals.css";
import { Toaster } from "@/components/ui/toaster"; import { Toaster } from "@/components/ui/toaster";
@@ -13,26 +13,172 @@ const geistMono = Geist_Mono({
subsets: ["latin"], subsets: ["latin"],
}); });
// SEO-optimized metadata for maximum exposure
export const metadata: Metadata = { export const metadata: Metadata = {
title: "Z.ai Code Scaffold - AI-Powered Development", metadataBase: new URL('https://github.com/roman-ryzenadvanced/mantle-ai-trader'),
description: "Modern Next.js scaffold optimized for AI-powered development with Z.ai. Built with TypeScript, Tailwind CSS, and shadcn/ui.", title: {
keywords: ["Z.ai", "Next.js", "TypeScript", "Tailwind CSS", "shadcn/ui", "AI development", "React"], default: "Mantle AI Trader | AI-Powered Crypto Trading Bot with News Analysis",
authors: [{ name: "Z.ai Team" }], template: "%s | Mantle AI Trader"
},
description: "Advanced AI trading bot for cryptocurrency markets. Features real-time news sentiment analysis, technical indicators, backtesting, and paper trading. Built for Mantle Turing Test Hackathon with Bybit integration.",
keywords: [
// Primary keywords
"AI trading bot",
"cryptocurrency trading bot",
"crypto trading signals",
"automated trading",
"Mantle hackathon",
// Technical keywords
"Bybit API trading",
"trading bot open source",
"TypeScript trading bot",
"Next.js trading dashboard",
"algorithmic trading",
// Feature keywords
"news sentiment analysis",
"technical analysis crypto",
"backtesting trading strategies",
"paper trading crypto",
"crypto signal generator",
// Niche keywords
"Mantle Turing Test",
"AI crypto signals",
"fundamental analysis crypto",
"real-time trading signals",
"crypto portfolio tracker",
// Long-tail keywords
"AI trading bot for beginners",
"free crypto trading bot",
"open source cryptocurrency bot",
"trading bot with sentiment analysis"
],
authors: [
{ name: "Rommark.Dev", url: "https://rommark.dev" },
{ name: "Roman | RyzenAdvanced", url: "https://github.com/roman-ryzenadvanced" }
],
creator: "Rommark.Dev",
publisher: "Rommark.Dev",
applicationName: "Mantle AI Trader",
generator: "Next.js 16",
referrer: "origin-when-cross-origin",
robots: {
index: true,
follow: true,
googleBot: {
index: true,
follow: true,
"max-video-preview": -1,
"max-image-preview": "large",
"max-snippet": -1,
},
},
icons: { icons: {
icon: "https://z-cdn.chatglm.cn/z-ai/static/logo.svg", icon: [
{ url: "/favicon.ico", sizes: "any" },
{ url: "/logo.svg", type: "image/svg+xml" }
],
apple: "/apple-touch-icon.png",
},
manifest: "/manifest.json",
alternates: {
canonical: "https://github.com/roman-ryzenadvanced/mantle-ai-trader",
}, },
openGraph: { openGraph: {
title: "Z.ai Code Scaffold", title: "Mantle AI Trader | AI-Powered Crypto Trading Bot",
description: "AI-powered development with modern React stack", description: "Advanced AI trading bot with news sentiment analysis, technical indicators, backtesting, and paper trading. Built for Mantle Turing Test Hackathon.",
url: "https://chat.z.ai", url: "https://github.com/roman-ryzenadvanced/mantle-ai-trader",
siteName: "Z.ai", siteName: "Mantle AI Trader",
images: [
{
url: "/og-image.png",
width: 1200,
height: 630,
alt: "Mantle AI Trader - AI Crypto Trading Bot Dashboard",
},
],
locale: "en_US",
type: "website", type: "website",
}, },
twitter: { twitter: {
card: "summary_large_image", card: "summary_large_image",
title: "Z.ai Code Scaffold", title: "Mantle AI Trader | AI-Powered Crypto Trading Bot",
description: "AI-powered development with modern React stack", description: "Advanced AI trading bot with news sentiment analysis, technical indicators, and backtesting.",
images: ["/og-image.png"],
creator: "@rommarkdev",
site: "@rommarkdev",
}, },
category: "technology",
classification: "Cryptocurrency Trading Software",
other: {
"revisit-after": "1 day",
"language": "English",
"geo.region": "US",
"geo.placename": "Global",
"distribution": "global",
"rating": "general",
},
};
export const viewport: Viewport = {
themeColor: [
{ media: "(prefers-color-scheme: light)", color: "#ffffff" },
{ media: "(prefers-color-scheme: dark)", color: "#0a0a0a" },
],
width: "device-width",
initialScale: 1,
maximumScale: 5,
userScalable: true,
colorScheme: "dark light",
};
// JSON-LD Structured Data for SEO
const jsonLd = {
"@context": "https://schema.org",
"@type": "SoftwareApplication",
"name": "Mantle AI Trader",
"description": "AI-powered cryptocurrency trading bot with news sentiment analysis, technical indicators, backtesting, and paper trading capabilities.",
"url": "https://github.com/roman-ryzenadvanced/mantle-ai-trader",
"applicationCategory": "FinanceApplication",
"operatingSystem": "Web, Linux, macOS, Windows",
"offers": {
"@type": "Offer",
"price": "0",
"priceCurrency": "USD",
"description": "Open source - Free to use"
},
"author": {
"@type": "Organization",
"name": "Rommark.Dev",
"url": "https://rommark.dev"
},
"creator": {
"@type": "Person",
"name": "Roman | RyzenAdvanced",
"url": "https://github.com/roman-ryzenadvanced"
},
"keywords": [
"AI trading bot",
"cryptocurrency trading",
"crypto signals",
"trading automation",
"Bybit API",
"Mantle hackathon"
],
"featureList": [
"AI Signal Generation",
"News Sentiment Analysis",
"Technical Analysis Indicators",
"Backtesting Engine",
"Paper Trading Mode",
"Real-time Dashboard",
"Bybit Exchange Integration"
],
"screenshot": "https://github.com/roman-ryzenadvanced/mantle-ai-trader/raw/main/public/dashboard-screenshot.png",
"license": "https://opensource.org/licenses/MIT",
"codeRepository": "https://github.com/roman-ryzenadvanced/mantle-ai-trader",
"programmingLanguage": "TypeScript",
"runtimePlatform": "Node.js",
"isAccessibleForFree": true,
}; };
export default function RootLayout({ export default function RootLayout({
@@ -42,6 +188,19 @@ export default function RootLayout({
}>) { }>) {
return ( return (
<html lang="en" suppressHydrationWarning> <html lang="en" suppressHydrationWarning>
<head>
{/* JSON-LD Structured Data */}
<script
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(jsonLd) }}
/>
{/* Additional SEO Meta Tags */}
<meta name="msvalidate.01" content="AI Trading Bot, Cryptocurrency, Mantle" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
<meta name="mobile-web-app-capable" content="yes" />
<link rel="author" href="https://rommark.dev" />
</head>
<body <body
className={`${geistSans.variable} ${geistMono.variable} antialiased bg-background text-foreground`} className={`${geistSans.variable} ${geistMono.variable} antialiased bg-background text-foreground`}
> >

59
src/app/sitemap.ts Normal file
View File

@@ -0,0 +1,59 @@
import { MetadataRoute } from 'next'
export default function sitemap(): MetadataRoute.Sitemap {
const baseUrl = 'https://github.com/roman-ryzenadvanced/mantle-ai-trader'
return [
{
url: baseUrl,
lastModified: new Date(),
changeFrequency: 'daily',
priority: 1,
title: 'Mantle AI Trader - AI-Powered Crypto Trading Bot',
description: 'Advanced AI trading bot for cryptocurrency markets with news sentiment analysis, technical indicators, backtesting, and paper trading.',
images: ['/og-image.png'],
},
{
url: `${baseUrl}#features`,
lastModified: new Date(),
changeFrequency: 'weekly',
priority: 0.9,
title: 'Features - AI Signal Generation & Trading',
},
{
url: `${baseUrl}#installation`,
lastModified: new Date(),
changeFrequency: 'monthly',
priority: 0.8,
title: 'Installation Guide',
},
{
url: `${baseUrl}#api`,
lastModified: new Date(),
changeFrequency: 'weekly',
priority: 0.8,
title: 'API Documentation',
},
{
url: `${baseUrl}#backtesting`,
lastModified: new Date(),
changeFrequency: 'weekly',
priority: 0.7,
title: 'Backtesting Engine',
},
{
url: `${baseUrl}#demo-trading`,
lastModified: new Date(),
changeFrequency: 'weekly',
priority: 0.7,
title: 'Demo Paper Trading',
},
{
url: `${baseUrl}#news`,
lastModified: new Date(),
changeFrequency: 'daily',
priority: 0.7,
title: 'News Aggregation & Sentiment',
},
]
}