awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
vale-cli avatar

vale-cli/vale

0
View on GitHub↗
5,477 stars·196 forks·Go·MIT·12 viewsvale.sh↗

Vale

Vale is a markup-aware prose linter and command-line interface tool designed to enforce editorial style guides and grammar rules across various document formats. It functions as a YAML-based style guide engine that analyzes text for consistency in tone, spelling, and terminology while ignoring non-prose elements like code blocks.

The project distinguishes itself through a flexible extensibility model that allows users to define custom linting rules using YAML configurations, regular expressions, and external scripts for complex validation logic. It supports a wide array of documentation formats, including Markdown, AsciiDoc, HTML, and Org-mode, often normalizing these inputs via XSLT to apply a unified set of rules.

The tool covers broad capability areas including linguistic evaluation for readability metrics and grammar, dictionary-based spell checking, and terminology management to prevent inconsistent phrasing. It provides integration via the Language Server Protocol for real-time diagnostics in editors, as well as support for CI/CD pipelines and Git hooks to automate prose validation.

Vale can be deployed within a containerized environment using Docker to ensure consistent execution across different platforms.

Features

  • Automated Prose Linting - Checks text files against editorial style guides to ensure consistency in tone, grammar, and spelling.
  • Markdown Prose Analysis - Analyzes text in Markdown files while ignoring code spans and fenced blocks to enforce editorial standards.
  • Prose Linters - Acts as a markup-aware prose linter that enforces editorial style guides while ignoring non-prose elements.
  • YAML Rule Engines - Functions as a YAML-based style guide engine where editorial standards and trigger patterns are defined in external files.
  • Syntactic Prose Analysis - Analyzes text at syntactic levels to apply rules to specific document sections or patterns.
  • Vocabulary Management - Maintains lists of accepted and rejected terms to enforce consistent terminology and casing.
  • Regex Pattern Matching - Uses a regular expression engine with lookaround support to identify stylistic violations in normalized text.
  • Spell and Grammar Checkers - Analyzes written text to correct spelling and stylistic errors using dictionary files.
  • Dictionary-Based Validation - Implements dictionary-based spell checking to enforce language-specific morphological rules and identify typos.
  • AsciiDoc Support - Analyzes prose within AsciiDoc files while ignoring source code blocks and literals.
  • Grammar Rule Enforcement - Analyzes sequences of tokens and metadata to identify and flag grammatical errors.
  • Markup and Structure Parsers - Analyzes structured markup like Markdown and HTML to exclude code snippets and avoid false positives.
  • Custom Editorial Tooling - Enables creation of tailored linguistic rules and vocabulary lists using YAML and regex.
  • Document Quality Validations - Verifies linguistic integrity by checking spelling, repeated words, and readability metrics.
  • Markup To HTML Converters - Normalizes various markup formats into a common HTML representation using XSLT to apply unified linting rules.
  • Prohibited Phrase Detection - Identifies specific words, phrases, or regular expression patterns in text to flag them for editorial review.
  • Prose Linters - Analyzes text files against editorial style guides and returns exit codes based on style violations.
  • Spelling and Language Tools - Checks prose against compatible dictionaries and custom word lists to identify typos.
  • Terminology Mapping - Maps specific words or regular expressions to preferred alternatives to correct inconsistent terminology.
  • Text Pattern Matching - Uses a regular expression engine with lookaround support to identify complex prose patterns.
  • Custom Lint Rule Definitions - Provides an interface for defining prohibited prose patterns and exclusion rules to enforce in-house editorial guidelines.
  • File-Type Style Mappings - Enforces specific editorial rules on files based on their extension or filename patterns.
  • Markup Element Scoping - Applies linting rules to specific document elements like headings and paragraphs based on format.
  • Prose Polishing Tools - Offers a command-line tool for automating prose polishing, style checks, and spelling verification.
  • Editorial Style Engines - Provides a YAML-based engine for defining custom linting rules and terminology constraints.
  • LSP Server Implementations - Implements the Language Server Protocol to provide real-time diagnostics and style suggestions within text editors.
  • Prose Style Guide Enforcers - Applies organization-wide terminology and branding rules to prose across multiple projects.
  • Style Guide Enforcers - Automatically enforces editorial style guides and spelling consistency across various markup formats.
  • YAML Style Guides - Provides a YAML-based engine for defining and enforcing editorial style rules across documents.
  • Prose Block Detection - Identifies and excludes specific sections of prose from linting to prevent false positives in non-prose regions.
  • Comment Markup Support - Treats markup embedded within source code comments as a standalone format for linting.
  • Prose Replacement Suggestions - Provides a list of alternative phrases or words to replace detected style violations.
  • Readability Metric Enforcement - Evaluates prose using readability formulas and triggers alerts when thresholds are met.
  • Scope-Based Content Filtering - Assigns identifiers to document sections to selectively apply or ignore rules based on context.
  • Terminology Consistency Enforcements - Prevents multiple variations of the same word or phrase from appearing in the same scope.
  • Git Hook Automations - Integrates with Git hook frameworks to automate prose style checks before code is committed.
  • Glob-Based Rule Overrides - Applies specific style guides and ignore patterns to files using glob-based path matching.
  • Inline Linting Controls - Controls the execution of style checks within files using inline comment directives.
  • Inline Text Ignoring - Uses regular expressions to exclude specific inline-level text segments from linting.
  • Language Server Protocol Integrations - Provides real-time writing diagnostics and style suggestions directly within a text editor or IDE.
  • LSP Editor Integrations - Implements the Language Server Protocol to provide real-time diagnostics and style suggestions directly in the editor.
  • Configuration Merging Strategies - Combines project-specific settings with global configuration files using specific override and append rules.
  • Technical Writing Workflows - Provides automated enforcement of standardized writing rules within technical documentation workflows.
  • CI/CD Pipeline Integrations - Integrates automated prose checks into build pipelines to prevent style violations in version control.
  • Configuration Distribution and Sharing - Shares editorial rules across projects via hosted packages, external URLs, or local directories.
  • Style Package Installation - Downloads and installs external packages to extend available editorial style guides.
  • Comment Prose Analysis - Analyzes text within code comments across multiple programming languages to ensure prose consistency.
  • Detection Rule Scripting Extensions - Uses embedded scripting to identify complex prose patterns that cannot be captured by standard regular expressions.
  • Prose Fix Generation - Generates suggested corrections for style violations using static replacements or regex transformations.
  • Content Validation Scripts - Executes user-defined scripts for complex content validations that exceed the capabilities of static pattern matching.
  • Document Front-Matter Configurations - Enforces style rules on metadata fields defined in document front-matter blocks using YAML, TOML, or JSON.
  • Editor Text Suggestions - Provides replacement candidates for matched text via dictionary lookups or custom logic scripts.
  • LSP Prose Analyzers - Functions as a language server that provides real-time prose diagnostics and style suggestions.
  • Priority-Based Configuration Merging - Combines global, project, and in-file settings using a predefined priority order to resolve active style rules.
  • HTML Prose Analysis - Analyzes text within HTML files while ignoring non-prose elements like scripts, styles, and code blocks.
  • Prose Validation Logic - Runs user-defined scripts to perform complex content validations that exceed standard pattern matching.

Star history

Star history chart for vale-cli/valeStar history chart for vale-cli/vale

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Vale

Similar open-source projects, ranked by how many features they share with Vale.
  • btford/write-goodbtford avatar

    btford/write-good

    5,074View on GitHub↗

    Write-good is a command-line text analysis tool and English prose linter designed to identify grammatical errors and stylistic weaknesses. It functions as a readability optimization tool that scans documents to identify passive voice and wordy phrases. The system serves as a customizable prose style checker, allowing for the definition of specific language rules and forbidden terms to enforce project-specific writing guidelines. The tool provides capabilities for automated text analysis, style guide enforcement, and technical writing quality improvement. It supports the integration of custom

    JavaScript
    View on GitHub↗5,074
  • amperser/proselintamperser avatar

    amperser/proselint

    4,542View on GitHub↗

    Proselint is a prose linter and rule-based text analyzer designed to identify stylistic errors, clichés, and jargon in written text. It scans documents against a curated registry of linguistic and typographic rules to maintain professional editorial standards and improve writing quality. The project functions as a command line text processor, a programmable analysis library, and a git pre-commit hook. Its modular architecture allows the core engine to be embedded into other applications, exposed via a REST API, or integrated into text editors. The tool supports recursive directory traversal

    JavaScript
    View on GitHub↗4,542
  • kovidgoyal/calibrekovidgoyal avatar

    kovidgoyal/calibre

    24,146View on GitHub↗

    Calibre is a comprehensive suite for digital library management, serving as a centralized hub for organizing, converting, and editing e-book collections. It functions as a multi-purpose platform that combines a relational database for metadata tracking with a powerful processing engine capable of transforming document formats and restructuring internal markup. Beyond local management, the software acts as a content server, enabling users to host their libraries over a network for remote access and reading via standard web browsers. The project distinguishes itself through its deep extensibili

    Pythoncalibreebookebook-formats
    View on GitHub↗24,146
  • languagetool-org/languagetoollanguagetool-org avatar

    languagetool-org/languagetool

    14,597View on GitHub↗

    LanguageTool is a multilingual grammar and style checking engine designed to detect spelling, grammar, and writing errors across multiple languages. It provides automated proofreading capabilities that can be deployed as a self-hosted server or executed as a standalone local desktop application. The project distinguishes itself through a flexible rule development framework, allowing linguistic patterns to be defined via XML or implemented as custom Java classes. It utilizes n-gram frequency modeling for confused word detection and supports neural word embeddings to improve disambiguation betw

    Javagrammarnatural-languagenatural-language-processing
    View on GitHub↗14,597
See all 30 alternatives to Vale→

Frequently asked questions

What does vale-cli/vale do?

Vale is a markup-aware prose linter and command-line interface tool designed to enforce editorial style guides and grammar rules across various document formats. It functions as a YAML-based style guide engine that analyzes text for consistency in tone, spelling, and terminology while ignoring non-prose elements like code blocks.

What are the main features of vale-cli/vale?

The main features of vale-cli/vale are: Automated Prose Linting, Markdown Prose Analysis, Prose Linters, YAML Rule Engines, Syntactic Prose Analysis, Vocabulary Management, Regex Pattern Matching, Spell and Grammar Checkers.

What are some open-source alternatives to vale-cli/vale?

Open-source alternatives to vale-cli/vale include: btford/write-good — Write-good is a command-line text analysis tool and English prose linter designed to identify grammatical errors and… amperser/proselint — Proselint is a prose linter and rule-based text analyzer designed to identify stylistic errors, clichés, and jargon in… kovidgoyal/calibre — Calibre is a comprehensive suite for digital library management, serving as a centralized hub for organizing,… languagetool-org/languagetool — LanguageTool is a multilingual grammar and style checking engine designed to detect spelling, grammar, and writing… terryma/vim-multiple-cursors — This is a Vim plugin that adds simultaneous multi-selection and parallel editing capabilities to the editor. It… automattic/harper — Harper is a local English linter and grammar checker designed as an IDE writing assistant. It operates as a language…