Vona 是什么

April 23, 2026 · View on GitHub

简体中文 | English

Vona 是什么

Vona 是一款全栈框架,支持单代码库构建SSR/SPA/Web网站/Admin中后台,采用前后端分离架构,并内置前后端类型共享能力

  • 提供 DTO 动态推断与生成能力,减少重复的类型定义工作,提升开发效率
  • 支持双层页签导航,实现高效页面切换,并保持页面状态
  • 可动态渲染 CRUD 的列表页、条目页、搜索表单,并且提供了Tanstack Table/Tanstack Form/Tanstack Query的最佳实践

LICENSE MIT NPM version Test coverage NPM download

全栈机制

Vona 采用前后端分离的架构。前端使用 Zova 框架,将构建生成的 JS bundle 放入 Vona 后端,在后端直接进行 SSR 渲染

前后端类型共享机制:

  • 后端生成 Swagger/Openapi Schema,用于在前端生成 Api SDK
  • 前端生成图标、路由和组件的类型,用于在后端提供类型提示

文档

在线演示

使用同一套代码实现 Cabloy Store 的Web网站Admin中后台

动图演示

  • 双层页签导航

技术栈

通用

名称版本
pnpm>=10.19.0
Nodejs>=24.8.0
Typescript>=5.9.3

后端(Vona)

名称版本
Koa>=3.0.0
Knex>=3.1.0
Zod>=4.1.13
Redis>=7.2.6
Sqlite3内置
MySQL>=8
Postgresql>=16
  • Redis: VonaJS 基于 Redis 提供了以下能力:
    • 队列、定时任务、启动项、广播、缓存、二级缓存、分布式锁
  • Sqlite3: 需要预先准备 node-gyp 环境,确保在安装依赖时可以正常编译出better_sqlite3.node

前端(Zova)

名称版本
Vite>=8.0.0
Vue>=3.5.6
Vue Router>=4.4.5
Zod>=4.1.13
Tanstack Query>=5.92.5
Tanstack Form>=1.23.5
Tanstack Table>=8.21.3

UI库

Zova 可以搭配任何 UI 库使用,并且内置了几款 UI 库的项目模版,便于开箱即用

名称版本
Daisyui>=5.3.2
Tailwindcss>=4.1.14
Quasar>=2.18.1
Vuetify>=4.0.1

联系方式

License

MIT

Copyright (c) 2016-present, Vona