A collection of common components for Graia Project.
于是明天仍将到来.
每一天都会带来新的邂逅, 纵使最终忘却也不会害怕明天到来.
Amnesia 是一系列共用组件的集合, 包含了以下内容:
- 消息链
MessageChain
, 沿袭自 Avilla 实现和 Ariadne 部分方法实现; Element
基类和Text
消息元素实现;Launch API
: 程序生命周期管理, 提供准备(prepare
), 主线(mainline
) 与 清理(cleanup
) 三个时间节点; 支持依赖编排;- 轻量化实现的
Service
; - 轻量化的内存缓存实现
Memcache
, 原版本由 @ProgramRipper 实现, 沿袭自 Avilla; Transport API
: 职权分派, 交互主导的网络通信封装;uvicorn
: ASGI Runner;starlette
: ASGI Application;aiohttp
: Http & WebSocket Client.
通过 Amnesia, 我们希望能更加轻量化第三方库的依赖, 并籍此促进社区的发展.
MessageChain
可以让 Avilla, Ariadne, Alconna 等共用统一实现, 并使其泛用性扩大;Launch API
可以优化应用的启动流程, 适用于Saya
或是单纯的Broadcast Control
应用;Service
使维护和访问资源的流程更加合理;- ...或许还会有更多?
本项目以 MIT 协议开源.