Skip to content

Latest commit

 

History

History
136 lines (103 loc) · 2.78 KB

README.zh-CN.md

File metadata and controls

136 lines (103 loc) · 2.78 KB

Smart Prompt API

基于 Cloudflare Workers 构建的高效智能提示词管理 API 服务。

English | 简体中文

功能特性

  • 🚀 高性能:基于 Cloudflare Workers 的全球边缘部署
  • 🔒 安全认证:基于 Bearer token 的认证系统
  • 📝 完整API:提供提示词管理的完整 CRUD 操作
  • 🔍 智能优化:AI 驱动的提示词优化能力
  • 🌐 全球访问:全球范围内的低延迟访问

技术栈

  • 运行时:Cloudflare Workers
  • 框架:Hono.js
  • 开发语言:TypeScript
  • 测试框架:Jest
  • 数据库:Cloudflare D1 (SQLite)
  • 开发工具:Wrangler CLI

环境要求

  • Node.js (v18 或更高版本)
  • npm 或 yarn
  • Wrangler CLI (用于 Cloudflare Workers 开发)
  • Cloudflare 账号(需要 Workers 和 D1 数据库访问权限)

快速开始

  1. 克隆仓库:
git clone <repository-url>
cd smart_prompt_api
  1. 安装依赖:
npm install
  1. 复制配置文件:
cp wrangler.example.toml wrangler.toml
  1. 更新 wrangler.toml 中的 Cloudflare 账号信息和 D1 数据库配置。

  2. 初始化数据库:

wrangler d1 execute DB --local --file=./schema.sql
  1. 启动开发服务器:
npm run dev

数据库结构

项目使用 Cloudflare D1 (SQLite) 数据库,表结构如下:

CREATE TABLE prompts (
    id TEXT PRIMARY KEY,
    tags TEXT,
    creator TEXT NOT NULL,
    create_time TEXT NOT NULL,
    update_time TEXT NOT NULL,
    status INTEGER DEFAULT 1,
    is_public INTEGER DEFAULT 0,
    source_prompt TEXT NOT NULL,
    optimized_prompt TEXT,
    token TEXT
);

API 文档

详细的 API 文档请参考 API 文档。主要接口包括:

提示词管理

  • GET /api/prompts - 获取提示词列表(支持过滤和排序)
  • POST /api/prompts - 创建或更新提示词
  • DELETE /api/prompts/:id - 删除提示词
  • PATCH /api/prompts/:id/visibility - 更新提示词可见性

认证

所有 API 接口都需要 Bearer token 认证:

Authorization: Bearer <your_token>

开发指南

运行测试

npm test

本地开发

npm run dev

开发服务器将在 http://localhost:8787 启动

环境变量

wrangler.toml 中配置以下内容:

  • DB - D1 数据库绑定
  • 其他环境特定变量

部署

  1. 确保已配置 Cloudflare 账号:
wrangler login
  1. 部署应用:
npm run deploy

贡献指南

  1. Fork 本仓库
  2. 创建特性分支 (git checkout -b feature/amazing-feature)
  3. 提交更改 (git commit -m '添加某个很棒的特性')
  4. 推送到分支 (git push origin feature/amazing-feature)
  5. 提交 Pull Request

许可证

本项目采用 MIT 许可证 - 详见 LICENSE 文件