NewsNow - 一款高颜值的实时新闻以及热榜网站,使用Cloudflare Pages部署

简单介绍 🥰

NewsNow 是一款高颜值的实时新闻以及热榜网站,相较于传统热榜产品,更加关注实时新闻,毕竟现在股市火热,国际局势也风云变幻,时间就是金钱。
NewsNow 前后端完全开源,支持简单的账户同步,可以使用 Github 登录,部署简单,技术栈选取新颖,可以快速部署到 Cloudflare Pages,不花一分钱。
NewsNow 演示网站

界面预览 🥰

设置自动更新Fork 🥰

自动同步Fork的项目 点击前往

Fork 项目

  1. 在Github Fork 项目,打开 https://github.com/ourongxing/newsnow
    Fork
    Fork2

开始部署

如果不需要登录,缓存,可以直接部署到 Cloudflare Pages,Vercel 等。Fork 之后在对应平台上导入即可。

  1. 1
  2. 2
  3. 3
  4. Cloudflare Pages 需要填入构建命令 pnpm run build, 构建输出文件夹 dist/output/public然后点击保存并部署
    4
  5. 提示:成功!您的项目已部署到以下区域:全球 你可以设置个自定义域名,pages分配的域名可能有墙!
    5
  6. 点开看效果!如果你不需要登录功能,这就完事了!
    6

设置登录

  1. 登录涉及到 Github Oauth,只需要 创建一个 Github App即可,不需要申请任何权限。Callback URL 为 https://your-domain.com/api/oauth/github
    1
  2. 然后就会得到 Client IDClient Secret,保存下来!关于环境变量,不同平台有不同的填写位置,请关注 example.env.server 文件。如果本地运行,需要将其重命名为 .env.server,然后按照要求添加。(请确保立即复制您的新客户端密钥。你将无法再看到它)
    2
  3. 环境变量

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    # Github Clien ID
    G_CLIENT_ID=
    # Github Clien Secret
    G_CLIENT_SECRET=
    # JWT Secret, 通常就用 Clien Secret
    JWT_SECRET=
    # 初始化数据库, 首次运行必须设置为 true,之后可以将其关闭
    INIT_TABLE=true
    # 是否启用缓存
    ENABLE_CACHE=true
  4. 设置环境变量G_CLIENT_ID就是你刚保存的Client ID(环境变量的名称建议复制不出错)
    3
  5. 设置环境变量G_CLIENT_SECRET就是你刚保存的Client secrets
  6. 设置环境变量JWT_SECRETG_CLIENT_SECRET 一样
  7. 设置环境变量INIT_TABLE设置为true全部填写完成后!
    4
  8. 在 Cloudflare Worker 控制面板里找到 D1 手动创建数据库,我选亚太地区离得近快些吧!
    5
  9. 绑定 D1 数据库 变量名称NEWSNOW_DB(环境变量的名称建议复制不出错)
    6
  10. 重试部署使环境变量生效!
    7
  11. 打开你的项目页面刷新一下,就可以在右上角看到登录入口了!
    8
    9

NewsNow 点击前往

NewsNow 演示网站 点击前往