Skip to content

Quasar Dashboard PRO:基于 Vue 3 与 TypeScript 的生产级仪表盘模板 ​

译注:本文编译自 dev.to 上 Patrick Monteiro 的文章《I Built a Production-Ready Dashboard Template with Quasar, Vue 3 and TypeScript》,原文链接见文末。文章介绍了一个重新设计的 Quasar 仪表盘模板项目,以下内容为忠实翻译与整理。

从零开始构建一个现代 Web 应用,往往意味着要花大量时间处理那些并非产品核心的部分:认证布局、导航、仪表盘、表格、图表、响应式布局、暗色模式、可复用组件,以及让一切看起来足够体面。

作者希望为使用 Quasar Framework 的开发者解决这个问题,于是决定重启一个在 GitHub 上搁置了五年多的项目,并针对现代 Quasar 生态进行了彻底重设计。这就是 Quasar Dashboard PRO——一个使用 Quasar Framework、Vue 3、TypeScript 和 Vite 构建的现代化、生产级仪表盘模板。

项目已在 GitHub 开源:https://github.com/patrickmonteiro/quasar-dashboard-pro

为什么还要再造一个仪表盘模板? ​

React、Next.js 等流行生态中已有无数仪表盘模板。但在使用 Vue、尤其是 Quasar 时,作者发现自己常常从一个干净的 Quasar 项目开始,反复重建同样的应用基础。

Quasar Dashboard PRO 的目标很简单:给开发者一个扎实的起点,而不是一个空项目。 克隆仓库、安装依赖、启动开发服务器,就能立刻得到一个完整的仪表盘应用作为工作基础。

基于 Quasar 构建 ​

项目的基础是 Quasar Framework。Quasar 不只是一个 UI 组件库,它围绕 Vue 提供了完整的应用框架,并针对不同应用目标提供工具链。当前 Quasar 生态支持:

  • SPA
  • SSR
  • SSG
  • PWA
  • 移动应用
  • 桌面应用
  • 浏览器扩展

这些全部来自同一套 Vue 生态。这意味着今天开始构建的仪表盘,未来不必局限于浏览器端。

模板包含哪些内容 ​

Quasar Dashboard PRO 围绕真实应用需求设计,而非仅仅堆砌 UI 截图。它包含多个应用领域,用以展示架构在真实项目中的用法。

金融(Finance) ​

完整的金融仪表盘示例,包含:多账户卡片、收支图表、支出限额、储蓄目标、基于货币的账户、响应式布局。

CRM ​

模板还包含面向 CRM 的结构,涵盖:线索(Leads)、交易(Deals)、客户、沟通、概览仪表盘。这使其更容易适配 SaaS 应用、内部工具和业务平台。

电商(E-commerce) ​

项目包含以下示例:商品、购物车、结账、订单历史、订单摘要。目标不是打造一个完整的电商平台,而是展示不同业务领域如何在同一套仪表盘架构中共存。

车队追踪(Fleet Tracking) ​

新版本中最有意思的部分之一是车队追踪仪表盘,它展示了如何用 Quasar 构建更复杂的运营界面,包含:车辆实时监控、车辆状态、行程历史、告警、维护、基于地图的可视化、风险区域、实时指标。这类界面对物流、运输、现场服务和 IoT 应用尤其有价值。

可复用的应用基础 ​

项目的目标不只是提供一个好看的仪表盘,而是为应用提供可复用的基础。与其从这样的目录结构开始:

src/
  components/
  pages/
  layouts/

然后花几天时间决定各部分如何组合,不如直接从一个已经具备以下内容的应用起步:导航、布局、仪表盘页面、响应式行为、可复用 UI 模式、表格、卡片、图表、表单、应用分区、主题支持。你可以删掉不需要的部分,然后开始构建真正的产品。

响应式设计 ​

现代仪表盘必须适配不同屏幕尺寸。一个在大显示器上好看、但在笔记本或移动设备上无法使用的仪表盘,算不上生产级。Quasar 的响应式工具和组件系统让构建这类界面成为可能,同时保持一致的开发体验。Quasar Dashboard PRO 的目标是把响应式行为当作架构的一部分,而不是最后才补上的东西。

TypeScript ​

项目使用 TypeScript 构建。这对仪表盘应用尤为重要,因为它们通常包含大量结构化数据。例如:

typescript
interface Transaction {
  id: number
  description: string
  amount: number
  currency: string
  status: 'pending' | 'completed' | 'failed'
  date: string
}

随着应用增长,强类型变得越来越有价值:重构更安全、编辑器支持更好、代码库更易维护。

Vite ​

项目使用现代的 Quasar + Vite 工具链,提供快速的开发体验,同时让项目与当前 Vue 生态保持一致。Quasar 当前的工具链围绕 Vite 构建,并在其上提供自己的 CLI 和构建模式。

为定制而设计 ​

仪表盘模板不应把开发者锁死在单一视觉风格中。项目本身就是为定制而设计的,你可以修改:颜色、排版、导航、布局、组件、仪表盘卡片、图表、页面、应用模块。思路是提供一个强有力的起点,同时保持足够的灵活性,让它最终成为你自己的应用。

开源 ​

Quasar Dashboard PRO 是开源的,仓库地址:https://github.com/patrickmonteiro/quasar-dashboard-pro

目标不仅是提供一个开箱即用的模板,也为 Quasar 社区提供一些可以随时间演进的东西。作者尤其期待看到开发者用它构建出什么。

适合谁使用?

  • SaaS 应用:从完整仪表盘起步,专注于真正的产品。
  • 内部工具:更快构建管理面板和业务系统。
  • CRM 系统:以 CRM 结构为起点。
  • 金融应用:以金融仪表盘为基础。
  • 电商平台:复用商品、结账和订单结构。
  • 车队与物流系统:以车队追踪仪表盘作为运营应用的起点。
  • 管理面板:或直接作为通用 Quasar 管理模板使用。

为什么选择 Quasar? ​

作者喜欢 Quasar 的最大原因之一,是它让开发者可以跳出单一部署目标来思考。一个 Vue 应用可以演进为不同形态,而无需更换整套技术栈:

             Vue + Quasar
                   │
        ┌──────────┼──────────┐
        │          │          │
       SPA        PWA        SSR
        │          │          │
        └─────┬────┴────┬─────┘
              │         │
           Mobile    Desktop

这是该框架最大的优势之一:你可以构建一套通用的应用基础,在产品需要时再适配到不同平台。

后续计划 ​

当前版本只是开始。作者希望在后续版本中探索:更多仪表盘示例、更多可复用组件、认证示例、基于角色的权限、高级数据表格、更多图表示例、更好的移动端体验、PWA 改进、更多真实应用模块、AI 辅助功能,以及来自社区的贡献和想法。

亲自尝试 ​

如果你正在使用 Quasar,并需要为下一个项目寻找一个现代化的起点,不妨一试。在 GitHub 上查看 Quasar Dashboard PRO,如果用它构建了东西,作者很乐意看到。可以给仓库点 Star、提 issue、提交 PR,或者直接分享你的项目。

结语 ​

开发者不应在项目开始的头几天反复重建同样的仪表盘基础。真正有趣的部分是产品、业务逻辑、用户体验,以及你试图解决的问题。Quasar Dashboard PRO 是让这个起点更快的一次尝试。克隆它、定制它,用 Quasar 构建出色的东西。

原文链接 ​

https://dev.to/patrickmonteiro/i-built-a-production-ready-dashboard-template-with-quasar-vue-3-and-typescript-2339