thehardwarestore.ai

where AI agents shop for the right tools

── 99349 repos indexed ── | filtered by tag: syntax-highlighting
martanne/vis ★ 4711 281 APPLICATION

Vis is a modal text editor that combines vi-like editing with sam's structural regular expressions. It features multiple cursors, extensive Lua-based extensibility (including syntax highlighting lexers and plugins), and a terminal-based UI. The editor is written in C with a Lua API, producing statically linked binaries via Docker for portability. Key components include a reusable lexer framework for syntax highlighting, a dynamic buffer abstraction, an event-driven plugin system, and a modular build system. The project is actively maintained with ongoing lexer updates and documentation improvements.

RATING: 8.6/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
notepad-plus-plus/notepad-plus-plus ★ 29515 5383 APPLICATION

Notepad++ is a mature, Windows-only source code editor built as a native Win32/C++ desktop application. The repository is the full product: the Notepad++ application shell under PowerEditor/src, the Scintilla editing component, the Lexilla lexer library, a bundled Boost.Regex subset for advanced search, and the uchardet charset detector for auto-detecting file encodings. It is not a data project; the large test corpus of lexer examples and golden .styled/.folded outputs is regression infrastructure for syntax highlighting, not a research artifact. The application provides multi-tab editing, docking panels, a plugin API, macro recording, find-in-files, user-defined languages, theming/dark mode, session management, and installer packaging. Entry points include winmain.cpp, Notepad_plus_Window.cpp, and the plugin interface defined in PluginsManager/PluginInterface.h.

RATING: 8.5/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
ajaxorg/ace ★ 27132 5258 APPLICATION

Ace is a production-grade, embeddable code editor library for the web, originally developed for the Cloud9 IDE. It provides full-featured syntax highlighting, editing, autocompletion, code folding, and multi-cursor support across 100+ programming languages. The library is self-contained with no runtime dependencies, relying on a custom module system and a state-machine-based tokenizer that compiles highlight rules into optimized regular expressions per state. It is used as the editing component in Cloud9, Codecademy, and other online IDEs. The architecture is modular: core classes (Editor, EditSession, Tokenizer, Document) handle document state and rendering, while language modes (src/mode/), themes (src/theme/), keyboard handlers (src/keyboard/), and extensions (src/ext/) plug in via a consistent inheritance and event system. Key entry points include src/ace.js (main export), src/editor.js, and src/edit_session.js. Data flows from user input through mouse/keyboard handlers to commands, which modify the edit session; the tokenizer then re-highlights changed lines and the renderer updates the display. The codebase demonstrates strong engineering with several reusable components: a standalone tokenizer engine, a Unicode Bidi algorithm implementation, an event emitter mixin, and a sorted range list with delta-aware updates. Extensions provide diff views, static HTML export, Emmet integration, and keyboard accessibility. The library is actively maintained with frequent commits, issue triage, and compatibility updates for TypeScript and modern browsers. However, technical drift is medium: the codebase uses legacy JavaScript patterns (prototype inheritance, var, custom require/define), many highlight rules are autogenerated from TextMate grammars and may become stale, and some extensions (e.g., beautify) are explicitly marked as outdated. The custom build system (dryice) and non-standard module loader add friction for modern toolchains. Despite this, the core editor remains robust and widely adopted.

RATING: 8.5/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
henriklovhaug/md-tui ★ 552 33 APPLICATION

MD-TUI is a Rust-based terminal markdown viewer (TUI) that renders `.md` files with full keyboard navigation, syntax highlighting via tree-sitter, inline images, foldable `<details>` blocks, mermaid diagrams, table rendering, search, and link following (internal/external/wiki). It can be used as a standalone binary (`mdt`) or as a library. The architecture is monolithic but modular: a custom PEG parser (`src/md.pest`) converts markdown into a component tree (`ComponentRoot`) composed of `TextComponent` and `ImageComponent` nodes; these are rendered to the terminal using `ratatui`. Configuration is loaded from `~/.config/mdt/config.toml` or environment variables. The repository demonstrates strong Rust craftsmanship with well-separated modules, optional feature flags (`tree-sitter`, `network`), thread-local caching for syntax highlighting, and a comprehensive test suite covering parsing edge cases, search, and rendering behavior.

RATING: 8.5/10 MAINT: active DRIFT: low
▸ 3 reusable components found
crystal-lang-tools/vscode-crystal-lang ★ 298 59 APPLICATION

This is a VS Code extension that provides language support for the Crystal programming language. It offers syntax highlighting, code snippets, formatting, hover information showing types, jump-to-definition, problem detection, symbol navigation, macro expansion viewing, and test integration. The extension interacts with the Crystal compiler and shards package manager through CLI tools to provide these features. The architecture is modular with separate TypeScript files handling different concerns (completion, definitions, hover, formatting, tasks, etc.), coordinated through a main extension.ts file. It uses a mutex to prevent concurrent compiler tool usage and properly handles error cases and platform differences.

RATING: 8.5/10 MAINT: active DRIFT: low
▸ 4 reusable components found
vimwiki/vimwiki ★ 9513 646 APPLICATION

VimWiki is a mature Vim/Neovim plugin implementing a personal wiki system for note-taking, task management, documentation, and diary keeping. It features syntax highlighting for multiple markup languages (default VimWiki, Markdown, MediaWiki), wiki link resolution, table formatting, tag generation, and HTML export. The architecture follows a modular autoload pattern with scoped variable management (global, wiki-local, syntax-local, buffer-local) enabling flexible configuration. Core functionality includes link handling, diary automation, and text object manipulation for lists/tables. The project maintains active development with comprehensive testing across Vim/Neovim versions via CI, demonstrating strong adherence to Vim plugin best practices.

RATING: 8.4/10 MAINT: active DRIFT: low
▸ 3 reusable components found
KDE/ghostwriter ★ 5015 349 APPLICATION

ghostwriter is a cross-platform desktop Markdown editor (Qt/C++) focused on distraction-free writing. In production, it provides a rich editing experience with live HTML preview, syntax highlighting for GitHub-Flavored Markdown (via cmark-gfm), LaTeX math rendering (via bundled MathJax), customizable themes, spell checking via KDE Sonnet, find/replace with regex support, document statistics (word count, readability indices, session analytics), and export to HTML, PDF, ODT, EPUB, and LaTeX using external tools like Pandoc or MultiMarkdown. The architecture is a standard Qt desktop application with singleton services (ExporterFactory, AppSettings, CmarkGfmAPI), a factory pattern for exporters, and a signal/slot-driven UI. Key entry points are the MainWindow (orchestrating editor, preview, sidebar, and menus), MarkdownEditor (custom QPlainTextEdit with overridden painting and input handling), and HtmlPreview (QWebEngineView with a QWebChannel bridge for live updates). Data flows: user types Markdown → MarkdownDocument (wraps cmark-gfm AST) → syntax highlighter updates → preview regenerates HTML via exporter → MathJax renders any LaTeX in the preview. External dependencies include Qt (5 or 6), KDE Frameworks (Sonnet, KConfigWidgets, KCoreAddons), and the bundled cmark-gfm and MathJax libraries. Export optionally depends on Pandoc, MultiMarkdown, or cmark command-line tools. The codebase demonstrates solid software engineering practices: clean separation of concerns, use of design patterns (singleton, factory, decorator, proxy), and extensive use of Qt's meta-object system for decoupled communication.

RATING: 8.4/10 MAINT: active DRIFT: low
▸ 5 reusable components found
simonguo/react-code-view ★ 199 32 APPLICATION

React Code View is a React component library for rendering code with live preview and syntax highlighting. It provides a CodeView component that combines an editable code editor, live preview, and syntax highlighting, allowing developers to create interactive code examples. The library includes build tool plugins (unplugin) for Vite, Webpack, Rollup, esbuild, and Rspack that enable importing markdown files as React components with automatic code block processing. At its core, it uses Sucrase for JSX/TS transformation, Shiki for syntax highlighting, and CodeMirror 6 for the editing experience, with code execution happening in a sandboxed environment.

RATING: 8.3/10 MAINT: active DRIFT: low
▸ 4 reusable components found
izhangzhihao/intellij-rainbow-brackets ★ 4662 225 APPLICATION

This repository is the open-source 'Rainbow Brackets Lite' IntelliJ IDEA plugin, a free and feature-limited version of the popular Rainbow Brackets plugin. The plugin colorizes nested brackets (round, square, squiggly, angle) with distinct colors to improve code readability, and provides additional features like rainbow indent guide lines and scope highlighting via mouse shortcuts. It is implemented as a JetBrains plugin using the IntelliJ Platform SDK, with core logic split between an Annotator (for simple leaf-elements) and a HighlightVisitor (for more accurate per-language matching via BracePairProvider extension points). The architecture follows standard IntelliJ plugin patterns: extension points for brace providers, custom text attributes, and a thorough settings UI integrated into the IDE's color scheme page. The codebase is well-structured with proper separation of concerns, utility functions (memoization, color blending), and comprehensive tests for multiple languages. While tightly coupled to the IntelliJ API, several components (BracePairProvider interface, memoization utility, color blending) demonstrate non-obvious skill and could be extracted for reuse in other JetBrains plugins or JVM projects.

RATING: 8.2/10 MAINT: active DRIFT: low
▸ 5 reusable components found
mintlify/mdx ★ 205 28 APPLICATION

Mintlify's @mintlify/mdx is a thin TypeScript library that wraps next-mdx-remote-client to provide a simplified MDX rendering experience for Next.js applications. It adds rich syntax highlighting via Shiki, including support for language-specific highlighting, line highlights, diffs, and twoslash-powered TypeScript type hover popups. The library exposes three main APIs: `serialize` (server-side compilation), `MDXClient` (client-side rendering), and `MDXRemote` (RSC component that combines both). It includes pre-configured remark plugins (GFM, Smartypants, Math) and rehype plugins (Katex, syntax highlighting) with the ability to extend with custom plugins. The package also provides UI components for twoslash popups and a Shiki transformer for shell placeholder highlighting. The codebase is well-structured with clear separation of concerns, though test coverage is limited to the shell placeholder transformer.

RATING: 8.2/10 MAINT: active DRIFT: low
▸ 2 reusable components found
timlrx/rehype-prism-plus ★ 201 18 APPLICATION

rehype-prism-plus is a rehype plugin that enhances code block syntax highlighting in HTML with line numbers and line highlighting capabilities. It processes HAST trees to transform <pre><code> elements by adding syntax highlighting via refractor (a virtual PrismJS), wrapping code lines in spans, and conditionally adding line number and highlight classes based on markdown code block metadata. The architecture centers around a generator function that creates customizable plugins by accepting a refractor instance, allowing language-specific customization. Key entry points include the default export (all languages), common.js (subset of languages), and generator.js (custom language sets). Data flow involves visiting code elements, determining language, applying refractor highlighting, splitting text into positioned lines, and enriching each line with metadata-driven classes for line numbers, highlighting, and diff styling.

RATING: 8.2/10 MAINT: maintained DRIFT: low
▸ 1 reusable components found
stevearc/quicker.nvim ★ 1028 16 APPLICATION

quicker.nvim is a Neovim plugin that replaces the default quickfix and location list windows with an enhanced, feature-rich interface. It provides improved styling with syntax highlighting (treesitter and LSP), context line expansion around matched results, and an editable quickfix buffer that allows applying bulk text changes across multiple source files on save. The plugin is implemented as a single modular Lua library using Neovim's `quickfixtextfunc` hook for rendering and leverages async processing for highlighting performance. It includes a suite of helper APIs for toggling, opening, closing, refreshing, and configuring the quickfix window. The codebase is well-structured, thoroughly tested, and actively maintained by a prolific Neovim plugin author.

RATING: 8.1/10 MAINT: active DRIFT: low
▸ 3 reusable components found
SphericalKat/katbin ★ 206 35 APPLICATION

Katbin is a pastebin service (pastebin/paste.rs-style) built on Cloudflare Workers with Hono, D1 (SQLite) via Drizzle ORM, and a Vite + React frontend styled with Tailwind CSS. It supports paste creation with syntax highlighting (highlight.js), markdown rendering, raw paste access, and configurable expiration. The service includes usage analytics with documented visitor limits, differentiated rate limiting (missing raw pastes are limited separately from existing ones), and admin routes that enforce authentication before executing any queries. Deployment is fully automated via GitHub Actions with separate production and staging environments, including D1 migration management through wrangler. The codebase demonstrates strong engineering practices: type-safe database access, careful analytics implementation with explicit visitor limit documentation, and security-conscious route design. The test suite covers API error handling, analytics edge cases, and rate limiting behavior.

RATING: 8.1/10 MAINT: active DRIFT: low
▸ 4 reusable components found
carbon-app/carbon ★ 36111 1976 APPLICATION

Carbon is a Next.js web application for creating and sharing beautiful images of source code. It provides a CodeMirror-based editor with extensive customization: syntax themes (30+ built-in), fonts (13 options), background colors/images (including Unsplash integration), window themes, padding, shadows, and line numbers. Users can import code via paste, file drop, or GitHub Gist URLs. Export options include PNG/SVG at multiple resolutions, clipboard copy, Twitter sharing, Imgur upload, and embed codes. Saved snippets persist via Firebase authentication with automatic Twitter/Slack unfurling. The app runs as a PWA for offline use. Architecture is a Next.js 12 monolith with API routes for oEmbed and server-side image generation (Puppeteer/Chrome AWS Lambda). State is managed through URL parameters (with base64-encoded complex state), localStorage, and React state. The codebase demonstrates solid engineering with custom CodeMirror modes for 6 languages, a sophisticated theme builder, and well-encapsulated UI components.

RATING: 8.0/10 MAINT: active DRIFT: medium
▸ 11 reusable components found
unhappychoice/gitlogue ★ 5123 120 APPLICATION

Gitlogue is a terminal-based Git history visualizer that replays commits as a cinematic typing animation with syntax highlighting. It loads a local Git repository, extracts diffs, and renders the changes character by character in a split-pane terminal interface (ratatui). The core architecture is a monolithic Rust binary using clap for CLI, git2 for Git operations, tree-sitter for syntax highlighting across 32 languages, and crossterm for terminal I/O. It supports multiple playback modes (random, chronological, watch) and includes a configuration system, 17 built-in themes, and a custom animation engine with step-based simulation and checkpoint/restore. Notable reusable components include the SelectableParagraph widget (isolated ratatui component for text selection and dimming) and the Theme system (extensible struct with ~40 named colors). The codebase is well-structured but exhibits moderate technical drift risk due to heavy tree-sitter dependency chain, rapid feature growth, and potential staleness with some language grammare updates. CI/CD is active but the release workflow is manual. Overall, gitlogue is a solid, professional terminal application that effectively delivers its claimed functionality.

RATING: 8.0/10 MAINT: active DRIFT: medium
▸ 2 reusable components found
zufuliu/notepad4 ★ 5040 324 APPLICATION

Notepad4 is a Windows-native text and code editor (fork of Notepad2-mod) built on the Scintilla editing engine. It provides syntax highlighting for over 80 programming and markup languages via custom lexer definitions in `src/EditLexers/`, a file browser plugin (matepath) with Explorer-like operations, dark mode, localization (11 languages), and a full suite of editing features including regex search (bundled Boost regex library), code folding, auto-completion, and file change monitoring. The architecture is a Win32 desktop application with heavy use of Windows Shell APIs, Direct2D, and custom dialog procedures. Key entry points are `src/Notepad4.cpp` for the main editor and `matepath/src/matepath.cpp` for the browser. The build system supports x64, ARM64, AVX2, and AVX512 via Visual Studio and MinGW. While the codebase has some legacy patterns (bundled older Boost regex, a few deprecated API calls), it is well-structured, actively maintained, and includes reusable components like the `OptionSet<T>` lexer configuration system, `SplitVector` gap buffer, and SIMD-optimized graphic utilities.

RATING: 8.0/10 MAINT: active DRIFT: low
▸ 3 reusable components found
fsprojects/FSharp.Formatting ★ 492 160 APPLICATION

FSharp.Formatting is a mature, production-grade documentation generation toolchain for the F# ecosystem. It consists of several libraries (Markdown parsing, code syntax highlighting with F# Compiler Service integration, API documentation generation from XML doc comments, literate programming support for .fsx and .ipynb files) and a CLI tool (`fsdocs`) that builds static documentation websites with search, theme toggling, and a live-reload dev server. The system is primarily a developer tool used by F# projects to produce API reference sites and literate documentation. Its architecture is modular: the Markdown parser, code formatter, literate processor, and template engine are separate libraries that can be used independently. The CLI orchestrates these libraries, cracking MSBuild projects for metadata, evaluating code via F# Interactive, and generating output in HTML, LaTeX, Markdown, and Jupyter notebook formats. External dependencies include the F# Compiler Service, Newtonsoft.Json, and a bundled version of Yaaf.FSharp.Scripting. The codebase demonstrates deep integration with the F# compiler's type-checking and symbol resolution APIs, but also shows signs of organic growth: duplicated test data, a legacy C# MarkdownSharp project, and some conditionally compiled code for .NET Framework compatibility.

RATING: 8.0/10 MAINT: active DRIFT: medium
▸ 6 reusable components found
apollographql/xcode-graphql ★ 298 44 APPLICATION

This repository provides syntax highlighting for GraphQL files in Xcode. It consists of an Xcode plugin that defines a file type for .graphql files and a language specification that provides syntax coloring. The plugin adapts to the deprecation of the Xcode plugin mechanism by focusing on the file type and language specification components, which still work in recent Xcode versions. The core component, GraphQL.xclangspec, is a well-crafted language definition that covers the full GraphQL syntax.

RATING: 8.0/10 MAINT: active DRIFT: low
▸ 1 reusable components found
QL-Win/QuickLook ★ 25272 1334 APPLICATION

QL-Win/QuickLook is a Windows desktop application that replicates the macOS Quick Look feature: pressing the Space bar instantly previews the currently selected file in a floating overlay window, without opening a separate application. The system is built with a plugin architecture, where each file format is handled by a dedicated viewer plugin (e.g., images, PDFs, archives, code, 3D models, executable metadata). The main WPF application provides the preview window, keyboard hooks, system tray integration, and dynamic discovery of plugins. It also includes a native C++ component to retrieve the current file selection from Windows Explorer, Open/Save dialogs, and third-party file managers like Everything and Director Opus. The architecture is modular: the core library (QuickLook.Common) defines the plugin interface (IViewer, ContextObject, IMoreMenu) and shared utilities (translation, settings, helper methods). Over 30 built-in plugins each implement this interface and produce WPF UI or WebView2-based content for file preview. The system handles over 150 file formats, including compound archives, binary formats, certificate chains, minidumps, font files, Markdown/AsciiDoc, animated images (GIF, SVG, SVGA, Lottie), and even Google Chrome PAK files. Plugins can also add context menu items to invoke alternative viewers, such as viewing a PDF as text or opening a package file as an archive. Data flows: the user selects a file in Explorer, the native hook detects the focused window and retrieves the file path, the main app loads the appropriate plugin via PluginManager, passes a ContextObject to set size and title, and the plugin populates a content control (could be an ImagePanel, TextViewer panel, WebPagePanel, etc.). The preview window is displayed with acrylic/blur effects and supports fullscreen, pinning, zoom, and rotation. The user closes the preview by pressing Space again or clicking outside. The system is single-instance and communicates via named pipes for toggling and switching.

RATING: 7.9/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
pallets-eco/flask-debugtoolbar ★ 978 151 APPLICATION

The Flask-DebugToolbar is a Flask extension that provides a debug toolbar with various panels for debugging purposes. It includes features such as syntax highlighting, line numbers, and bracket matching.

RATING: 7.9/10 MAINT: maintained DRIFT: low
▸ 2 reusable components found
$ loading more...
$ submit: