Lad – 最好的Node.js框架

Lad – 最好的Node.js框架

2022-10-31 0 978
资源编号 47259 最近更新 2022-10-31
¥ 0人民币 升级VIP
立即下载 注意事项
下载不了?请联系网站客服提交链接错误!
增值服务: 安装指导 环境配置 二次开发 模板修改 源码安装

本期推荐的Lad 是最好的Node.js框架,由前Express TC 和Koa团队成员制作。

Lad – 最好的Node.js框架

Lad特征

Lad 拥有数十种功能,并且非常可配置。

微服务

这些微服务已针对安全性、性能和优雅重新加载进行了预配置。

  • Webapp 服务器 → web.js
  • API 服务器 → api.js
  • 作业调度程序 → bree.js
  • 代理服务器 → proxy.js

后端

  • Redis、会话、Flash toast 和模式SweetAlert2消息(使用支持Cluster、Sentinel等的ioredis)
  • 基于 Koa 的 webapp 和 API 服务器(使用 HTTP/2 进行生产!)
  • 内置分页(使用ctx-paginate)
  • 带有 BasicAuth 和版本控制的 RESTful API
  • 具有 cron 和人类可读语法的自动化作业调度程序(由Mongoose和Bree支持)
  • 基于护照的身份验证和基于组(类 Unix)的许可
  • Stripe 启发的错误处理
  • 带有通用数据库插件的 Mongoose 和 MongoDB
  • 带有Nodemailer和本地渲染的电子邮件模板引擎
  • 代理消除了对 Nginx 反向代理或 Apache 虚拟主机的需求
  • 通过内置的 i18n 翻译支持多语言(见配置)
  • 用于简单 SEO 的站点地图生成器

表现

  • 压缩和零膨胀方法
  • 基于流的文件上传
  • 优雅的重新加载、关闭和重新连接处理
  • 清单资产修订
  • 准备好 Amazon S3 和 CloudFront

开始使用

严格支持基于 Mac 和 Ubuntu 的操作系统(不支持 Windows)。

要求

请确保您的操作系统已安装以下软件:

  • Git – 参见GitHub 的安装教程
  • Node.js (v10+) – 使用nvm在任何操作系统上安装它
    • 安装后nvm需要运行nvm install node
    • 建议您安装yarn ,它是npm的替代品
  • MongoDB (v3.x+):
    • Mac(通过brew)brew tap mongodb/brew && brew install mongodb-community && brew services start mongodb-community:.
    • Ubuntu:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
echo "deb http://repo.mongodb.org/apt/ubuntu "$(lsb_release -sc)"/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list
sudo apt-get update
sudo apt-get -y install mongodb-org

Redis (v4.x +):

  • Mac(通过brew):brew install redis && brew services start redis
  • Ubuntu:
sudo add-apt-repository -y ppa:chris-lea/redis-server
sudo apt-get update
sudo apt-get -y install redis-server

安装

npm:

npm install -g lad

yarn:

yarn global add lad

用法

创建项目

lad new-project
cd new-project

首先,尝试在命令行上键入npm start(或)。yarn start这将向您显示您可以运行的所有脚本。

该start脚本(以及许多其他脚本)在后台使用nps和nps-utils。

该脚本接受一个<task>参数,而一个任务all将生成、监视和重新编译上述所有微服务。

只需打开http://localhost:3000进行测试!

npm:

npm start all

yarn:

yarn start all

调试

  • DEBUG- 使用调试输出进行调试(社区中广泛采用的包,用于跨所有 Node 包进行调试):
DEBUG=* ...
  • NODE_DEBUG- 调试节点内部模块:
NODE_DEBUG=* ...
  • MONGOOSE_DEBUG- 调试 Mongoose 原始数据库操作输出:
MONGOOSE_DEBUG=true ...
  • TRANSPORT_DEBUG- 调试 Nodemailer 传输:
TRANSPORT_DEBUG=true

REDIS_MONITOR- 调试 Redis 使用MONITOR(使用@ ladjs/redis并传递参数):truemonitor

REDIS_MONITOR=true ...
  • REDIS_FRIENDLY_ERROR_STACK- 使用友好的错误堆栈消息调试 Redis(请参阅ioredis的showFriendlyErrorStack选项)
REDIS_FRIENDLY_ERROR_STACK=true ...

配置

环境变量

根据Twelve-Factor ,我们通过名为@ladjs/env的dotenv配置包简化了 Lad 项目的配置。

我们使用以下三个包来管理配置:

  • dotenv-extended – 允许我们.env在一个名为.env.schema
  • mustache – 允许我们在我们的配置文件中使用Mustache 模板语言.env.env.defaults
  • dotenv-parse-variables – 自动解析变量类型process.env(例如,FOO=4将设置process.env.FOO = 4为Number变量类型而不是 a String)

配置由以下按优先级顺序管理:

  • 文件内容位于config/index.js(读取process.env环境变量)
  • 目录下文件的内容config/environments/(为每个环境设置默认值,例如,您可以通过NODE_ENV=staging,它将加载文件config/environments/staging.js)
  • 用于覆盖默认值或设置所需的环境变量(例如NODE_ENV=production)
  • 环境配置在.env
  • 环境配置在.env.defaults

优先级是环境配置文件、环境变量,然后是.env文件。

基本上,如果dotenv已经检测到它被作为环境变量传递,它就不会设置环境变量。

查看config文件夹的内容以及.env.defaults的默认值。

持续集成和代码覆盖

以下是使用Codecov设置SemaphoreCI所需的简单步骤:

  • 转到SemaphoreCI并注册一个免费帐户
  • 将存储库推送到 GitHub 后,将其作为项目添加到 SemaphoreCI
  • 使用以下构建设置在 SemaphoreCI 上配置您的项目:
  • 在 Codecov 上添加您的项目并将令牌复制到剪贴板
  • 为您的项目转到 SemaphoreCI 的项目设置并添加CODECOV_TOKEN为环境变量(使用剪贴板中的内容)
  • 在 SemaphoreCI 上运行测试构建(“重建最新版本”)并检查以确保您的代码覆盖率报告在 Codecov 上正确上传
  • 确保您的README.md文件具有正确呈现的构建状态和代码覆盖率标记(如果您的 GitHub 存储库是私有的,您将需要使用来自每个提供商的不同标记链接)

—END—

开源协议:MIT license

资源下载此资源为免费资源立即下载

申明:本文由第三方发布,内容仅代表作者观点,与本网站无关。对本文以及其中全部或者部分内容的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。本网发布或转载文章出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,也不代表本网对其真实性负责。

七爪网 免费源码 Lad – 最好的Node.js框架 https://www.7claw.com/47259.html

分享免费的开源源码

常见问题
  • 1、自动:拍下后,点击(下载)链接即可下载;2、手动:拍下后,联系卖家发放即可或者联系官方找开发者发货。
查看详情
  • 1、源码默认交易周期:手动发货商品为1-3天,并且用户付款金额将会进入平台担保直到交易完成或者3-7天即可发放,如遇纠纷无限期延长收款金额直至纠纷解决或者退款!;
查看详情
  • 1、七爪会对双方交易的过程及交易商品的快照进行永久存档,以确保交易的真实、有效、安全! 2、七爪无法对如“永久包更新”、“永久技术支持”等类似交易之后的商家承诺做担保,请买家自行鉴别; 3、在源码同时有网站演示与图片演示,且站演与图演不一致时,默认按图演作为纠纷评判依据(特别声明或有商定除外); 4、在没有”无任何正当退款依据”的前提下,商品写有”一旦售出,概不支持退款”等类似的声明,视为无效声明; 5、在未拍下前,双方在QQ上所商定的交易内容,亦可成为纠纷评判依据(商定与描述冲突时,商定为准); 6、因聊天记录可作为纠纷评判依据,故双方联系时,只与对方在七爪上所留的QQ、手机号沟通,以防对方不承认自我承诺。 7、虽然交易产生纠纷的几率很小,但一定要保留如聊天记录、手机短信等这样的重要信息,以防产生纠纷时便于七爪介入快速处理。
查看详情
  • 1、七爪作为第三方中介平台,依据交易合同(商品描述、交易前商定的内容)来保障交易的安全及买卖双方的权益; 2、非平台线上交易的项目,出现任何后果均与互站无关;无论卖家以何理由要求线下交易的,请联系管理举报。
查看详情

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务