Bankr项目模板Skill BankrDev-ProjectTemplates

这个技能提供Bankr API项目的快速启动模板,包括自动化机器人、Web服务、仪表板和命令行工具等四种项目类型的目录结构、关键功能和用例。适用于开发人员快速搭建基于Bankr API的应用,支持量化交易、市场监控、Portfolio管理等场景。SEO关键词:Bankr项目模板、软件开发、自动化交易、API集成、项目脚手架、量化金融、Web服务开发、CLI工具。

架构设计 0 次安装 0 次浏览 更新于 3/15/2026

名称: Bankr 开发 - 项目模板 description: 当用户询问“搭建Bankr项目”、“创建新的Bankr机器人”、“构建Bankr Web服务”、“创建Bankr仪表板”、“构建Bankr CLI工具”、“Bankr项目结构”、“Bankr项目类型”,或需要关于不同Bankr API集成的目录结构和模板指导时,应使用此技能。 版本: 1.0.0

Bankr 项目模板

Bankr API项目的目录结构和模板。

可用模板

模板 使用场景 关键特性
机器人 自动化任务 轮询循环、调度器、状态流
Web服务 HTTP API REST端点、Webhook、异步处理
仪表板 Web界面 前端+后端、实时更新
CLI 命令行工具 子命令、交互式提示

机器人模板

用于自动化交易机器人、价格监控器、警报系统和计划任务。

目录结构

{项目名称}/
├── package.json
├── tsconfig.json
├── .env.example
├── .gitignore
├── README.md
├── src/
│   ├── index.ts           # 主入口点,带调度器
│   ├── bankr-client.ts    # Bankr API客户端(来自bankr-client-patterns技能)
│   ├── types.ts           # TypeScript接口
│   └── config.ts          # 配置加载
└── scripts/
    └── run.sh             # 便捷脚本

关键特性

  • 轮询循环:可配置间隔进行重复检查
  • 状态流:实时作业状态更新
  • 错误处理:带退避机制的自动重试
  • 环境配置:基于.env的配置
  • 优雅关机:处理SIGINT/SIGTERM信号

使用场景

  • 价格监控和警报
  • 自动化交易策略
  • 投资组合再平衡
  • 计划市场分析
  • DCA自动化

入口点模式 (index.ts)

import { execute } from "./bankr-client";

const INTERVAL = 60000; // 1分钟

async function runBot() {
  console.log("启动Bankr机器人...");

  while (true) {
    try {
      const result = await execute(
        "检查ETH价格",
        (msg) => console.log("状态:", msg)
      );

      if (result.status === "completed") {
        console.log("结果:", result.response);
        // 在此添加您的逻辑
      }
    } catch (error) {
      console.error("错误:", error);
    }

    await new Promise(r => setTimeout(r, INTERVAL));
  }
}

runBot();

Web服务模板

用于封装或扩展Bankr功能的HTTP API。

目录结构

{项目名称}/
├── package.json
├── tsconfig.json
├── .env.example
├── .gitignore
├── README.md
├── src/
│   ├── index.ts           # 服务器入口点
│   ├── server.ts          # Express/Fastify服务器设置
│   ├── routes/
│   │   ├── health.ts      # 健康检查端点
│   │   └── bankr.ts       # Bankr代理/扩展路由
│   ├── bankr-client.ts    # Bankr API客户端
│   ├── types.ts           # TypeScript接口
│   └── config.ts          # 配置加载
└── scripts/
    └── run.sh

关键特性

  • REST API端点:清晰的API设计
  • 请求验证:输入清理
  • 异步作业处理:非阻塞操作
  • Webhook支持:作业完成时的回调
  • 速率限制:防止滥用
  • CORS:跨源支持

使用场景

  • Bankr的API网关
  • 自定义交易API
  • Webhook集成
  • 移动应用后端
  • 微服务架构

额外依赖

{
  "dependencies": {
    "express": "^4.18.0"
  }
}

或对于Fastify:

{
  "dependencies": {
    "fastify": "^4.25.0"
  }
}

仪表板模板

用于Web界面,支持投资组合跟踪、市场分析或监控。

目录结构

{项目名称}/
├── package.json
├── tsconfig.json
├── .env.example
├── .gitignore
├── README.md
├── server/
│   ├── index.ts           # 后端服务器
│   ├── bankr-client.ts    # Bankr API客户端
│   ├── routes/
│   │   └── api.ts         # 前端API路由
│   └── types.ts
├── public/
│   ├── index.html         # 主HTML页面
│   ├── styles.css         # 基本样式
│   └── app.js             # 前端JavaScript
└── scripts/
    └── run.sh

关键特性

  • 简单前端:HTML/CSS/JS(无需构建步骤)
  • 后端API:用于Bankr操作的Express服务器
  • 实时更新:轮询状态变化
  • 投资组合显示:代币余额和价值
  • 市场数据:价格图表和分析

使用场景

  • 投资组合跟踪仪表板
  • 交易界面
  • 市场监控
  • 头寸管理
  • 分析仪表板

前端模式 (app.js)

async function checkPrice() {
  const response = await fetch('/api/price/ETH');
  const data = await response.json();
  document.getElementById('eth-price').textContent = data.price;
}

setInterval(checkPrice, 30000);
checkPrice();

CLI模板

用于带有子命令和交互功能的命令行工具。

目录结构

{项目名称}/
├── package.json
├── tsconfig.json
├── .env.example
├── .gitignore
├── README.md
├── src/
│   ├── index.ts           # CLI入口点,使用commander.js
│   ├── commands/
│   │   ├── trade.ts       # 交易命令
│   │   ├── price.ts       # 价格查询命令
│   │   └── status.ts      # 作业状态命令
│   ├── bankr-client.ts    # Bankr API客户端
│   └── types.ts
└── scripts/
    └── run.sh

关键特性

  • Commander.js:带子命令的CLI框架
  • 交互式提示:需要时的用户输入
  • 进度指示器:轮询期间的状态显示
  • 彩色输出:更好的用户体验
  • 帮助系统:从命令自动生成

使用场景

  • 个人交易工具
  • 脚本和自动化
  • DevOps集成
  • 快速价格检查
  • 批量操作

额外依赖

{
  "dependencies": {
    "commander": "^12.0.0"
  }
}

CLI模式 (index.ts)

import { program } from "commander";
import { price } from "./commands/price";
import { trade } from "./commands/trade";

program
  .name("bankr-cli")
  .description("用于Bankr操作的CLI")
  .version("1.0.0");

program
  .command("price <代币>")
  .description("获取代币价格")
  .action(price);

program
  .command("trade <操作> <数量> <代币>")
  .description("执行交易")
  .option("-c, --chain <链>", "目标链", "base")
  .action(trade);

program.parse();

选择模板

需求 推荐模板
自动重复任务 机器人
HTTP API集成 Web服务
可视化界面 仪表板
终端工具 CLI
价格警报 机器人
交易API Web服务
投资组合查看器 仪表板
快速交易 CLI

共享文件

所有模板共享常见文件。加载bankr-client-patterns技能以获取:

  • bankr-client.ts - 完整API客户端
  • package.json - 基础依赖
  • tsconfig.json - TypeScript配置
  • .env.example - 环境模板
  • .gitignore - 标准忽略文件

搭建后的下一步

  1. 安装依赖bun installnpm install
  2. 配置API密钥:复制.env.example.env并添加BANKR_API_KEY
  3. 自定义:根据您的使用场景修改模板
  4. 运行:开发时使用bun devnpm run dev
  5. 构建:生产环境使用bun run buildnpm run build