Skip to main content

No project description provided

Project description

Avilla

The next-gen framework for IM development.

即刻动身, 踏上寻找第二个故乡的旅程.

onebot_v11 PyPI code_style

Avilla 是 Graia Project 的 "下一代" 框架实现, 通过对 OneBot , Telegram Bot API 及其他的基于不同即时通讯软件实现的各式对接接口, 以及其他具有相应概念的 "异步消息流" 实例进行总结, 抽象其中最为基本的各式模型, 构造了一个理论上可以实现零成本切换对接平台的框架.

该框架目前处于快速迭代状态, API 可能会发生 剧烈 变化, 可能还不适合进行生产性的开发与运维

项目名称取自日本轻小说 《魔女之旅》 的角色 "艾维莉亚(Avilla)".

Roadmap

  • Avilla Protocol : 对各式常见的行为进行抽象, 并通过可扩展的模型, 实现尽可能的功能可迁移性.
    • 特色
      • Service: 向程序中其他部分提供经过通用抽象过的资源, 并对其加以维护, 使各部分稳定性增强, 耦合度降低.
        • AiohttpClient (http & websocket client)
        • StarletteServer (http & websocket server)
        • UvicornService (powerful ASGI server)
        • CacheManager (cache)
          • RedisService (cache based on aioredis)
        • SqlmodelDatabase (database)
      • Launch Component: 统一的生命周期管理
      • Config: 基于 pydantic, 支持作用域机制的配置系统.
      • Commander: 优雅的指令系统
      • Permission: 对标 Luckperm, 以低侵入度的方式提供简洁强大的权限管理能力
        • Permissiver: 权限管理指令, 基于 Commander
    • 杂项部分
      • Selector: 实现了扁平化处理 "个体"(Entity) 与 "主线"(Mainline) 的能力.
      • Stream API: 用于简化对获得的二进制信息处理.
      • Platform API: 通过与 Protocol 协作, 扩展 Avilla Protocol, 使其能用于平台的特有特性.
    • 实现支持
  • And more...

我们的愿景

创造出比这之前还要更加具有潜力和创造性的作品, 借此有力促进社区的发展, 助力社区的艺术家们 (Developers & Artists) 以更高的效率, 基于更完善的底层, 创作出更加精彩的作品.

相关项目

星座的光芒是由一个个星点共同组成的, 任何优秀的作品都绝不会是一个人的功绩.
而若是没有这些项目, Avilla 的实现就无从谈起.
排名不分顺序, 可能有许遗漏, 这里仅列出部分较为重要的项目.

无论如何, Avilla 都是 Graia Project 下的一个子项目, 以下项目均在不同层面上支持了 Avilla 的开发:

  • Broadcast Control : 事件系统实现, 最为锋利的魔剑(Magic Sword).
  • Ariadne : 继承了前作的衣钵, 在 Avilla 尚未成熟之际撑起大梁的后续作品, 同样进行了可贵的创新.

衷心感谢这些以及其他未被提及的项目.

开源协议

若非特殊说明, Avilla 及其子包默认使用 MIT 作为开源协议, 但如果你若引用到了使用 GPL/AGPL/LGPL 等具有传染性开源协议的项目, 仍需要遵循相关规则.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

avilla-core-1.0.0rc1.tar.gz (56.0 kB view hashes)

Uploaded Source

Built Distribution

avilla_core-1.0.0rc1-py3-none-any.whl (75.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page