Skip to content

coderwei99/crypto-ai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Crypto AI - 加密货币智能分析平台

基于 Turborepo 的加密货币 AI 分析 Monorepo 项目

🎯 项目简介

Crypto AI 是一个现代化的加密货币数据分析和 AI 辅助平台,采用 Turborepo 管理的 Monorepo 架构,结合最新的 React 19、Next.js 16 和 TypeScript 技术栈。

📦 项目结构

应用程序 (Apps)

  • web - 主 Web 应用 (Next.js 16 + React 19)

    • 端口: 3000
    • 加密货币数据展示和分析界面
  • docs - 文档站点 (Next.js 16)

    • 端口: 3001
    • 项目文档和 API 文档

共享包 (Packages)

  • @repo/api - 🚀 加密货币价格查询 API

    • 基于 CCXT 库
    • 支持 OKX、Binance 等交易所
    • 实时价格查询、K 线数据获取
    • 完整的 TypeScript 类型定义
    • 详细文档
  • @repo/ui - React 组件库

    • 共享 UI 组件
    • Button、Card、Code 等基础组件
  • @repo/eslint-config - ESLint 配置

    • 统一的代码规范
    • 支持 Next.js、React、TypeScript
  • @repo/typescript-config - TypeScript 配置

    • 共享的 tsconfig.json
    • 针对不同场景的配置预设

🚀 快速开始

安装依赖

bun install

开发模式

# 启动所有应用
bun dev

# 启动指定应用
bun dev --filter=web
bun dev --filter=docs

运行 API 示例

# 运行加密货币价格查询示例
bun api:demo

# 或者
bun api:start

构建

# 构建所有应用和包
bun build

# 构建指定包
bun build --filter=web

代码质量检查

# 类型检查
bun check-types

# 代码检查
bun lint

# 代码格式化
bun format

💡 核心功能

🔥 Crypto Price API (@repo/api)

特性:

  • ✅ 支持 OKX、Binance 交易所
  • ✅ 实时价格查询(现货 & 合约)
  • ✅ K 线数据获取 (OHLCV)
  • ✅ 多币种并发查询
  • ✅ 交易所切换和价格对比
  • ✅ 完整的错误处理
  • ✅ TypeScript 类型安全

快速示例:

import { ExchangePriceFetcher } from '@repo/api';

const fetcher = new ExchangePriceFetcher({ exchangeName: 'okx' });
await fetcher.initialize();

const btcPrice = await fetcher.getPrice('BTC/USDT');
console.log(`BTC 价格: $${btcPrice.last}`);

查看完整文档:packages/api/README.md

🛠️ 技术栈

核心框架

  • React 19.2.0 - 最新的 React 框架
  • Next.js 16.0.10 - 全栈 React 框架(App Router)
  • TypeScript 5.9.2 - 类型安全
  • Turborepo 2.6.3 - Monorepo 构建工具

API & 数据

  • CCXT 4.5.28 - 统一的加密货币交易所 API

开发工具

  • Bun 1.2.19 - 高性能 JavaScript 运行时
  • ESLint 9.39.1 - 代码检查
  • Prettier 3.7.4 - 代码格式化

📁 目录结构

crypto-ai/
├── apps/
│   ├── web/              # 主 Web 应用
│   └── docs/             # 文档站点
├── packages/
│   ├── api/              # 加密货币 API 模块
│   ├── ui/               # UI 组件库
│   ├── eslint-config/    # ESLint 配置
│   └── typescript-config/ # TypeScript 配置
├── node_modules/
├── package.json
├── turbo.json
└── README.md

🎨 开发指南

代码规范

项目遵循严格的代码规范:

  • SOLID 原则 - 面向对象设计原则
  • KISS 原则 - 保持简单
  • DRY 原则 - 避免重复
  • YAGNI 原则 - 只实现必要功能

类型检查

所有代码都是 100% TypeScript,启用了严格模式:

{
  "strict": true,
  "noImplicitAny": true
}

提交规范

建议使用 Conventional Commits 规范:

feat: 添加新功能
fix: 修复 bug
docs: 更新文档
style: 代码格式调整
refactor: 代码重构
test: 添加测试
chore: 构建工具或依赖更新

📊 测试验证

API 模块测试结果

运行 bun api:demo 查看完整功能演示:

✅ 基础示例:查询 OKX 的 BTC 价格
   最新价: 87033.7 USDT

✅ 多币种查询:BTC, ETH, SOL

✅ 交易所切换:OKX vs Binance
   价差: $2.87 (0.0033%)

✅ 合约市场:BTC/USDT 永续合约

✅ K 线数据:获取 10 个 1 小时 K 线

✅ 错误处理:正确捕获无效交易对

✅ 支持 2349+ 个交易对

🔮 路线图

Phase 1: 数据层 ✅

  • CCXT API 集成
  • 实时价格查询
  • K 线数据获取
  • 多交易所支持

Phase 2: AI 分析 🚧

  • 价格预测模型
  • 趋势分析
  • 异常检测
  • 智能推荐

Phase 3: Web 界面 📋

  • 实时价格展示
  • 图表可视化
  • 交易信号面板
  • 用户设置

Phase 4: 高级功能 📋

  • WebSocket 实时推送
  • 价格预警
  • 套利机会检测
  • 历史数据分析

📚 相关文档

🤝 贡献指南

欢迎提交 Issue 和 Pull Request!

本地开发

  1. Fork 项目
  2. 创建特性分支: git checkout -b feature/amazing-feature
  3. 提交更改: git commit -m 'feat: add amazing feature'
  4. 推送分支: git push origin feature/amazing-feature
  5. 提交 Pull Request

📄 许可证

Private - Crypto AI Project

🌟 致谢

  • CCXT - 统一的加密货币交易所 API
  • Turborepo - 高性能 Monorepo 工具
  • Bun - 快速的 JavaScript 运行时

Made with ❤️ using React 19, Next.js 16, TypeScript & CCXT

About

auto buy crypto with ai

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published