Version 1.0.2
@stackline/nlcst-to-string
nlcst utility to transform a tree to a string
Independent maintenance of nlcst-to-string 3.1.1. Original authors and licenses are retained.
Installation
# Preserve existing imports with an npm alias
npm install nlcst-to-string@npm:@stackline/nlcst-to-string@1.0.2
# Or use the scoped package name in your imports
npm install @stackline/nlcst-to-string@1.0.2Node.js: See compatibility notes. Read the compatibility and maintenance notes before migrating.
Usage and API
@stackline/nlcst-to-string
nlcst utility to transform a tree to a string.
Documentation | npm | Issues | Repository
Current package version: 1.0.2
Why this package?
@stackline/nlcst-to-string is the Stackline-maintained distribution of nlcst-to-string@3.1.1. It is an independent continuation of nlcst-to-string; original authors and licenses remain credited below.
Compatibility
| Item | Value |
|---|---|
| Package | @stackline/nlcst-to-string@1.0.2 |
| API target | nlcst-to-string@3.1.1 |
| Supported Node.js | See supported framework requirements |
| License | MIT |
| Module type | module |
| Main entry | index.js |
| Types | index.d.ts |
| Runtime dependencies | @types/nlcst |
Installation
npm install @stackline/nlcst-to-string
Preserve existing imports and plugin resolution with an npm alias:
npm install nlcst-to-string@npm:@stackline/nlcst-to-string
Usage and API reference
nlcst-to-string
nlcst utility to serialize a node.
Contents
What is this?
This package is a utility that takes nlcst nodes and gets their plain-text value.
When should I use this?
This is a small utility that is useful when you’re dealing with ASTs.
Install
This package is ESM only. In Node.js (version 14.14+ and 16.0+), install with npm:
npm install @stackline/nlcst-to-string
In Deno with esm.sh:
import {toString} from 'https://esm.sh/nlcst-to-string@3'
In browsers with esm.sh:
<script type="module">
import {toString} from 'https://esm.sh/nlcst-to-string@3?bundle'
</script>
Use
import {toString} from '@stackline/nlcst-to-string'
console.log(
toString({
type: 'WordNode',
children: [
{type: 'TextNode', value: 'AT'},
{type: 'PunctuationNode', value: '&'},
{type: 'TextNode', value: 'T'}
]
})
) // => 'AT&T'
API
This package exports the identifier toString.
There is no default export.
toString(value[, separator])
Get the text content of a node or list of nodes.
Prefers the node’s plain-text fields, otherwise serializes its children, and if the given value is an array, serialize the nodes in it.
Parameters
node(NodeorArray<Node>) — node to serialize.separator(string, default:'') — value to delimit each item
Returns
Result (string).
Types
This package is fully typed with TypeScript. It exports no additional types.
Compatibility
Projects maintained by the unified collective are compatible with all maintained versions of Node.js. As of now, that is Node.js 14.14+ and 16.0+. Our projects sometimes work with older versions, but this is not guaranteed.
Contribute
See contributing.md in syntax-tree/.github for
ways to get started.
See support.md for ways to get help.
This project has a code of conduct. By interacting with this repository, organization, or community you agree to abide by its terms.
License
Credits and original authors
- Original project: nlcst-to-string.
- Titus Wormer.
- Kenichiro Murata.
- Copyright (c) 2014 Titus Wormer tituswormer@gmail.com.
- Stackline maintenance: Alexandro Paixao Marques and Stackline contributors.
Original copyright, license notices and contributor acknowledgements remain part of this distribution. Stackline maintenance does not replace authorship of the original work.
Community and Links
Use this repository's issue tracker for reproducible bugs and feature requests. Join r/Stackline for examples, usage questions and release discussions.
Upstream issues and maintenance review
Upstream and maintenance review
This package maintains nlcst-to-string@3.1.1 under the independent @stackline/nlcst-to-string name.
- Source: https://github.com/syntax-tree/nlcst-to-string/tree/6f915c28d57119847086e1e479ae789dcef9f962
- Public npm artifact integrity:
sha512-63mVyqaqt0cmn2VcI2aH6kxe1rLAmSROqHMA0i4qqg1tidkfExgpb0FGMikMCn86mw5dFtBtEANfmSSK7TjNHw==. - Upstream issue evidence checked: 2026-09-29T00:22:11.089670+00:00.
- Original license and author notices are retained.
- The upstream published runtime files and declarations are hash-checked in
.stackline/upstream.json. Any runtime fix is explicitly listed there. - Functional upstream suites run against the source and extracted final package. Development tools were reduced to those used by validation; full source and runtime audits must pass.
- Only direct dependencies of the original Stackline portfolio are in this migration. This is not a claim that all transitive projects are maintained by Stackline.
Issue triage
The queried open-issue list contained no issue entries. This does not establish that the upstream is abandoned or bug-free. No runtime bug fix is claimed for this initial maintenance release.
The evidence query fetched the latest 100 open and 30 closed issue/PR entries and removed PRs. Closed entries were collected for context; this report does not claim an exhaustive historic review.
Release discipline
The source commit, passing CI and CodeQL, reviewed CI tarball hash, npm provenance, normal and aliased installs, and immutable GitHub release are checked before a release is complete. Published versions and tags are never replaced.
Release changes
Changelog
1.0.0
- Start Stackline maintenance of the documented upstream API.
- Preserve and verify published runtime files and TypeScript declarations.
- Run upstream functional suites against both source and the final package.
- Publish the reviewed CI artifact through GitHub Actions with provenance and immutable release evidence.
Release files and references
Package bytes, npm provenance and the immutable GitHub release were verified for this version. Security checks describe the reviewed release; documented compatibility risks and upstream reports are not blanket claims of resolution.