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
·
artempyanykh avatar

artempyanykh/marksman

0
View on GitHub↗
3,014 stars·53 forks·F#·mit·10 views

Marksman

Marksman is a Language Server Protocol implementation for Markdown that provides advanced editor features including autocomplete, go-to-definition, and hover support for markdown files. It serves as an analysis engine to manage documentation and knowledge bases through automated link validation and consistent cross-referencing across multiple documents.

The project enables the navigation of complex networks of wiki-style links and headings. It supports content refactoring, allowing users to rename headings and update internal references across multiple files to maintain document integrity during restructuring.

The system provides real-time diagnostics to identify broken internal references and duplicate headings. It utilizes cross-document symbol indexing to resolve links and references across a set of files without scanning every document on every request.

Features

  • Language Server Protocol Implementations - Implements the Language Server Protocol to provide editor intelligence, autocomplete, and go-to-definition for markdown files.
  • Markdown-Based Knowledge Bases - Facilitates navigation of complex networks of wiki-style links and headings within a markdown-based knowledge base.
  • Markdown Abstract Syntax Trees - Implements parsers that transform markdown text into structured abstract syntax trees for precise analysis and refactoring.
  • Document Reference Validation - Detects broken wiki-links and duplicate or ambiguous headings through real-time diagnostics.
  • Markdown Link Resolvers - Resolves cross-references between markdown files to enable navigation via completion, hover, and definition tools.
  • Link Validation & Maintenance - Validates local links and identifies broken internal references in real time to ensure a functional documentation hierarchy.
  • Document Node Modeling - Converts markdown text into a structured node tree to allow precise navigation and modification of content elements.
  • Markdown Documentation Systems - Provides a system for managing large sets of markdown files with automated link validation and cross-referencing.
  • Symbol Indexing - Generates symbol maps for headings and identifiers across multiple files to enable efficient cross-document navigation.
  • Link Refactoring - Provides automated updating of internal document references and symbol renaming to maintain consistency across a document set.
  • Incremental AST Updates - Modifies only the changed branches of the syntax tree to maintain performance during active document editing.
  • Incremental Document Updates - Updates only the modified portions of the internal representation to maintain high performance during active editing.
  • Diagnostic Engines - Triggers real-time validation checks when document content changes to identify broken links or duplicate headings.
  • Diagnostic Pipelines - Triggers validation checks in response to content changes to identify broken links or duplicate headings in real time.

Star history

Star history chart for artempyanykh/marksmanStar history chart for artempyanykh/marksman

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 Marksman

Similar open-source projects, ranked by how many features they share with Marksman.
  • kotlin/kotlin-lspKotlin avatar

    Kotlin/kotlin-lsp

    2,930View on GitHub↗

    kotlin-lsp is a language server implementation that integrates editors with the Kotlin compiler and build tools to provide language intelligence and code analysis. It uses the Language Server Protocol to decouple heavy language processing from the text editor user interface. The project provides static code analysis to detect issues and provide real-time diagnostics. It enables source code navigation through symbol-index based jumping to definitions and an analysis of how components interact. Additional capabilities include automated source code formatting, intelligent code completion, and s

    Kotlin
    View on GitHub↗2,930
  • swiftlang/sourcekit-lspswiftlang avatar

    swiftlang/sourcekit-lsp

    3,871View on GitHub↗

    sourcekit-lsp is a language server protocol implementation and IDE code intelligence backend. It functions as a Swift language server and source code indexer, providing semantic analysis, autocomplete, and navigation features to compatible text editors. The project integrates directly with the Swift toolchain and SourceKit framework to deliver precise type information. It also leverages Clang-integrated parsing to provide semantic analysis for C-family languages, enabling cross-language navigation across project files. The server manages source code indexing and symbol lookups while using a

    Swift
    View on GitHub↗3,871
  • rust-lang/rlsrust-lang avatar

    rust-lang/rls

    3,509View on GitHub↗

    RLS is a language server that provides language intelligence for the Rust programming language. It implements the Language Server Protocol to enable a standardized communication layer between the Rust compiler and various editor clients. The project focuses on providing real-time code completions, symbol navigation, and type information. It also supports automated structural changes, such as workspace-wide symbol renaming, to maintain semantic correctness during refactoring. The system incorporates static code analysis for linting and formatting, alongside a mechanism for incremental compila

    Rustidelanguage-server-protocolrust
    View on GitHub↗3,509
  • foambubble/foamfoambubble avatar

    foambubble/foam

    17,220View on GitHub↗

    Foam is a personal knowledge management system that organizes information into a navigable web of interconnected markdown files. It functions as a knowledge graph tool, utilizing wiki-style bidirectional linking and metadata to track relationships between documents and concepts. By storing data in standard text files, the system ensures long-term portability and compatibility with external tools. The platform distinguishes itself through its integrated visualization and automation capabilities. It generates graphical maps of file connections to help users identify patterns and discover relati

    TypeScriptgraph-visualisationmarkdownmarkdown-editor
    View on GitHub↗17,220
See all 30 alternatives to Marksman→

Frequently asked questions

What does artempyanykh/marksman do?

Marksman is a Language Server Protocol implementation for Markdown that provides advanced editor features including autocomplete, go-to-definition, and hover support for markdown files. It serves as an analysis engine to manage documentation and knowledge bases through automated link validation and consistent cross-referencing across multiple documents.

What are the main features of artempyanykh/marksman?

The main features of artempyanykh/marksman are: Language Server Protocol Implementations, Markdown-Based Knowledge Bases, Markdown Abstract Syntax Trees, Document Reference Validation, Markdown Link Resolvers, Link Validation & Maintenance, Document Node Modeling, Markdown Documentation Systems.

What are some open-source alternatives to artempyanykh/marksman?

Open-source alternatives to artempyanykh/marksman include: kotlin/kotlin-lsp — kotlin-lsp is a language server implementation that integrates editors with the Kotlin compiler and build tools to… swiftlang/sourcekit-lsp — sourcekit-lsp is a language server protocol implementation and IDE code intelligence backend. It functions as a Swift… rust-lang/rls — RLS is a language server that provides language intelligence for the Rust programming language. It implements the… foambubble/foam — Foam is a personal knowledge management system that organizes information into a navigable web of interconnected… npryce/adr-tools — adr-tools is a command-line utility for automating the creation, indexing, and management of architecture decision… codimd/server — This project is a self-hosted note-taking platform and collaborative markdown wiki. It functions as a real-time…