Skip to content

Latest commit

 

History

59 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HackerNews CN

一个使用 AI 技术将 Hacker News 内容翻译成中文的全栈 Web 应用。

网站体验地址,你也可以自己部署

HackerNewsCN

核心功能

  • 自动抓取 HackerNews 热门内容
  • LLM 智能翻译 (标题、正文、摘要和评论)
  • 本地数据库缓存
  • 实时翻译进度推送
  • 收藏夹与阅读历史
  • 文章 AI 对话
  • 管理员设置面板

技术栈

后端

  • 运行时: Node.js
  • 语言: TypeScript
  • 框架: Express
  • 数据库: SQL.js (SQLite)

前端

  • 框架: React 19
  • 语言: TypeScript
  • 构建工具: Vite

部署教程

环境准备

  1. 确保已安装node.js

  2. 复制配置文件:

cp backend/.env.example backend/.env
cp backend/data/llm-config.json.example backend/data/llm-config.json
cp backend/data/prompts-config.json.example backend/data/prompts-config.json
  1. 配置环境变量 (backend/.env):
PORT=3000
ADMIN_TOKEN=your-admin-token
  1. 配置 LLM 服务 (backend/data/llm-config.json):
{
  "default_provider": "Deepseek V3",
  "providers": [
    {
      "name": "Deepseek V3",
      "api_base": "https://api.deepseek.com/v1",
      "model": "deepseek-chat",
      "api_key": "your-api-key-here"
    }
  ]
}

安装依赖

分别安装前后端依赖:

cd backend && npm install
cd frontend && npm install

以开发模式启动

cd backend && npm run dev
cd frontend && npm run dev

生产部署(PM2 + 开机自启)

  1. 构建前后端:
cd frontend && npm run build
cd ../backend && npx tsc && mkdir -p dist/db && cp src/db/schema.sql dist/db/schema.sql
  1. backend/.envNODE_ENV 设为 production。前端生产环境默认 API 为同源 /api(可参考 frontend/.env.template)。

  2. 使用 PM2 启动(仓库根目录):

npm install -g pm2
pm2 start ecosystem.config.cjs
pm2 save
  1. Windows 开机自启:
npm install -g pm2-windows-startup
pm2-startup install
pm2 save

之后重启电脑时,PM2 会自动 pm2 resurrect 恢复 hackernewscn 进程。

常用命令:

pm2 status
pm2 logs hackernewscn
pm2 restart hackernewscn
pm2 stop hackernewscn

代码修改后一键更新并重启(Windows):

.\update.ps1
.\update.ps1 -SkipFrontend   # 只改了后端
.\update.ps1 -SkipBackend    # 只改了前端
.\update.ps1 -NoRestart      # 只构建不重启

访问地址: http://localhost:3000
健康检查: http://localhost:3000/health

许可证

MIT

About

HackerNews中文镜像,使用大语言模型翻译。

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages