30 open-source projects similar to reactjs/react-docgen, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best React Docgen alternative.
OpenRewrite is an automated refactoring engine and source-to-source migration framework. It uses a lossless semantic tree parser to represent source code as type-aware trees that preserve original whitespace and formatting, enabling precise and deterministic modifications. The project utilizes a declarative refactoring pipeline where sequences of transformations are defined in YAML to resolve breaking changes and technical debt. It features type-aware pattern matching and cross-language model mapping to apply similar refactoring patterns across different programming languages. The framework
Appledoc is an Objective-C documentation generator and static site generator that parses source code comments to create structured HTML documentation sets. Its primary purpose is to generate professional developer reference guides that adhere to official Apple style documentation. The tool distinguishes itself by integrating directly into the project compilation process via automated build-phase scripts, ensuring that technical guides are updated as code changes. It provides extensive customization through external HTML and CSS templates, as well as a property list configuration system to man
This project is a suite of specialized tools for the implementation of a language server, template parsing, and static type validation of single-file components. It provides a language server and a type checker to deliver consistent intelligence and validation for Vue components across different editors and command-line environments. The tooling utilizes a template parser to transform single-file component structures into virtual code, enabling static analysis and type checking on HTML-like structures. This process allows for the extraction of component metadata regarding props, events, and s
syn is a Rust syntax tree parser and token stream converter. It serves as a toolkit for procedural macro development, providing a framework to parse Rust source code into structured syntax trees for analysis and transformation. The project enables the manipulation of Rust abstract syntax trees through specialized visitor and folder patterns for traversing and mutating nodes. It provides a bidirectional mapping that allows developers to convert token streams into structured trees and print those trees back into tokens for code generation. The library covers a broad range of syntax analysis ca
This project is a static analysis tool and linter for Elixir designed to enforce a unified visual structure across codebases. It serves as a specification for code formatting, naming conventions, and documentation standards. The tool provides a standardized system for casing and prefixes used in files, functions, and variables. It also establishes guidelines for formatting module and function descriptions to ensure consistent technical documentation. The project covers a broad range of code quality areas, including the organization of module layouts, the implementation of commenting patterns
swift-syntax is a library for parsing, manipulating, and generating Swift source code. It provides a source-accurate abstract syntax tree representation of Swift code, acting as a parser, transformer, and code generator. The project serves as the infrastructure for Swift macro development, enabling the expansion and transformation of source code during compilation. It is used to build compiler tooling for static analysis, formatting, and automated refactoring. The system covers a broad range of source analysis capabilities, including the ability to convert source code into structured trees f
The Python Language Server is a backend engine that provides code intelligence, autocompletion, and diagnostics for Python projects. By implementing the standardized Language Server Protocol, it enables consistent development features such as definition navigation, signature help, and documentation lookups across various text editors and integrated development environments. The project functions as a modular framework that utilizes a plugin-based architecture to support third-party extensions. This design allows for the dynamic injection of specialized capabilities, including custom type chec
This project is a backend service that implements the Language Server Protocol to provide IDE-integrated intelligence for PHP development. It functions as a static analysis tool that parses source code to enable advanced editor features, including autocompletion, symbol navigation, and definition resolution. The server distinguishes itself through its ability to operate within isolated containers and remote development environments. By utilizing a virtual file system abstraction and flexible communication protocols, it maintains project-wide symbol indexing and code analysis even when files a
phpDocumentor is a PHP API documentation generator and source code analyzer that transforms PHP files and DocBlocks into structured HTML API references. It functions as a static site generator and an automatic documentation tool designed to synchronize technical documentation with code changes. The project distinguishes itself by acting as a UML diagram generator, producing class and architectural graphs via PlantUML based on source analysis. It also supports technical manual authoring, rendering hand-written guides in Markdown and ReStructuredText alongside the automatically generated API re
Vetur is a Visual Studio Code extension that provides comprehensive language support for Vue single-file components. It parses .vue files into separate template, script, and style regions, then delegates each region to its own language service for independent processing. This architecture enables IntelliSense, type-checking, formatting, and linting across all embedded languages within a Vue file. The extension distinguishes itself through deep integration with Vue's component model. It infers TypeScript types for template expressions by analyzing component props, data, and computed properti
dumi is a static site generator and markdown-based documentation tool specifically designed for software component libraries. It transforms markdown files and source code into structured technical guides and API references. The project distinguishes itself by providing an interactive component playground that renders live, runnable code demos directly in the browser. It includes an automated API reference generator that parses source code to create documentation tables and property descriptions. Additionally, it supports a monorepo documentation workflow with source mapping and hot module rep
This project is a static code analysis tool that functions as a code unit resolver and source code line mapper. It identifies the specific function or method that contains a given line of code by analyzing the structure of source files without executing the program. The utility maps line numbers to their parent code units by examining the organization of source files and identifying the ownership of specific lines. It determines the boundaries of functions and methods through text-based structural parsing and range detection. These capabilities support source code analysis and static analysi
VVDocumenter-Xcode is an IDE documentation workflow tool and automation utility for the Xcode environment. It serves as a documentation generator that automatically creates structured comment blocks for Swift source code by extracting parameters and return values. The tool functions as a commenting assistant that reduces manual typing through the use of a custom trigger sequence. It identifies method signatures and metadata to inject standardized documentation headers directly into the editor. The system covers static source analysis and template-based block generation to ensure a consistent
Oclint is a static analysis engine and extensible linting framework designed for C, C++, and Objective-C source code. It functions as a code quality tool that identifies bugs, code smells, and structural complexities by parsing source code into abstract syntax trees to perform semantic inspection. The project is distinguished by its modular architecture, which supports dynamic plugin loading for custom inspection rules and a pluggable reporter system for exporting analysis findings in multiple formats. It replicates build configurations by reading compiler flags and include paths to ensure th
Albert is a keyboard launcher that opens files, applications, and runs commands by typing search queries into a search bar. It functions as a keyboard-driven workflow tool, enabling users to navigate their file system, launch installed applications, and execute shell commands without touching a mouse. The launcher processes user input through a plugin-based modular architecture, where functionality is extended by dynamically loaded C++ and Python plugins. Queries are dispatched to all enabled handlers in parallel, with results merged and ranked by a combination of match quality and historical
CKEditor 4 is a browser-based WYSIWYG rich text editor that enables users to create and format HTML content directly in the browser. It operates on a plugin-based architecture with a configurable toolbar system, DOM-based content editing, and an event-driven lifecycle, all delivered through a CDN-based distribution model. The editor supports skin-based theming and includes a legacy plugin compatibility layer for backward compatibility. The editor distinguishes itself as a cross-platform framework that integrates natively with Angular, React, Vue, Electron, Android, and iOS environments. It of
Gephi is an open-source desktop application for visualizing and analyzing large-scale network graphs. It provides an interactive platform for exploring complex relational data, combining hardware-accelerated rendering with real-time layout controls and a plugin-based modular architecture. The platform distinguishes itself through its ability to handle networks of up to 100,000 nodes and 1,000,000 edges using a custom OpenGL rendering engine, enabling smooth real-time interaction. It includes a force-directed layout engine with real-time adjustment, a dynamic filter pipeline for selecting node
Xboard is a containerized service orchestrator and management platform. It provides a Docker-based administrative dashboard for monitoring and controlling backend system services and configurations through a unified interface for operators and users. The platform utilizes a modular architecture and a dedicated plugin system, allowing for the registration of custom logic and the extension of core administrative functionality. It includes utilities for legacy data migration to transfer records and configurations from previous versions or alternative implementations into the current system sche
GLPI is an open-source IT asset management platform and helpdesk ticketing system. It provides a centralized engine for handling incidents and service requests with structured workflows, SLA tracking, and service catalog integration, while also managing the full lifecycle of IT assets including hardware, software, and inventory tracking. The platform distinguishes itself through agentless network discovery that scans networks and collects inventory data from devices without requiring installed agents, and a plugin-based modular architecture that extends core functionality through a community-
InkyPi is a digital signage management system designed to schedule and display rotating content and dynamic data across network-connected screens. It functions as a networked display controller and external data integration engine, allowing for the fetching and rendering of third-party plugins, calendars, and news feeds. The system includes a hardware display driver manager that installs and configures model-specific drivers for various electronic paper display controllers. It utilizes a web-based interface for remote configuration, enabling the management of display settings and content upda
This project is a comprehensive library and framework for autonomous mobile robot navigation, providing a suite of geometric, heuristic, and optimization-based algorithms. It enables robots to calculate collision-free global paths and generate smooth, kinematically feasible local trajectories within complex environments. The system is built on a modular plugin architecture that allows developers to integrate and configure custom motion planning algorithms directly into the Robot Operating System. By utilizing a layered spatial representation, the framework aggregates heterogeneous sensor data
PlotJuggler is an interactive time series visualization tool that loads, streams, and renders large datasets using hardware-accelerated OpenGL graphics. It functions as a multi-format data loader, supporting file formats such as CSV, ULog, and ROS bags, and also serves as a live data stream viewer that subscribes to real-time sources via MQTT, WebSockets, ZeroMQ, and UDP. The tool distinguishes itself through a plugin-based extensibility platform that allows users to add custom data sources, file formats, and processing capabilities. It includes a Lua scripting engine for creating custom data
Packer is a machine image builder and multi-platform image orchestrator used to create identical virtual machine images for multiple platforms from a single source configuration. It functions as an infrastructure as code tool, utilizing the HashiCorp Configuration Language to define versioned and reproducible templates for cloud image provisioners. The tool is distinguished by its plugin-based extension model, which allows it to load external binaries for builders and provisioners to support various cloud platforms and virtualization environments. It includes a post-processor pipeline to tran
Cloud Custodian is an open-source rules engine that uses declarative YAML policies to query, filter, and take automated actions on cloud resources for governance and compliance. It functions as a stateless policy execution engine, where each policy evaluation runs as an independent, idempotent operation without maintaining internal state between runs. Policies are defined using a YAML-based domain-specific language that structures rules as a query-filter-action pipeline. The engine supports dry-run validation, allowing users to simulate policy actions against live resources without applying c
OpenClawChineseTranslation is a framework for building conversational assistants that functions as a cross-platform chat gateway. It synchronizes conversational data between multiple external messaging applications and a centralized core, allowing users to interact with an assistant across different platforms. The system utilizes a plugin-based extension architecture to integrate external services such as note-taking and password managers. It features a model-agnostic provider interface, which enables the underlying intelligence to be swapped by selecting different large language model provid
Checkstyle is a Java static analysis tool and linter designed to identify and enforce coding standards and best practices. It functions as a code quality auditor and Javadoc validation tool, checking source code against configurable rulesets to ensure structural and stylistic consistency. The project allows for the creation of custom linting rules by extending a core API to inspect the abstract syntax tree. It further enables specialized validation through the use of XPath expressions to query the syntax tree for specific code patterns and violations. Capability areas include the enforcement
BTCPay Server is a non-custodial payment gateway and invoice manager designed for accepting Bitcoin and other cryptocurrencies directly into a private wallet. It serves as a self-hosted payment infrastructure that allows merchants to manage digital invoicing and storefronts without relying on third-party intermediaries. The system distinguishes itself through a non-custodial wallet architecture that ensures private keys remain on the user's own hardware or server. It integrates the Lightning Network for instant, low-cost transactions and provides a hardware-wallet signing bridge to secure tra
Cerebro is a cross-platform productivity tool and keyboard-driven command palette. It serves as a central search interface and desktop application launcher for finding and initiating the execution of local files, installed software, and web services. The application is an extensible search tool that supports a plugin system, allowing third-party modules to register custom search providers and new functional capabilities. The software covers several capability areas, including local file system navigation and preview, integrated web search, and productivity utilities for natural language mat
This project is a framework for building, manipulating, and analyzing abstract syntax trees. It provides a toolkit for defining, traversing, and validating syntax trees that are compatible with the Mozilla Parser API, serving as a foundation for static code inspection and automated transformation tasks. The library distinguishes itself through a declarative type system that enforces structural integrity across node hierarchies. By wrapping raw syntax nodes in context-aware objects, it enables developers to track parent relationships and ancestor chains without modifying the underlying tree st
Converse.js is an embeddable, self-hosted XMPP chat client that runs entirely in the browser. It communicates with XMPP servers using standard XML stanzas over WebSocket or BOSH transports, and provides end-to-end encryption through the OMEMO protocol with double ratchet algorithm and X3DH key exchange. The client is built on a plugin-based architecture that allows extending core functionality at runtime without modifying the client itself, and uses a DOM-based rendering approach with an event-driven message bus for internal coordination. The client manages message history through XEP-0313 Me