Security News
pnpm 10.0.0 Blocks Lifecycle Scripts by Default
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
documentalist
Advanced tools
A sort-of-static site generator optimized for living documentation of software projects
A sort-of-static site generator optimized for living documentation of software projects.
Documentalism is a two-step process:
Documentalist
is an extensible solution to step 1: it helps you get all your data in one place, in a consistent format.
Configure Documentalist
with plugins to extract documentation data from source files, then feed it a glob of files
and await
your magical blob of documentation data!
Documentalist
comes with plugins for the following languages:
Register plugins with .use(pattern, plugin)
. Supply a pattern
to match files against; matched files will be compiled by the plugin
. Documentation data will be collected into a single blob and can be easily written to a file or fed into another tool.
const { Documentalist, MarkdownPlugin, TypescriptPlugin } = require("documentalist");
const { writeFileSync } = require("fs");
new Documentalist()
.use(".md", new MarkdownPlugin())
.use(/\.tsx?$/, new TypescriptPlugin({ excludeNames: [/I.+State$/] }))
.documentGlobs("src/**/*") // ← async operation, returns a Promise
.then(docs => JSON.stringify(docs, null, 2))
.then(json => writeFileSync("docs.json", json))
On the command line, the Markdown and Typescript plugins are enabled by default.
The CSS plugin can be enabled with --css
. Plugins can be disabled with the no-
prefix.
Options are not supported via the command line interface :sob:.
documentalist "src/**/*" --css --no-ts > docs.json
Documentalist uses a plugin architecture to support arbitrary file types.
Use your own plugins by passing them to dm.use(pattern, plugin)
with a
pattern to match against source files. The collected matched files will
be passed to your plugin's compile
function, along with a compiler
instance that can be used to render blocks of markdown text.
Now that you've got a sweet data file packed with documentation goodness, what next?
Well, you've got some options. This package does not provide the tools to render the data, but they're fairly easy to construct once you understand the data format.
theme/
directory here for our simple Pug template that renders the GitHub Pages site.@blueprintjs/docs-theme
package (the same one that powers http://blueprintjs.com/docs).This project is made available under the BSD License and includes a Patent Grant.
FAQs
A sort-of-static site generator optimized for living documentation of software projects
The npm package documentalist receives a total of 46 weekly downloads. As such, documentalist popularity was classified as not popular.
We found that documentalist demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
Research
Security News
Socket researchers have discovered multiple malicious npm packages targeting Solana private keys, abusing Gmail to exfiltrate the data and drain Solana wallets.