Nehonix-Team/XyPriss

GitHub: Nehonix-Team/XyPriss

融合 Go 原生引擎与 TypeScript 的企业级安全 Web 框架,兼顾极致性能与开发效率。

Stars: 8 | Forks: 4

XyPriss Logo **企业级 Node.js Web 框架** [![npm version](https://badge.fury.io/js/xypriss.svg)](https://badge.fury.io/js/xypriss) [![TypeScript](https://img.shields.io/badge/TypeScript-007ACC?style=flat&logo=typescript&logoColor=white)](https://www.typescriptlang.org/) [![License: Nehonix OSL (NOSL)](https://img.shields.io/badge/License-Nehonix%20OSL%20%28NOSL%29-blue.svg)](https://dll.nehonix.com/licenses/NOSL) [![Powered by Nehonix](https://img.shields.io/badge/Powered%20by-Nehonix-blue?style=flat&logo=data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEyIDJMMTMuMDkgOC4yNkwyMCA5TDEzLjA5IDE1Ljc0TDEyIDIyTDEwLjkxIDE1Ljc0TDQgOUwxMC45MSA4LjI2TDEyIDJaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K)](https://nehonix.com) [![](https://data.jsdelivr.com/v1/package/npm/xypriss/badge)](https://www.jsdelivr.com/package/npm/xypriss) [快速开始](https://xypriss.nehonix.com/docs/QUICK_START) • [文档](https://xypriss.nehonix.com/docs/) • [示例](https://xypriss.nehonix.com/docs/EXAMPLES) • [API 参考](https://xypriss.nehonix.com/docs/api-reference)
## 概述 XyPriss 是一个**企业级混合 Web 框架**,它将编译型原生二进制文件的极致性能与 **TypeScript** 的生产力和灵活性完美结合。它专为既需要运行速度又需要开发效率的团队设计,无需在两者之间做出妥协。 ### 跨平台基础 XyPriss 为所有主要平台提供了预编译的原生二进制文件。无需额外的工具链、编译器或运行时依赖。 | 操作系统 | 架构 | 状态 | | ----------- | ----------------------- | --------- | | **Linux** | x86_64 (AMD64) | 支持 | | **Linux** | aarch64 (ARM64) | 支持 | | **Windows** | x86_64 (AMD64) | 支持 | | **Windows** | aarch64 (ARM64) | 支持 | | **macOS** | x86_64 (Intel) | 支持 | | **macOS** | aarch64 (Apple Silicon) | 支持 | ### 架构 XyPriss 的核心是 **XHSC (XyPriss Hyper-System Core)** —— 这是一个原生引擎,负责底层 HTTP 网络、高速 radix 路由、文件系统操作、实时系统遥测和进程间通信。XHSC 采用 Go 语言编写,以确保最大的可移植性,并作为每个平台的单个静态链接二进制文件发布,具有零外部依赖。 该框架采用分层架构: 1. **XHSC (原生引擎):** 处理 HTTP/S 协议栈、高级 radix 路由、文件系统 I/O、进程监控和实时硬件遥测。它是所有传入流量和系统操作的高速网关。 2. **Node.js Runtime:** 提供企业级的应用层,开发者可以使用 TypeScript 定义业务逻辑、安全中间件和数据处理管道。 3. **XFPM (XyPriss Fast Package Manager):** 一个高性能、Rust 驱动的包管理器,专为 XyPriss 生态系统优化。提供超快的依赖解析、解压和缓存功能。[了解更多关于 XFPM 的信息](https://xypriss.nehonix.com/docs/xfpm?kw=XFPM%20is%20the%20high-performance)。 这种分离允许每一层在其最佳领域运行:编译型原生代码用于性能关键路径,TypeScript 用于快速应用开发。 ### 核心特性 - **XHSC 原生引擎** — 静态链接的系统核心,支持多核集群、IPC 桥接和高精度硬件遥测,跨所有支持的平台。 - **XEMS 会话安全** — 由专用原生 Golang sidecar 驱动的 AES-256-GCM 加密内存会话存储。提供不透明 token、每次请求的原子轮换、沙箱命名空间和可选的硬件绑定持久化 —— 零外部依赖。 - **安全优先架构** — 包含 12 个以上的内置安全中间件模块,包括 CSRF 防护、XSS 防护和智能速率限制。 - **高级 Radix 路由** — 超快路由系统,能够以微秒级延迟处理复杂的路径匹配。 - **实时系统智能** — 直接从应用层原生访问 CPU、内存、磁盘、网络、电池和进程指标。 - **文件系统引擎** — 高性能文件操作,包括递归复制、目录同步、内容哈希、重复检测和实时文件监控。 - **文件上传管理** — 生产级 multipart/form-data 处理,具有自动验证和错误处理功能。 - **环境安全盾** — 军用级敏感变量保护。通过原生 Proxy 屏蔽直接的 `process.env` 访问,以防止意外泄露,强制使用安全的、类型化的 API。 - **内置 DotEnv 加载器** — 零依赖、超快的 `.env` 解析器,自动支持 `.env`、`.env.local` 和 `.private/.env`。 - **可扩展插件系统** — 基于权限的插件架构,具有生命周期钩子和安全控制。 - **原生生产集成** — 为通过 [XyNginC](https://github.com/Nehonix-Team/xynginc) 进行自动化部署和 SSL 管理而构建。 - **多服务器支持** — 运行具有隔离配置和安全策略的多个服务器实例。 我们强烈建议使用 **XyPriss CLI (`xyp`)** 以获得最快、最可靠的开发体验。 请参阅 [**安装指南**](https://xypriss.nehonix.com/docs/installation?q=install%20xfpm&kw=This%20document%20provides%20step-by-step%20in) 获取详细的平台特定说明。 ### 快速安装 ``` curl -sL https://xypriss.nehonix.com/install.js | node ``` 安装完成后,您可以以超高性能管理您的项目依赖: ``` # 在你的项目中安装 XyPriss xyp install xypriss ``` 或者,使用标准包管理器: ``` xfpm i xypriss # 或 yarn add xypriss ``` 如需额外的安全功能: ``` xfpm install xypriss-security ``` ## 快速开始 ### 使用 CLI ``` xfpm init cd my-app xfpm dev # or xyp dev (both are the same) ``` ### 手动设置 ``` import { createServer } from "xypriss"; const app = createServer({ server: { port: 3000 }, security: { enabled: true }, }); app.get("/", (req, res) => { res.json({ message: "Hello from XyPriss" }); }); app.start(); ``` **[完整快速开始指南](https://xypriss.nehonix.com/docs/QUICK_START)** ## 文档 ### 入门 - [快速开始指南](https://xypriss.nehonix.com/docs/QUICK_START) - 安装和基本设置 - [XFPM 指南](https://xypriss.nehonix.com/docs/xfpm) - 使用 XyPriss Fast Package Manager - [示例](https://xypriss.nehonix.com/docs/EXAMPLES) - 实用代码示例 - [功能概述](https://xypriss.nehonix.com/docs/FEATURES_OVERVIEW) - 全面功能列表 ### 安全 - [安全概述](./docs/security/SECURITY.md) - 安全功能和最佳实践 - [**XEMS — 安全会话与临时存储**](./docs/XEMS_TUTORIAL.md) - AES-256-GCM 加密会话、OTP 流程、token 轮换 - [基于路由的安全](./docs/security/ROUTE_BASED_SECURITY.md) - 每个路由的安全策略 - [请求签名认证](./docs/security/request-signature-auth.md) - API 密钥认证 - [CORS 配置](./docs/security/advanced-cors-regexp.md) - 支持 RegExp 模式的高级 CORS ### 插件系统 - [插件开发](https://xypriss.nehonix.com/docs/PLUGIN_DEVELOPMENT_GUIDE) - 创建插件 - [插件钩子](https://xypriss.nehonix.com/docs/PLUGIN_CORE_HOOKS) - 可用的生命周期钩子 - [插件权限](https://xypriss.nehonix.com/docs/PLUGIN_PERMISSIONS) - 安全和权限 - [控制台拦截钩子](https://xypriss.nehonix.com/docs/CONSOLE_INTERCEPT_HOOK) - 控制台监控 ### 高级主题 - [XJson API](./docs/XJSON_API.md) - 高级 JSON 序列化 - [集群](./docs/bun-clustering.md) - 多 worker 扩展 - [性能调优](./docs/cluster-performance-tuning.md) - 优化策略 **[查看所有文档](./docs/)** ## 安全 XyPriss 的构建以安全为基本设计原则。该框架实施了多层保护,并遵循安全 Web 应用程序开发的行业最佳实践。 ### XEMS — 加密内存存储 [XEMS](https://github.com/Nehonix-Team/XyPriss-XEMS) 是内置的会话安全层。与基于 cookie 的 JWT 不同,XEMS 将所有会话数据**存储在原生 Go sidecar 进程内的服务器端**,并使用 AES-256-GCM 进行加密。客户端仅持有一个随机的不透明 token。 ``` import { createServer, xems } from "xypriss"; const app = createServer({ server: { xems: { enable: true, // Enable the XEMS middleware ttl: "15m", // Session lifetime autoRotation: true, // Rotate token on every request gracePeriod: 1000, // ms the old token stays valid (concurrent requests) }, }, }); // Login — create an encrypted session app.post("/auth/login", async (req, res) => { // ... verify credentials await res.xLink({ userId: user.id, role: user.role }); // session created res.json({ success: true }); }); // Protected route — session auto-decrypted app.get("/profile", (req, res) => { if (!req.session) return res.status(401).json({ error: "Unauthorized" }); res.json({ user: req.session }); // { userId, role } }); ``` **[完整 XEMS 指南 →](./docs/XEMS_TUTORIAL.md)** ### 环境安全盾 XyPriss 实施了 **严格环境安全盾** 来保护您的机密信息并强制执行编码最佳实践。默认情况下,XyPriss 屏蔽对非必要变量的 `process.env` 直接访问,以防止第三方库意外暴露或日志调试遗留问题。 #### 1. 零依赖加载器 不需要 `dotenv` 或其他外部包。XyPriss 自动从以下位置加载变量: 1. `.env` 2. `.env.local` 3. `.private/.env` (优先级最高) #### 2. 安全盾实际运作 标准系统变量(如 `PATH`、`USER`、`NODE_ENV`)被列入白名单以确保系统稳定性,但您的自定义应用程序变量受到保护。 ``` // ❌ Blocked & Masked (returns undefined + Security Warning) const secret = process.env.DATABASE_PASSWORD; // ✅ Official & Secure Way const secret = __sys__.__env__.get("DATABASE_PASSWORD"); ``` #### 3. 官方配置 对于项目配置,请使用 `XYPRISS_` 前缀以绕过内部框架变量的安全盾: - `XYPRISS_PORT` - `XYPRISS_HOST` - `XYPRISS_REDIS_URL` **[了解更多关于环境安全的信息 →](./docs/ENVIRONMENT_SHIELD.md)** ### 安全披露政策 虽然我们维持严格的安全标准,但我们承认可能存在漏洞。我们鼓励负责任地披露安全问题。 **如果您发现安全漏洞,请通过电子邮件报告:** **电子邮件:** [support@team.nehonix.com](mailto:support@team.nehonix.com) **请勿针对安全漏洞公开提 GitHub issue。** 我们承诺: - 在 48 小时内确认收到您的报告 - 定期提供我们的进展更新 - 致谢负责任披露漏洞的研究人员 非常感谢您在维护 XyPriss 安全方面的协助。 ### 多服务器安全隔离 在多服务器模式下,XyPriss 强制执行严格的进程和内存隔离。配置中定义的每个服务器都运行自己专用的 XEMS sidecar。这可以防止服务之间的会话泄露(例如,您的公共 API 无法访问您管理仪表板的会话)。 要在分布式设置中与正确的存储交互: - **Web 认证:** 使用 `res.xLink()` (自动)。 - **直接访问:** 使用 `req.app.xems` 或 `xems.forApp(req.app)`。 ### 资源 - **文档** - [完整指南和 API 参考](https://xypriss.nehonix.com/docs/) - **GitHub Discussions** - [社区问答和功能讨论](https://github.com/Nehonix-Team/XyPriss/discussions) - **Issue Tracker** - [Bug 报告和功能请求](https://github.com/Nehonix-Team/XyPriss/issues) - **安全** - [报告漏洞](mailto:support@team.nehonix.com) - **网站** - [了解更多关于 Nehonix](https://nehonix.com) ## 许可证 XyPriss 基于 [Nehonix OSL (Nehonix OSL (NOSL)) License](https://dll.nehonix.com/licenses/NOSL) 授权。 ## 致谢
### 由 Nehonix 团队开发 XyPriss 由 [Nehonix](https://github.com/Nehonix-Team) 及其 [贡献者](https://github.com/Nehonix-Team/XyPriss/graphs/contributors) 维护。 [![Website](https://img.shields.io/badge/Website-nehonix.com-blue?style=for-the-badge&logo=globe)](https://nehonix.com) [![GitHub](https://img.shields.io/badge/GitHub-Nehonix--Team-black?style=for-the-badge&logo=github)](https://github.com/Nehonix-Team)
标签:API开发, MITM代理, Nehonix, Node.js框架, Rust, Syscall, TypeScript, Web开发, 中间件, 企业级Web框架, 原生二进制, 可视化界面, 后端开发, 安全插件, 微服务架构, 日志审计, 混合开发框架, 网络流量审计, 自动化攻击