Skip to main content

Nonebot插件商店安装插件,使用基于fastapi和amis的webui安装

Project description

NoneBotPluginLogo

nonebot-plugin-manageweb

✨nb商店插件安装器web版✨

Image Size Image Size

📖 介绍

使用webui安装、更新、卸载插件和修改.evn.*文件,并提供webui接入支持
对非电脑和手机用户不友好,可能出现错位
我是css低手

💿 安装

[!WARNING] 该插件需要fastapi支持

使用镜像站可能需要等待镜像站同步

使用 nb-cli 安装 在 nonebot2 项目的根目录下打开命令行, 输入以下指令即可安装
nb plugin install nonebot-plugin-manageweb
使用包管理器安装 在 nonebot2 项目的插件目录下, 打开命令行, 根据你使用的包管理器, 输入相应的安装命令
pip
pip install nonebot-plugin-manageweb
pdm
pdm add nonebot-plugin-manageweb
poetry
poetry add nonebot-plugin-manageweb
conda
conda install nonebot-plugin-manageweb

打开 nonebot2 项目根目录下的 pyproject.toml 文件, 在 [tool.nonebot] 部分追加写入

plugins = ["nonebot_plugin_manageweb"]

📋 效果

webui默认地址ip:端口/mw/login
webui效果

_ _ _ _

⚙️ 配置

在 nonebot2 项目的.env文件中添加下表中的必填配置

配置项 必填 默认值 说明
mw_username admin 后台管理用户名
mw_password admin 后台管理密码
mw_key ... 后台管理token密钥

🎉 接入webui(未验证)

  • api接入

使用此方法访问地址未/mw/api/xxx 也可以自行创建

自行创建
from nonebot_plugin_manageweb.utils import authentication
from nonebot import get_app, get_driver
DRIVER = get_driver()

@DRIVER.on_startup
async def web():
    app: FastAPI = get_app()

    @app.post("/mw/api/xxx", response_class=JSONResponse, dependencies=[authentication()])
    async def _(user: UserModel):
        pass
api接入
from nonebot_plugin_manageweb.web import BaseApiRouter
from nonebot_plugin_manageweb.utils import authentication
from fastapi import APIRouter
from fastapi.responses import JSONResponse


route = APIRouter()

@route.post(
    '/xxx', response_class=JSONResponse, dependencies=[authentication()]
)
async def _():
    pass

#添加api到BaseApiRouter
BaseApiRouter.include_router(home_route)
  • amis界面添加
from amis import (
    PageSchema,
    Page,
    ....
)
from nonebot_plugin_manageweb.utils import background_css #背景图css
from nonebot_plugin_manageweb.page.main import admin_app

xxx_page = PageSchema(url='/地址', icon='图标', label='页面标题',
                  schema=Page(title='页面上方标题', body=...., style=background_css))
#添加页面到admin_app
admin_app.pages[0].children.append(xxx_page)

丨❤鸣谢

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

nonebot_plugin_manageweb-0.1.2.tar.gz (24.7 kB view details)

Uploaded Source

Built Distribution

nonebot_plugin_manageweb-0.1.2-py3-none-any.whl (29.2 kB view details)

Uploaded Python 3

File details

Details for the file nonebot_plugin_manageweb-0.1.2.tar.gz.

File metadata

File hashes

Hashes for nonebot_plugin_manageweb-0.1.2.tar.gz
Algorithm Hash digest
SHA256 dff692860248d8099680224c1de9e619349b268c053d29d16cccc2a6f194e287
MD5 febf99458136e42f3c493b637ec5d9ca
BLAKE2b-256 8c7fa04f71325286e689daad339a57fe55a9a4b764926001480820bf805ad65f

See more details on using hashes here.

File details

Details for the file nonebot_plugin_manageweb-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for nonebot_plugin_manageweb-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 ac983a1e401f162b0c3a56e9e4713adf4cccd32c7ed77acafaf3a38dd4cd4c7d
MD5 0dea5340cbe9cc5fc6af247f6c0ac551
BLAKE2b-256 a4058dad66afb36887d8fd7ec8370b49919fe16979e1cf171542b20ce9594ae4

See more details on using hashes here.

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