欢迎来到 艾瑞可erik 的魔法世界 🧙‍♂️

给我一个需求,还你一个项目——别管它是什么。这就是全栈。

📚 292 篇文章 🏷️ 507 个标签 📂 90 个分类

🔥 最新文章

小欧输入法

Open People Input (OPI)

中文名小欧(也是项目宠物名),英文名 opi;输入法以小欧输入法为准(opi 输入法也可)。

一款回归本质、人人可用的多端输入法

(编译 / 打包 / 安装 / 使用,按平台分册)。
装完还有一步必做:把 OPI 加进输入法组 —— 新装的输入法不会自动启用,不做这步
输入法列表里看得到它、打字什么都不会发生(fcitx5 插件重载已由安装脚本自动完成)。

官网 / Website:https://opi.erik.xyz)—— 翻屏式项目介绍、3D 键帽环境与首访回忆时光轴、功能迭代、全量版本日志与各端下载(打赏二维码可原地点开,页脚含备案号)。

验证范围:目前 Android(模拟器)、Windows(真机,用户验收)与 Linux(容器 / 本机) 有运行验证;iOS / macOS / 鸿蒙 已有客户端代码或可构建产物,但均未在真机验收,签名也未验证。

OPI Input Method

Open People Input (OPI)

The Chinese name is 小欧 (Xiǎo’ōu — also the project pet’s name), and the English name is opi; the input method is officially 小欧输入法 (opi input method is also acceptable).

A multi-platform input method that returns to essentials, usable by everyone

(Build / package / install / use — split into volumes by platform.)
One step is mandatory after installation: add OPI to your input method group — a newly installed input method is not enabled automatically. Skip this step and
it will show up in the input method list, but typing will do nothing (the fcitx5 addon reload is already handled by the install script).

Website: https://opi.erik.xyz — a scroll-through project introduction, a 3D keycap environment and a first-visit memory timeline, feature iterations, the full version log, and downloads for every platform (the tip QR code opens in place; the footer carries the registration number).

Verification scope: currently Android (emulator), Windows (real hardware, user acceptance) and Linux (container / local machine) have runtime verification; iOS / macOS / HarmonyOS already have client code or buildable artifacts, but none has been accepted on real hardware, and signing has not been verified either.

Beerust是一个 Rust 语言的生产级 Web 框架

Beerust

English

Beerust是一个 Rust 语言的生产级 Web 框架,设计哲学源自 Go 的 Beego框架,用 Rust 惯用的 trait、macro、类型系统重新表达。

设计目标

目标 指标
开发体验 从 Beerust new 到首请求 < 30 秒
性能 控制器层开销 < 5%(对比裸 axum),P99 路由延迟 < 100µs
编译速度 元 crate 全量编译 < 60s(release),增量编译 < 5s
二进制体积 最小应用(仅 router)< 5MB(strip + LTO)
安全性 0 unsafe 业务代码;所有 FFI 封装在独立 *-sys crate
兼容性 Rust 1.80+ MSRV,跟踪 stable

Beerust is a Production-Grade Web Framework for Rust

Beerust

English

Beerust is a production-grade web framework for Rust. Its design philosophy comes from Go’s Beego framework, re-expressed with idiomatic Rust traits, macros, and type system.

Design Goals

Goal Target
Developer experience From Beerust new to first request in < 30 seconds
Performance Controller-layer overhead < 5% (vs. bare axum), P99 route latency < 100µs
Compile speed Full build of the meta crate < 60s (release), incremental build < 5s
Binary size Smallest app (router only) < 5MB (strip + LTO)
Safety 0 unsafe in business code; all FFI wrapped in dedicated *-sys crates
Compatibility Rust 1.80+ MSRV, tracking stable

全球物流聚合插件

全球物流聚合(global-logistics)

全球物流聚合是统一门面的国内快递 / 国际物流轨迹查询 composer 包(PHP 8.2+,PSR-4,不绑定框架)。

项目介绍

global-logistics 把全球 209 家快递 / 邮政承运商的轨迹查询统一收敛为一个门面:业务方只需传入单号,自动识别国内 / 国际通道与承运商,无需关心各家协议差异(签名、OAuth2、XML/JSON、状态映射)。

Global Logistics Aggregation Plugin

Global Logistics Aggregation (global-logistics)

Global Logistics Aggregation is a composer package with a unified facade for domestic express and international logistics tracking queries (PHP 8.2+, PSR-4, framework-agnostic).

Project introduction

global-logistics collapses tracking queries for 209 express/postal carriers worldwide into a single facade: your application just passes in a tracking number, and the package works out the domestic/international channel and the carrier on its own — you never have to care about the differences between carriers (signing, OAuth2, XML/JSON, status mapping).

Ecat是Rust 微服务框架

Ecat

English | 简体中文

e-cat 是对标 go-kratos/kratos v3 的 Rust 微服务框架。

提供 API-first 开发体验、可插拔的组件架构、统一的 HTTP/gRPC 中间件抽象,以及完备的 CLI 工具链。让熟悉 Kratos 的开发者可以无缝上手,同时充分利用 Rust 的类型安全、零成本抽象和极致性能。

设计架构

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
┌──────────────────────────────────────────────────────────────┐
│ ecat-cli │
│ (new │ proto │ run │ build) │
├──────────────────────────────────────────────────────────────┤
│ ecat (应用生命周期) │
│ AppBuilder → App { name, servers, hooks, ... } │
├────────────────────┬────────────────────┬────────────────────┤
│ transport │ middleware │ registry │
│ ───────── │ ────────── │ ──────── │
│ HTTP (axum) │ RecoveryLayer │ memory │
│ gRPC (tonic) │ TracingLayer │ │
│ encoding │ LoggingLayer │ │
│ │ TimeoutLayer │ │
│ │ SecurityLayer │ │
├────────────────────┼────────────────────┼────────────────────┤
│ config │ errors │ metadata │
│ ────── │ ────── │ ──────── │
│ file / env │ ErrorCode │ key-value │
│ remote source │ Error │ HTTP/gRPC │
├────────────────────┴────────────────────┴────────────────────┤
│ data 层 │
│ ──────────────────────────────────────────────── │
│ rdbms: SQLite / PostgreSQL / MySQL / TiDB │
│ cache: Redis / Memcached │
│ olap: ClickHouse │
│ search: OpenSearch / Elasticsearch │
│ graph: Neo4j / NebulaGraph / ArangoDB │
│ tsdb: InfluxDB / Apache IoTDB / QuestDB │
├──────────────────────────────────────────────────────────────┤
│ ecat-protos │
│ (共享 .proto 定义: errors, metadata, ...) │
└──────────────────────────────────────────────────────────────┘

Ecat is a Rust Microservices Framework

Ecat

English | 简体中文

e-cat is a Rust microservices framework benchmarked against go-kratos/kratos v3.

It provides an API-first development experience, a pluggable component architecture, a unified HTTP/gRPC middleware abstraction, and a full CLI toolchain. Developers already familiar with Kratos can get up to speed seamlessly, while taking full advantage of Rust’s type safety, zero-cost abstractions, and extreme performance.

Coding to Rust 是一个 Claude Code 技能集合,覆盖从 16 种主流编程语言迁移到 Rust 的完整skills

Coding to Rust — 多语言迁移到 Rust 的技能集合

English

项目介绍

Coding to Rust 是一个 Claude Code 技能集合,覆盖从 16 种主流编程语言迁移到 Rust 的完整指南。每种语言提供:

  • 架构映射 — 运行时差异、范式转换、内存模型对照
  • 类型系统对照表 — 30-80 条精确的类型/语法映射
  • 框架迁移指南 — 主流框架到 Rust 生态的对照(如 Django→Axum、Spring→Actix)
  • 标准模式对照 — 带代码示例的 before/after 对比
  • 常见错误 — 该语言开发者在 Rust 中最容易犯的错误及修复方法
  • FFI 渐进迁移策略 — 分阶段替换方案
  • 参考实现 — 真实世界的迁移案例和项目

Coding to Rust: A Claude Code Skill Collection for Migrating 16 Mainstream Languages to Rust

Coding to Rust — a skill collection for migrating to Rust from many languages

English

Project overview

Coding to Rust is a Claude Code skill collection that provides a complete guide for migrating from 16 mainstream programming languages to Rust. For each language it offers:

  • Architecture mapping — runtime differences, paradigm shifts, memory model comparisons
  • Type system mapping tables — 30-80 precise type/syntax mappings
  • Framework migration guides — how mainstream frameworks map to the Rust ecosystem (such as Django→Axum, Spring→Actix)
  • Idiom comparisons — before/after comparisons with code examples
  • Common mistakes — the mistakes developers from that language make most often in Rust, and how to fix them
  • Incremental FFI migration strategy — a phased replacement plan
  • Reference implementations — real-world migration cases and projects

Security rust攻击检测库

Security rust

English | 中文

Rust 编写的攻击检测库,覆盖注入攻击、协议攻击、数据/序列化攻击、文件/敏感数据泄露 4 大类共 27 个检测器。零外部框架依赖,纯字符串扫描。


设计思路

为什么用「检测」而非「拦截」

本库定位为纯输入扫描器——接收字符串,返回结构化检测结果。不绑定任何 Web 框架,不做 HTTP 请求/响应解析,不实现实时阻断。这样你可以把它嵌入到任何链路中:WAF 规则引擎、日志审计、API 网关前置校验、CLI 安全扫描工具等。

Security Rust Attack Detection Library

Security rust

English | 中文

An attack detection library written in Rust, covering 27 detectors across 4 categories: injection attacks, protocol attacks, data/serialization attacks, and file/sensitive data leaks. Zero external framework dependencies, pure string scanning.


Design philosophy

Why “detection” rather than “blocking”

This library is positioned as a pure input scanner — it takes a string and returns structured detection results. It binds to no web framework, does no HTTP request/response parsing, and implements no real-time blocking. That way you can embed it in any pipeline: a WAF rule engine, log auditing, pre-flight validation in an API gateway, a CLI security scanner, and so on.

Security Go — 攻击检测库

Security Go — 攻击检测库

English

Go 语言编写的攻击检测包,覆盖 32 个检测器、5 大攻击类别、3 种可插拔存储后端。统一接口 + 注册表模式,纯检测库,适配任何 Go HTTP 框架。

设计思路

核心原则

  • 零依赖检测 — 所有检测器仅使用 Go 标准库 regexp,无外部依赖
  • 统一接口 — 每个检测器实现 Detector 接口(Name() + Detect()),通过 Engine 注册表统一管理
  • 预编译正则 — 所有模式在 var 初始化时编译,运行时零开销
  • 按需配置 — 注入/协议/数据/文件检测器即插即用;HTTP 校验器需应用自定义配置

Security Go — Attack Detection Library

Security Go — Attack Detection Library

English

An attack detection package written in Go, covering 32 detectors, 5 major attack categories, and 3 pluggable storage backends. Unified interface + registry pattern, a pure detection library that fits any Go HTTP framework.

Design

Core Principles

  • Zero-dependency detection — every detector uses only Go’s standard-library regexp, no external dependencies
  • Unified interface — each detector implements the Detector interface (Name() + Detect()), managed centrally through the Engine registry
  • Precompiled regexes — all patterns are compiled at var initialization, so runtime overhead is zero
  • Configure on demand — injection/protocol/data/file detectors work out of the box; the HTTP validators need app-specific configuration

工业网络通信协议集 —— 微内核 + 协议 SDK 架构,覆盖 40 种工业协议,兼容 6 种 PHP 运行时环境

PHP 工业网络通信协议集 —— 微内核 + 协议 SDK 架构,覆盖 40 种工业协议,兼容 6 种 PHP 运行时环境。

English

目录


项目简介

Industrial Protocols 是一个面向 PHP 生态的工业通信协议集,采用 微内核 + 协议 SDK 架构。40 个协议包(15 个纯 PHP 实现 + 25 个 Bridge 桥接),每个包都是独立 GitHub 仓库和 Composer 包,通过 Packagist 按需安装。

核心理念: 内核只定义「协议是什么」,不包含任何具体协议实现。用户按需安装协议包,内核启动时通过 composer.json 的 extra 字段自动发现并注册。

1
composer require erikwang2013/industrial-protocols-kernel erikwang2013/industrial-protocols-modbus

Industrial Network Protocol Suite — Micro-Kernel + Protocol SDK Architecture, 40 Industrial Protocols, 6 PHP Runtimes

PHP Industrial Network Protocol Suite — micro-kernel + protocol SDK architecture, covering 40 industrial protocols and compatible with 6 PHP runtime environments.

English

Table of Contents


Project Overview

Industrial Protocols is an industrial communication protocol suite built for the PHP ecosystem, using a micro-kernel + protocol SDK architecture. There are 40 protocol packages (15 pure-PHP implementations + 25 Bridge packages), each one an independent GitHub repository and Composer package, installed on demand through Packagist.

Core idea: the kernel only defines “what a protocol is” and contains no concrete protocol implementation. Users install protocol packages as needed, and at boot the kernel discovers and registers them automatically via the extra field in composer.json.

1
composer require erikwang2013/industrial-protocols-kernel erikwang2013/industrial-protocols-modbus

Global Game Platform全球游戏聚合平台

全球游戏聚合平台 (Global Game Platform)

Copyright (c) 2026 erik erik@erik.xyz — https://erik.xyz

全球通用、国际化的游戏聚合平台。用户注册后在平台充值兑换游戏币,用游戏币玩游戏、赚取游戏币,游戏币可转回钱包提现。后台提供完整的游戏管理、提现审核、用户管理和支付管理功能。支持多语言切换(英文/中文)。

版本策略

版本 目标 状态
基础版 (MVP) 跑通核心闭环:注册→充值→兑换→游戏→提现→审核 已完成
标准版 生产可用:全球化支付、第三方游戏SDK、基础风控、三端前端 规划中
完整版 完全体:多语言、排行榜、优惠券、完整风控、全量功能 规划中

Global Game Platform — Global Game Aggregation Platform

Global Game Platform

Copyright (c) 2026 erik erik@erik.xyz — https://erik.xyz

A universal, internationalized game aggregation platform. After registering, users top up on the platform and exchange that balance for game coins; they use the coins to play games and earn more coins, and coins can be converted back into wallet balance for withdrawal. The admin panel provides complete game management, withdrawal review, user management and payment management. Multi-language switching (English/Chinese) is supported.

Version strategy

Version Goal Status
Basic (MVP) Get the core loop working: register → top up → exchange → play → withdraw → review Done
Standard Production-ready: global payments, third-party game SDKs, basic risk control, three front ends Planned
Full The complete version: multi-language, leaderboards, coupons, full risk control, every feature Planned

Property Management Platform物业管理系统

物业管理系统 (Property Management Platform)

Copyright (c) 2026 erik erik@erik.xyz — https://erik.xyz

全栈物业管理系统,覆盖小区管理、费用收缴、报修维护、停车门禁、安保保洁等15个业务模块。管理员端(admin)和业主端(service)分离部署,前端覆盖 Flutter Web(PC 管理后台风格)与 HarmonyOS 移动端。

项目结构

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
property-management-platform/
├── admin/ # 管理员端 webman v2 项目
│ ├── app/
│ │ ├── admin/controller/ # 管理端控制器
│ │ ├── api/v1/controller/ # 公开 API 控制器
│ │ ├── common/ # 公共工具类
│ │ ├── middleware/ # 中间件(认证/鉴权/限流/安全)
│ │ ├── model/ # 数据模型(Eloquent ORM)
│ │ ├── queue/ # 队列任务
│ │ └── process/ # 进程管理
│ ├── apps/
│ │ ├── flutter/ # 管理后台 Flutter Web(PC 风格)
│ │ └── harmonyos/ # 管理后台 HarmonyOS App
│ ├── config/ # 配置文件(含中文注释)
│ ├── database/
│ │ ├── migrations/ # SQL 迁移文件
│ │ └── backup/ # 数据库备份脚本
│ ├── resource/
│ │ └── translations/ # 国际化语言文件(zh_CN / en)
│ ├── docs/ # 管理端文档
│ ├── tests/ # 单元测试
│ └── public/ # Web 入口
├── service/ # 业主业务端 webman v2 项目
│ ├── app/
│ │ ├── api/v1/controller/ # 业主端 API 控制器
│ │ ├── common/ # 公共工具类
│ │ ├── middleware/ # 中间件
│ │ ├── model/ # 数据模型
│ │ └── process/ # 进程管理
│ ├── config/ # 配置文件
│ ├── resource/
│ │ └── translations/ # 国际化语言文件
│ └── database/migrations/ # SQL 迁移文件
├── apps/
│ ├── flutter/ # 业主端 Flutter Web(PC 风格)
│ └── harmonyos/ # 业主端 HarmonyOS App
└── docs/ # 项目文档
├── ARCHITECTURE.md
├── ARCHITECTURE_DESIGN.md
├── API.md
├── FEATURES.md
└── FEATURE_DESIGN.md

Property Management Platform

Property Management Platform

Copyright (c) 2026 erik erik@erik.xyz — https://erik.xyz

A full-stack property management system covering 15 business modules, from community management and fee collection to repair and maintenance, parking and access control, security, and cleaning. The admin side (admin) and the owner side (service) are deployed separately, and the front end covers Flutter Web (PC admin console style) plus a HarmonyOS mobile app.

Project Structure

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
property-management-platform/
├── admin/ # admin-side webman v2 project
│ ├── app/
│ │ ├── admin/controller/ # admin controllers
│ │ ├── api/v1/controller/ # public API controllers
│ │ ├── common/ # shared utility classes
│ │ ├── middleware/ # middleware (auth/permission/rate limiting/security)
│ │ ├── model/ # data models (Eloquent ORM)
│ │ ├── queue/ # queued jobs
│ │ └── process/ # process management
│ ├── apps/
│ │ ├── flutter/ # admin console Flutter Web (PC style)
│ │ └── harmonyos/ # admin console HarmonyOS app
│ ├── config/ # configuration files (with Chinese comments)
│ ├── database/
│ │ ├── migrations/ # SQL migration files
│ │ └── backup/ # database backup scripts
│ ├── resource/
│ │ └── translations/ # i18n language files (zh_CN / en)
│ ├── docs/ # admin-side docs
│ ├── tests/ # unit tests
│ └── public/ # web entry point
├── service/ # owner-side webman v2 project
│ ├── app/
│ │ ├── api/v1/controller/ # owner-side API controllers
│ │ ├── common/ # shared utility classes
│ │ ├── middleware/ # middleware
│ │ ├── model/ # data models
│ │ └── process/ # process management
│ ├── config/ # configuration files
│ ├── resource/
│ │ └── translations/ # i18n language files
│ └── database/migrations/ # SQL migration files
├── apps/
│ ├── flutter/ # owner-side Flutter Web (PC style)
│ └── harmonyos/ # owner-side HarmonyOS app
└── docs/ # project docs
├── ARCHITECTURE.md
├── ARCHITECTURE_DESIGN.md
├── API.md
├── FEATURES.md
└── FEATURE_DESIGN.md