npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

adarender

v0.6.69

Published

Ada Render

Downloads

78

Readme

Ada Render

概要

adarender是一个开箱即用markdown渲染器,除了对githubmarkdown语法支持外,它还有一套自己扩展的图表语法。
adarender可以通过命令行或 grpc 服务 2 种方式来渲染页面。

adarender的初衷是提供一套方便的文档输出方案,让用户专注于文档本身,而不需要关注复杂的 css 排版技巧。

adarender适合用于文档或报表输出的渲染步骤。
adarender适用于研发阶段的数据分析中间件的输出模块。

adarender扩展了基本的markdown语法,现在已经支持:

  • 线图
  • 柱形图
  • 饼图
  • treemap
  • sunburst
  • 流程图
  • 类图
  • 居中段落
  • 空行
  • 自动hash图片
  • 商品组件

安装 & 使用

可以通过 npm 安装,然后命令行方式使用。

npm i adarender -g

然后,通过这样来渲染。

adarender exportmd -o samples/output001.html -t samples/template.hbs samples/sample001.md

例子文件在这里。 最后生成的页面如下:

output

作为 markdown-it 的插件使用

npm i adarender --save

因为 adarender 是一系列插件,所以不能用常规的 use 来使用,而是用 registerAllPlugins 来完成注册。

'use strict';

const MarkdownIt = require('markdown-it');
const adarender = require('adarender');

const md = new MarkdownIt({
  highlight: (str, lang) => {
    if (lang && hljs.getLanguage(lang)) {
      try {
        return (
          '<pre class="hljs"><code>' +
          hljs.highlight(lang, str, true).value +
          '</code></pre>'
        );
      } catch (__) {}
    }

    return (
      '<pre class="hljs"><code>' + md.utils.escapeHtml(str) + '</code></pre>'
    );
  }
});

adarender.registerAllPlugins(md, {});

接入hexo

可以直接使用 hexo-renderer-adarender

插件开发

adarender插件分为2部分,一部分是node.js这边的模板解析模块,一部分是前端页面js代码。

node.js这边相对简单,我们其实是将yaml通过一个模板(少量代码),解析成html。
最初选择的模板引擎是handlebars,实际使用中发现这个引擎太过于古老,有非常多的不方便,后来逐步替换为ejs,但这仅仅影响到某些插件,不影响全局。
所以,如果你喜欢,你可以使用其它的任何模板引擎。

前端js代码这边,我们现在代码放在browser目录下,最后会webpack打包到dist目录下,建议通过jsdelivr的cdn访问。
前面node.js用到的html里的js代码,最好能放到browser里开发。
browser目录下代码,可以使用ES6语法。
所有前端需要用到的资源,包括css和js都应该通过webpack打包发布到dist目录下。
如果有必要,可以修改webpack.config.js文件。

开发完以后,通过npm来build。

npm run build

更新记录

v0.6
  • 切换 handlebarsejs
  • 前端项目结构调整,取消public目录。
  • 插件结构微调,例子放独立目录。
v0.5
  • 结构调整,前端js用webpack打包。
  • 各种引用和依赖通过jsdelivr加载。
  • 增加了非 fence rule 的标记处理。
  • 新增Hexo插件。
v0.3
  • 加入Action工作流。
  • 代码会自动发布到npm。
  • 代码会自动发布到DockerHub。
v0.2
  • 支持grpc服务。
  • 提供Docker部署。
  • Golang下的客户端库adacore
v0.1
  • 搭建基本框架。
  • 基本echart插件体系。
  • 支持命令行处理。