Parse Framework was an initiative designed to provide a universal solution for lexing and parsing various language syntaxes, aiming to simplify the creation of tools like linters, formatters, and compilers. The package reached its last known stable version, `2.5.6`, before development under this name ceased. The project has since been officially deprecated and rebranded as 'Sparser'. Users of `parse-framework` are strongly advised to migrate to the `Sparser` package for ongoing maintenance, feature enhancements, bug fixes, and security updates, as `parse-framework` will not receive any further development. Its effective release cadence is now zero, making `Sparser` the active successor for all parsing-related needs that this framework aimed to address. Its key differentiator was its ambitious goal to be a comprehensive, 'parse everything' solution.
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslnode 18–226 runs
build_error
glibcnode 18–226 runs
build_error
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
For ESM environments. Using `require()` is a common mistake when migrating from CJS or in mixed environments. This package is deprecated; avoid new usage.
import { Parser } from 'parse-framework';
Assuming Lexer was a named export for tokenization utilities. Avoid default imports if it's a named export. This package is deprecated; avoid new usage.
import { Lexer } from 'parse-framework';
If a top-level 'parse' function was provided, it would likely be a named export. Renaming on import (`as ParseFunction`) is good practice to avoid conflicts. This package is deprecated; avoid new usage.
import { parse as ParseFunction } from 'parse-framework';
Demonstrates the historical usage pattern of `parse-framework` with a basic text parsing example, while explicitly highlighting its deprecated status and recommending migration to `Sparser`.
// IMPORTANT: 'parse-framework' is deprecated. Please migrate to 'Sparser'.
// This example demonstrates how 'parse-framework' *might have been used*.
// It is provided for historical context, not for active development.
import { Parser } from 'parse-framework';
// In a real framework, grammar rules and parsing logic would be defined here.
// This is a simplified mock to illustrate potential usage.
class BasicTextParser extends Parser {
constructor() {
super();
console.log('[DEPRECATED] Initializing BasicTextParser from parse-framework.');
}
parse(input) {
if (typeof input !== 'string') {
console.warn('[DEPRECATED] Input is not a string, attempting to coerce.');
input = String(input);
}
// Simulate parsing: split words and analyze basic structure.
const tokens = input.toLowerCase().split(/\s+/).filter(Boolean);
console.log(`[DEPRECATED] Processing input: "${input}"`);
console.log(`[DEPRECATED] Identified tokens: ${JSON.stringify(tokens)}`);
// Return a very basic Abstract Syntax Tree (AST) structure.
return {
type: 'Document',
children: tokens.map(token => ({
type: 'Word',
value: token
})),
tokenCount: tokens.length
};
}
}
async function runDeprecatedParseExample() {
const parser = new BasicTextParser();
const textToParse = "Hello world, this is a test string.";
const result = parser.parse(textToParse);
console.log("[DEPRECATED] Parsing result (simplified AST):", JSON.stringify(result, null, 2));
const numericInput = 12345;
const numericResult = parser.parse(numericInput);
console.log("[DEPRECATED] Parsing numeric input (coerced):", JSON.stringify(numericResult, null, 2));
console.warn("\nWARNING: The 'parse-framework' package is deprecated and no longer maintained. \nPlease transition to its successor, 'Sparser', for all new projects and existing migrations: https://www.npmjs.com/package/sparser");
}
runDeprecatedParseExample();
Upgrade
Version history
Breaking-change detection hasn't run for this library yet.
Audit
Security & dependencies
CVE tracking and dependency tree are planned for a later release.