Marble.js 项目教程

Marble.js 项目教程

marbleMarble.js - functional reactive Node.js framework for building server-side applications, based on TypeScript and RxJS.项目地址:https://gitcode.com/gh_mirrors/ma/marble

1. 项目的目录结构及介绍

marblejs/
├── src/
│   ├── app.ts
│   ├── config/
│   │   ├── default.json
│   │   ├── production.json
│   ├── modules/
│   │   ├── user/
│   │   │   ├── user.controller.ts
│   │   │   ├── user.service.ts
│   │   │   ├── user.model.ts
│   │   ├── auth/
│   │   │   ├── auth.controller.ts
│   │   │   ├── auth.service.ts
│   ├── shared/
│   │   ├── logger.ts
│   │   ├── utils.ts
├── test/
│   ├── app.spec.ts
│   ├── user.spec.ts
├── .env
├── .gitignore
├── package.json
├── tsconfig.json
├── README.md

目录结构介绍

  • src/: 项目的源代码目录,包含所有的 TypeScript 文件。
    • app.ts: 项目的入口文件,负责启动应用程序。
    • config/: 配置文件目录,包含不同环境的配置文件。
      • default.json: 默认配置文件。
      • production.json: 生产环境配置文件。
    • modules/: 模块目录,包含各个业务模块的代码。
      • user/: 用户模块,包含用户相关的控制器、服务和模型。
      • auth/: 认证模块,包含认证相关的控制器和服务。
    • shared/: 共享代码目录,包含通用的工具函数和日志记录器。
  • test/: 测试代码目录,包含单元测试和集成测试。
  • .env: 环境变量配置文件。
  • .gitignore: Git 忽略文件配置。
  • package.json: 项目的依赖管理文件。
  • tsconfig.json: TypeScript 配置文件。
  • README.md: 项目说明文档。

2. 项目的启动文件介绍

src/app.ts

app.ts 是 Marble.js 项目的入口文件,负责启动应用程序。以下是该文件的主要内容:

import { createServer } from '@marblejs/core';
import { IO } from 'fp-ts/lib/IO';
import { listener } from './listener';

const server = createServer({
  port: 1337,
  hostname: '127.0.0.1',
  listener,
});

const main: IO<void> = async () => await (await server)();

main();

启动文件介绍

  • createServer: 创建 HTTP 服务器的函数,配置端口、主机名和监听器。
  • listener: 监听器模块,负责处理 HTTP 请求和响应。
  • main: 主函数,异步启动服务器。

3. 项目的配置文件介绍

src/config/default.json

{
  "port": 1337,
  "hostname": "127.0.0.1",
  "database": {
    "host": "localhost",
    "port": 5432,
    "username": "user",
    "password": "password",
    "database": "marble"
  }
}

src/config/production.json

{
  "port": 8080,
  "hostname": "0.0.0.0",
  "database": {
    "host": "production-db.example.com",
    "port": 5432,
    "username": "prod_user",
    "password": "prod_password",
    "database": "marble_prod"
  }
}

配置文件介绍

  • default.json: 默认配置文件,包含开发环境的配置。
    • port: 服务器端口。
    • hostname: 服务器主机名。
    • database: 数据库配置,包括主机、端口、用户名、密码和数据库名称。
  • production.json: 生产环境配置文件,包含生产环境的配置。
    • port: 生产环境服务器端口。
    • hostname: 生产环境服务器主机名。
    • database: 生产环境数据库配置。

通过这些配置文件,可以轻松地在不同环境中切换配置,确保应用程序在不同环境下的正常运行。

marbleMarble.js - functional reactive Node.js framework for building server-side applications, based on TypeScript and RxJS.项目地址:https://gitcode.com/gh_mirrors/ma/marble

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

姚星依Kyla

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值