【趣味项目】NPM下载量日报

【趣味项目】NPM下载量日报

项目地址:GitHub
在这里插入图片描述

项目介绍

博主前几天写了几个开源的NPM包,想每天查看自己的NPM包下载量。
但是每次都打开NPM官网再搜索的话就很麻烦,因此做了这个项目,通过定时任务去每日发起请求去查询包的下载量,之后再通过邮件发送博主本人的QQ邮箱

使用方式

本次项目的使用较为繁琐,简述几个步骤。详细的部署指导可私

  1. git 克隆下源码仓库
  2. 登录自己的QQ邮箱获取到 IMP/STMP 的授权码
  3. 再根目录创建一个.env,并设置两个变量
    在这里插入图片描述
  4. 然后设置需要监视的NPM包
    在这里插入图片描述
  5. 之后运行打包程序 pnpm build:parcel
  6. 登录自己的云服务器(阿里云、京东云、腾讯云之类的云服务器)
  7. 设置 linux 的 ssh 认证,详细步骤见此文
  8. 将 pkg 里面用于上传的地址换成自己的 IP 地址和文件路径
  9. 连接自己的云服务器,配置 crontab 的定时任务来周期执行 js 脚本

技术选型

  • dotenv 用于加载环境变量
  • axios 用于发送请求
  • nodemailer 用于发送邮件

执行流程

  1. 检测 env 是否存在
  2. 加载环境变量
  3. 检测环境变量中是否存在 USER 和 PWD
  4. 创建 axios 示例(选择 npmmirror 镜像,官网会出现超时)
  5. 读取待监视的包数组,用 Promise.all 来保证全部包数据都加载完毕后再进行下一步
  6. 创建邮件发送器实例
  7. 设置发送选项
  8. 通过包数据生成邮件内容
  9. 发送邮件

结尾说明

不同于之前的两个项目,该项目包含了编码和部署,相对麻烦许多,而且文档也比较难写,但是代码仓库的注释十分翔实。希望能读者能在理解了核心之后部署成功,如果存在疑问都可以私信询问

相关推荐

  1. 《HTML趣味编程》专栏内资源的下载链接

    2024-03-23 11:16:02       8 阅读
  2. 开发日记-npm下载镜像超时,切换镜像源方式

    2024-03-23 11:16:02       13 阅读
  3. npm下载下载失败解决方法

    2024-03-23 11:16:02       23 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-23 11:16:02       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-23 11:16:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-23 11:16:02       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-23 11:16:02       20 阅读

热门阅读

  1. 2023.3.21日面腾讯云智研发公司面经

    2024-03-23 11:16:02       23 阅读
  2. ajax和同步与异步

    2024-03-23 11:16:02       15 阅读
  3. LeetCode第一天(414.第三大的数)

    2024-03-23 11:16:02       20 阅读
  4. 如何搭建一个nginx的web服务器

    2024-03-23 11:16:02       21 阅读
  5. C++中的流

    2024-03-23 11:16:02       19 阅读
  6. 数据库的设计规范

    2024-03-23 11:16:02       20 阅读
  7. MATLAB下载安装部署教程

    2024-03-23 11:16:02       22 阅读
  8. stable diffusion 提示词进阶语法-学习小结

    2024-03-23 11:16:02       18 阅读