这是一个异步 web 框架,设计目的在于快速的构建需要的 web 服务,无论是 Templates 还是 API。Index.py 拥有极高的裸性能,比 aiohttp、fastapi 更快。
到目前为止,Index.py 不内置数据库、缓存等其他功能。选择困难者请直接使用 Django。
如果你对本框架后续发展有任何的想法,欢迎访问 Github Issues 反馈;如果你有需要与其他人共同分享、讨论的事情,欢迎访问 Github Discussions。
设计灵感
名称来源于 kennethreitz 的同名项目,但随着各种想法的发展……逐渐偏离原本的设计。
安装方法
Index.py 要求 Python 的版本至少是 3.7,对系统无要求。如果不能/不愿升级 Python 版本,可以使用 docker 来运行 Index.py。
安装 pypi 上的包
pip install -U index.py
或者直接从 Github 上安装最新版本
pip install -U git+https://github.com/abersheeran/[email protected]
中国大陆内的用户可从 Coding 上的镜像仓库拉取
pip install -U git+https://e.coding.net/aber/github/[email protected]
必须的依赖
Index.py 并不是一个全然从零开始的框架,它有许多部分依赖于众多优秀的第三方库与 Python 标准库。
- Starlette:提供了 Request、Response、Background Task、TestClient 等功能。
- Pydantic:为自动生成 OpenAPI 文档以及请求参数解析提供了支持。
- Python-multipart:为流式上传文件提供了支持。
- Click:为
index-cli
命令提供支持。