This commit is contained in:
2025-12-21 19:08:38 +08:00
commit 7d77c66edb
11 changed files with 1373 additions and 0 deletions

56
.cnb.yml Normal file
View File

@@ -0,0 +1,56 @@
# .cnb.yml
$:
vscode:
- docker:
image: docker.cnb.cool/kevisual/dev-env:latest
services:
- vscode
- docker
imports: https://cnb.cool/kevisual/env/-/blob/main/env.yml
# 开发环境启动后会执行的任务
# stages:
# - name: pnpm install
# script: pnpm install
main:
web_trigger_sync_to_gitea:
- services:
- docker
imports:
- https://cnb.cool/kevisual/env/-/blob/main/env.yml
stages:
- name: 'show username'
script: echo "GITEA_USERNAME is ${GITEA_USERNAME} and GITEA_PASSWORD is ${GITEA_PASSWORD}"
- name: sync to gitea
image: tencentcom/git-sync
settings:
target_url: https://git.xiongxiao.me/template/simple-bun.git
auth_type: https
username: "oauth2"
password: ${GITEA_TOKEN}
git_user: "abearxiong"
git_email: "xiongxiao@xiongxiao.me"
sync_mode: rebase
branch: main
web_trigger_sync_from_gitea:
- services:
- docker
imports:
- https://cnb.cool/kevisual/env/-/blob/main/env.yml
stages:
- name: '添加 gitea的origin'
script: |
git remote remove gitea 2>/dev/null || true
git remote add gitea https://oauth2:${GITEA_TOKEN}@git.xiongxiao.me/template/simple-bun.git
- name: '同步gitea代码到当前仓库'
script: git pull gitea main
- name: '提交到原本的origin'
script: git push origin main
"**":
web_trigger_test:
- stages:
- name: 执行任务
script: echo "job"

11
.cnb/web_trigger.yml Normal file
View File

@@ -0,0 +1,11 @@
# .cnb/web_trigger.yml
branch:
# 如下按钮在分支名以 release 开头的分支详情页面显示
- reg: "^main"
buttons:
- name: 同步代码到gitea
desc: 同步代码到gitea
event: web_trigger_sync_to_gitea
- name: 同步gitea代码到当前仓库
desc: 同步gitea代码到当前仓库
event: web_trigger_sync_from_gitea

15
.gitignore vendored Normal file
View File

@@ -0,0 +1,15 @@
.env
!.env*development
node_modules
dist
pack-dist
.DS_Store
.pnpm-store
.vite
.astro

21
bun.config.ts Normal file
View File

@@ -0,0 +1,21 @@
// @ts-check
import { resolvePath } from '@kevisual/use-config';
import { execSync } from 'node:child_process';
const entry = 'src/index.ts';
const naming = 'app';
const external = ['pm2'];
/**
* @type {import('bun').BuildConfig}
*/
await Bun.build({
target: 'node',
format: 'esm',
entrypoints: [resolvePath(entry, { meta: import.meta })],
outdir: resolvePath('./dist', { meta: import.meta }),
naming: {
entry: `${naming}.js`,
},
external,
env: 'KEVISUAL_*',
});

22
kevisual.json Normal file
View File

@@ -0,0 +1,22 @@
{
"metadata": {
"name": "kevisual",
"share": "public"
},
"registry": "https://kevisual.cn/root/ai/kevisual/backend/simple-bun",
"clone": {
".": {
"enabled": true
}
},
"syncd": [
{
"files": [
"**/*"
],
"registry": ""
}
],
"sync": {
}
}

49
package.json Normal file
View File

@@ -0,0 +1,49 @@
{
"name": "@kevisual/router-template-server",
"version": "0.0.1",
"description": "",
"main": "index.js",
"basename": "/root/router-template-server",
"app": {
"type": "system-app",
"entry": "app.js",
"runtime": [
"server"
]
},
"scripts": {
"dev": "bun --watch src/main.ts ",
"build": "pnpm run clean && bun run bun.config.mjs",
"postbuild": "ev pack",
"compile": "bun build --compile ./src/main.ts --outfile router-template",
"compile:win": "bun build --compile ./src/main.ts --target=bun-windows-x64 --outfile router-template.exe",
"clean": "rm -rf dist && rimraf pack-dist",
"pub": "envision pack -p -u"
},
"files": [
"dist"
],
"keywords": [],
"author": "abearxiong <xiongxiao@xiongxiao.me> (https://www.xiongxiao.me)",
"license": "MIT",
"packageManager": "pnpm@10.26.1",
"type": "module",
"dependencies": {
"@kevisual/ai": "^0.0.19",
"@kevisual/local-proxy": "^0.0.8",
"@kevisual/query": "^0.0.33",
"@kevisual/router": "0.0.48",
"@kevisual/use-config": "^1.0.21",
"@kevisual/video-tools": "^0.0.6",
"archiver": "^7.0.1",
"dayjs": "^1.11.19",
"es-toolkit": "^1.43.0",
"nanoid": "^5.1.6"
},
"devDependencies": {
"@kevisual/types": "^0.0.10",
"@types/archiver": "^7.0.0",
"@types/bun": "^1.3.5",
"@types/node": "^25.0.3"
}
}

1142
pnpm-lock.yaml generated Normal file

File diff suppressed because it is too large Load Diff

15
readme.md Normal file
View File

@@ -0,0 +1,15 @@
# simple-bun
这是一个使用 Vite 构建的简单 Lit 项目模板。您可以使用此模板快速启动一个新的 Lit 项目,并利用 AI 助手生成代码片段以加速开发过程。少用git。
## cli
```sh
ev sync clone -i https://kevisual.cn/root/ai/kevisual/backend/simple-bun/kevisual.json
```
## 同步命令
```sh
ev sync list
ev sync upload
```

5
src/asr.ts Normal file
View File

@@ -0,0 +1,5 @@
import { QwenAsrRelatime } from "@kevisual/video-tools/src/asr/index.ts";
const asr = new QwenAsrRelatime({
token: "your_api_key_here",
});

13
src/test/common.ts Normal file
View File

@@ -0,0 +1,13 @@
import { useConfig } from "@kevisual/use-config";
import { QwenAsrRelatime } from "@kevisual/video-tools/src/asr/index.ts";
const config = useConfig();
export const token = config.BAILIAN_API_KEY
export const asr = new QwenAsrRelatime({
token,
onConnect: async () => {
await asr.start();
}
});

24
tsconfig.json Normal file
View File

@@ -0,0 +1,24 @@
{
"extends": "@kevisual/types/json/backend.json",
"compilerOptions": {
"module": "NodeNext",
"target": "esnext",
"baseUrl": ".",
"typeRoots": [
"./node_modules/@types",
"./node_modules/@kevisual/types/index.d.ts"
],
"paths": {
"@/*": [
"src/*"
],
"@agent/*": [
"agent/*"
]
},
},
"include": [
"src/**/*",
"agent/**/*",
],
}