首页
/ 【免费下载】 《WordPecker App》开源项目安装与配置指南

【免费下载】 《WordPecker App》开源项目安装与配置指南

2026-01-30 04:06:28作者:廉皓灿Ida

1. 项目基础介绍

《WordPecker App》是一个个性化的语言学习工具,它结合了Duolingo风格的课程和用户自定的词汇表。用户可以无缝地从书籍、文章或视频中添加单词,并通过交互式测验和LLM(大型语言模型)生成的课程来复习这些单词。

主要编程语言:TypeScript(前端)、JavaScript(后端)。

2. 项目使用的关键技术和框架

  • 前端框架:React.js,用于构建用户界面。
  • 后端框架:Express.js,用于搭建API服务。
  • 数据库:Supabase(基于PostgreSQL),用于数据存储。
  • 身份验证:Supabase Auth,用于用户认证。
  • 人工智能:OpenAI API,用于生成动态学习内容和问题。

3. 项目安装和配置的准备工作及详细步骤

准备工作

  • 确保您的系统中已安装Node.js(版本16或更高)。
  • 安装npm(Node.js包管理器)或yarn(另一种流行的JavaScript包管理工具)。
  • 创建一个Supabase账户,并准备好相关的数据库信息。
  • 获取一个OpenAI API密钥。

安装步骤

  1. 克隆仓库

    在命令行中运行以下命令来克隆项目仓库:

    git clone https://github.com/baturyilmaz/wordpecker-app.git
    cd wordpecker-app
    
  2. 安装后端依赖

    切换到后端目录并安装依赖:

    cd backend
    npm install # 或者使用 yarn install
    
  3. 安装前端依赖

    切换到前端目录并安装依赖:

    cd frontend
    npm install # 或者使用 yarn install
    
  4. 初始化数据库

    在Supabase的SQL编辑器中运行以下代码以创建必要的表:

    -- 创建单词列表表
    CREATE TABLE word_lists (
        id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
        user_id UUID NOT NULL,
        name TEXT NOT NULL,
        description TEXT,
        context TEXT,
        created_at TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP,
        CONSTRAINT name_length CHECK (char_length(name) > 0),
        FOREIGN KEY (user_id) REFERENCES auth.users(id)
    );
    
    -- 创建单词表
    CREATE TABLE words (
        id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
        list_id UUID NOT NULL,
        value TEXT NOT NULL,
        meaning TEXT,
        created_at TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP,
        CONSTRAINT word_length CHECK (char_length(value) > 0),
        FOREIGN KEY (list_id) REFERENCES word_lists(id)
    );
    
    -- 创建会话表
    CREATE TABLE sessions (
        id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
        list_id UUID NOT NULL,
        type TEXT NOT NULL,
        score INTEGER,
        current_exercise_index INTEGER,
        created_at TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP,
        completed_at TIMESTAMPTZ,
        CONSTRAINT valid_type CHECK (type IN ('learn', 'quiz')),
        FOREIGN KEY (list_id) REFERENCES word_lists(id)
    );
    
  5. 配置环境变量

    在后端和前端目录中分别创建.env文件,并填入以下内容:

    后端.env:

    PORT=3000
    OPENAI_BASE_URL=https://api.openai.com
    OPENAI_API_KEY=your_openai_api_key
    SUPABASE_URL=your_supabase_url
    SUPABASE_SERVICE_KEY=your_supabase_service_key
    

    前端.env:

    VITE_SUPABASE_URL=your_supabase_url
    VITE_SUPABASE_ANON_KEY=your_supabase_anon_key
    VITE_API_URL=http://localhost:3000
    
  6. 启动项目

    • 启动后端:

      cd backend
      npm run dev # 或者使用 yarn dev
      
    • 启动前端:

      cd frontend
      npm run dev # 或者使用 yarn dev
      

    项目应该现在已启动并运行。你可以通过访问http://localhost:3000来查看后端服务,以及通过http://localhost:3001来查看前端应用(端口可能会根据你的设置不同而变化)。

登录后查看全文
热门项目推荐
相关项目推荐