大家好,很高兴又见面了,我是"高级前端进阶",由我带着大家一起关注前端前沿、深入前端底层技术,大家一起进步,也欢迎大家关注、点赞、收藏、转发,您的支持是我不断创作的动力。
1.什么是 EvidenceBusiness intelligence as code: build fast, interactive data visualizations in pure SQL and markdown
Evidence 是一个开源框架,用于使用 SQL 构建数据产品,例如:报告、决策支持工具和面向客户 / 嵌入式报告,是拖放 BI 工具的代码驱动替代方案,总之 Evidence 将现代 Web 框架的最佳部分与 BI 的最佳部分相结合。
Evidence 从 Markdown 文件生成一个网站,Markdown 文件中的 SQL 语句对数据源运行查询,然后使用查询结果渲染图表和组件。Evidence 提供以下突出能力:
代码驱动的工作流程:使用 IDE、版本控制和 CI/CD 工具一流的文本支持:支持为报告添加上下文、解释和见解编程功能:使用 Loop 循环、If/Else 条件和模板化页面从数据生成内容,控制最终展示高性能:Evidence 项目构建到快速可靠的 Web 应用程序中轻量级设置:本地安装并在几分钟内开始构建报告目前 Evidence 在 Github 通过 MIT 协议开源,有 3.2k 的 star,是一个值得关注的前端开源项目。
2.如何使用 Evidence支持从 VSCode Marketplace 安装 Evidence打开命令面板(Ctrl/Cmd + Shift + P)并输入 Evidence: New Evidence Project单击底部状态栏中的 “Start Evidence”:安装所需依赖项并启动 Evidence 服务器;看到一个浏览器窗口自动打开并显示应用程序预览对 Markdown 文件进行更改并保存文件以在浏览器窗口中查看更新当然,开发者还可以利用命令行工具快速开始:
npx degit evidence-dev/template my-projectcd my-projectnpm installnpm run sourcesnpm run devEvidence 支持几乎所有 Markdown 语法,而下面的 Evidence markdown 文件中的代码块用于运行内联查询并返回数据,代码块运行的是 DuckDB SQL 方言。
select date_trunc('month', order_datetime) as order_month, count(*) as number_of_orders, sum(sales) as sales_usdfrom needful_things.ordersgroup by 1, order by 1 desc更多关于 Evidence 的高级用法可以参考文末资料,本文不再过多展开。
参考资料https://github.com/evidence-dev/evidence?tab=readme-ov-file
https://evidence.dev/