30 open-source projects similar to yosyshq/yosys, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Yosys alternative.
Chisel is a hardware construction language and description tool used to define digital circuits. It functions as a generator that converts high-level hardware descriptions into synthesizable Verilog code for use in ASIC and FPGA design. The project enables the creation of parameterizable hardware templates and reusable digital components. It leverages functional and object-oriented programming patterns to transform complex circuit representations into finalized hardware descriptions. The toolset covers the register-transfer level design workflow, allowing users to model digital circuits usin
Digital is a digital logic circuit simulator and hardware design verification tool. It provides a visual environment for designing, testing, and verifying electronic circuits using event-based simulation and automated logic synthesis. The platform functions as a logic synthesis tool that applies boolean algebra to minimize gate configurations and convert truth tables into efficient hardware. It also serves as an HDL export tool, translating visual circuit graphs into VHDL or Verilog code, and as a CPLD deployment tool that generates JEDEC files for flashing programmable logic chips. The soft
Logisim Evolution is a digital logic simulator and schematic editor used for designing and verifying digital circuits. It functions as a tool for digital circuit design and real-time logic simulation, allowing users to create schematic representations of electronic hardware using gates and registers. The software distinguishes itself by providing hardware description language tools that allow for the definition of custom component behavior and the translation of visual schematics into synthesis-ready code for FPGA hardware deployment. It also serves as a bridge for physical hardware integrati
GHDL is a compiler and simulator for VHDL hardware descriptions. It functions as a multi-pass analysis elaborator that resolves design hierarchies and dependencies to prepare hardware descriptions for simulation or synthesis. The project transforms VHDL source code into executable binaries for high-speed digital design verification and serves as a synthesis tool that converts descriptions into structural netlists compatible with vendor or open-source flows. It also implements the Language Server Protocol to provide static analysis, autocomplete, and code navigation for VHDL files. The toolse
Sway is a smart contract development language and programming environment designed for writing, compiling, and deploying secure blockchain programs. It serves as a type-safe language for building on-chain logic and a static analysis toolchain that validates contracts before they are executed on a network. The ecosystem provides a development environment focused on blockchain application logic and web3 backend engineering. It integrates a type-safe programming approach to reduce vulnerabilities and ensure reliable state transitions for decentralized services. The toolchain incorporates static
Digital-Logic-Sim is a digital logic simulator and interactive circuit designer used for building and simulating digital hardware circuits. It functions as a visual editor and logic state visualizer that allows for the creation of complex digital logic models using logic gates, wires, and custom chips. The system includes a custom logic chip builder, enabling the grouping of basic logic gates into reusable components to create layered hardware architectures. Users can monitor these designs through a logic state visualizer that displays signal states and memory values using light indicators an
atopile is an electronic design automation software and hardware description language that enables the definition of electronic circuits and components as code. It functions as a modular electronics framework and a compiler that transforms programmatic circuit definitions into a normalized model and KiCad project files for physical layout. The system distinguishes itself through automated hardware design automation, using a constraint-based value solver to calculate required component values and validate electrical specifications during the build process. It employs a modular approach to hard
Lean 4 is a functional programming language and interactive proof assistant used to formalize mathematics and verify software correctness. It functions as a dependent type theorem prover and a formal verification tool that allows users to construct mathematical proofs and ensure program correctness. Additionally, it serves as a logic-based source for generating verified datasets used to train and benchmark artificial intelligence reasoning systems. The system distinguishes itself through a small-kernel verification model, where all proofs are verified by a trusted core of basic logical rules.
Coq is an interactive theorem prover and proof assistant used for formal mathematical verification and verified software development. It utilizes the Gallina functional language to define computable functions and logical propositions, which are then verified through a machine-checked kernel. The system employs a dependent type system and a Caldicott-style proof engine to automate proof search and tactic execution. These capabilities allow for the creation of formal specifications and the development of algorithms that are mathematically proven to meet specific requirements. The toolset inclu
Kani is a formal verification tool and model checker for Rust. It functions as a bit-precise static analyzer that mathematically proves the correctness and memory safety of code by exhaustively analyzing program states to identify undefined behavior, panics, and logic errors. The tool identifies bugs by producing concrete counterexamples when program assertions or safety contracts are violated. It enables the definition of function contracts through preconditions and postconditions to verify that inputs and outputs match expected behavior. The system provides capabilities for Rust program an
Ring is a low-level cryptographic primitive library and security toolset designed for building portable, secure applications. It provides a collection of implementations for RSA, elliptic curve cryptography, and authenticated symmetric encryption. The project focuses on constant-time cryptography to prevent secret data from leaking through timing side-channel attacks. It utilizes a formal verification tool that generates arithmetic logic from templates, ensuring mathematical correctness and eliminating manual implementation errors. The library includes capabilities for producing cryptographi
This project consists of technical instructional guides and a structured computer science curriculum designed to teach the construction of a full computing stack from transistors up to a web browser. It provides a 12-week educational course that covers the fundamental domains of computer architecture and digital logic design. The curriculum is distinguished by its first-principles approach, guiding the learner through the engineering of CPUs, FPGAs, and PCBs using digital logic and hardware description languages. It includes specific syllabi for building a hardware design, a TCP/IP network st
Ikos is a formal verification suite and static analysis framework designed to prove the absence of undefined behaviors and runtime errors in C and C++ source code. It functions as an abstract interpretation tool that approximates program execution to identify potential crashes and software defects. The system utilizes a compiler front-end to translate source code into a specialized abstract representation. This process decouples language parsing from the analysis logic, allowing the framework to perform deep program analysis via a formal verification system. The toolkit covers several analys
Aria2 is a multi-protocol command-line download manager designed to maximize bandwidth utilization by retrieving files from multiple sources and protocols simultaneously. It functions as an asynchronous, event-driven engine that handles complex download lifecycles, including peer-to-peer transfers via BitTorrent, while ensuring data integrity through continuous chunk-based verification. The utility distinguishes itself through its ability to act as a background process that can be controlled programmatically via a remote procedure call interface. This allows external applications to manage, m
Django REST Framework is a toolkit for building standards-compliant web services that map complex data models to structured HTTP responses. It provides a modular architecture for handling the request lifecycle, including authentication, permission checks, and content negotiation. The framework is designed to facilitate the development of robust APIs by transforming complex data types into native formats and validating incoming request payloads against defined schemas. The project distinguishes itself through a highly modular, class-based design that allows developers to build complex views an
This project is a comprehensive, curated directory of static analysis, linting, and security scanning utilities. It serves as a central resource for developers to discover, compare, and select tools based on specific programming languages, licensing models, and integration requirements. The directory distinguishes itself by providing deep metadata for each listed utility, including community-driven popularity rankings, maintenance status, and deployment methods. By aggregating these tools into a single searchable index, it enables teams to identify solutions for enforcing coding standards, ma
picorv32 is a size-optimized RISC-V CPU core and synthesizable processor IP designed for integration into FPGA and ASIC hardware designs. It serves as an open-source CPU architecture and embedded system-on-chip component that implements a standard RISC-V instruction set. The design features a modular architecture that allows for the integration of external coprocessors to implement custom non-branching instructions. It includes a parameterized integer unit with configurable multiplication and division cores to balance performance against total logic gate count. The project covers a broad ran
This project is an agentic development framework and autonomous software engineering system. It utilizes a coordinated network of specialized LLM agents to automate the full software development lifecycle, from codebase exploration and architectural planning to implementation and automated refactoring. The system is distinguished by an agentic memory system and a test-driven development orchestrator. It maintains project continuity across sessions by capturing architectural learnings and state in a persistent semantic database and enforces code quality through an automated cycle of generating
Vyper is a security-focused, typed programming language and compiler designed for creating smart contracts that execute on the Ethereum Virtual Machine. It utilizes a Pythonic syntax to define contract logic and state, serving as a target for formal verification to allow for machine-checked proofs of correctness. The language distinguishes itself through strict architectural constraints that prioritize predictability and security. It enforces acyclic call graphs by prohibiting recursion and mandates bounded loops to ensure static gas prediction. Additionally, it features a native fixed-point
DSPy is a declarative programming framework designed for building complex language model applications. It treats model interactions as modular, composable programs, allowing developers to define task logic through typed class schemas rather than relying on manually written prompts. By organizing workflows into hierarchical, reusable Python objects, the framework enables the construction of sophisticated AI systems that manage state and execution flow independently. The framework distinguishes itself through an automated optimization engine that iteratively refines prompt instructions and few-
darkriscv is a collection of tools and projects for RISC-V processor implementation, hardware debugging, and automated FPGA synthesis. It provides a hardware design that implements a RISC-V processor core and system components for deployment on programmable logic. The project includes a hardware debugger with a command-line interface for verifying processor state by manipulating registers and dumping memory on a hardware target. It also features a set of scripts and project files to automate the synthesis and programming of hardware designs within a Linux environment. The codebase covers har
This project is a quantum computing educational resource and implementation library. It provides a collection of interactive notebooks and guides designed for learning quantum programming, developing algorithms, and simulating quantum circuits. The resource includes tutorials for implementing standard quantum algorithms and creating custom circuit passes. It specifically covers quantum hardware control, providing instructions on scheduling raw microwave or laser pulses to implement precise gates at the physical layer. The materials cover the broader surface of quantum circuit design, includi
Modernizr is a browser feature detection library that determines which web technologies are supported by a user's browser by executing small snippets of code to verify actual capabilities. By avoiding reliance on unreliable user-agent strings, it provides a reliable foundation for progressive enhancement, allowing developers to build interfaces that adapt their functionality and styling based on the specific features available in the client environment. The project distinguishes itself through a configuration-driven build system that generates custom, minimized JavaScript files containing onl
MediaCrawler is an automated web scraping framework designed to extract public posts, comments, and creator metadata from various social media platforms. It functions as a headless browser automator, utilizing real browser instances to render dynamic content and execute the client-side scripts necessary for interacting with modern web interfaces. The system distinguishes itself through a focus on session persistence and network flexibility. It supports remote debugging to reuse active browser sessions and cookies, which helps minimize the risk of triggering platform security challenges. To ma
This project is a command-line task runner designed to manage project-specific workflows through a centralized, configuration-driven interface. It functions as a declarative tool for organizing build logic, environment variables, and task dependencies into a structured format, enabling the automation of complex development pipelines. The tool distinguishes itself by providing a shell-agnostic execution layer that ensures consistent behavior across Windows, macOS, and Linux. It supports advanced workflow orchestration by constructing directed acyclic graphs to manage task prerequisites, while
Nushell is a cross-platform shell and programming language designed to treat all input and output as structured data rather than raw text streams. By enforcing data types and command signatures, it provides a consistent environment for building robust, pipeline-oriented workflows. The shell allows users to chain commands that pass structured objects between stages, enabling complex data processing and automation tasks that remain predictable across different operating systems. What distinguishes the project is its focus on interactive data exploration and modular extensibility. Users can quer
Expo is a universal mobile framework designed to build native iOS and Android applications from a single codebase using web-standard technologies. It provides a comprehensive development environment that includes a unified runtime for testing, cloud-based infrastructure for compiling and signing native binaries, and automated tools for managing the entire mobile release lifecycle, including app store submission. The framework distinguishes itself through a plugin-based native configuration engine that programmatically modifies project files, allowing developers to integrate native modules wit
Airflow is a platform for programmatically authoring, scheduling, and monitoring complex data pipelines. It functions as a workflow automation engine that manages the lifecycle of recurring business processes by executing code-defined task dependencies. By representing workflows as directed acyclic graphs, the system ensures that task execution order and data flow are explicitly defined and reliably maintained across distributed computing environments. The platform distinguishes itself through a highly modular, provider-based architecture that decouples core orchestration logic from external
This project is a comprehensive, community-driven directory of software resources, libraries, and frameworks for the Java programming language. It serves as a centralized knowledge base designed to help developers discover tools and industry-standard solutions for building and maintaining software applications. The repository distinguishes itself through a hierarchical taxonomy that organizes a vast array of technical components into a structured, navigable tree. By relying on distributed peer contributions, the index remains a living resource that reflects current community-recommended pract