Open Source Haskell Software Development Software

Haskell Software Development Software

View 6284 business solutions

Browse free open source Haskell Software Development Software and projects below. Use the toggles on the left to filter open source Haskell Software Development Software by OS, license, language, programming language, and project status.

  • Earn up to 16% annual interest with Nexo. Icon
    Earn up to 16% annual interest with Nexo.

    Access competitive interest rates on your digital assets.

    Generate interest, borrow against your crypto, and trade a range of cryptocurrencies — all in one platform. Geographic restrictions, eligibility, and terms apply.
    Get started with Nexo.
  • Ship Agents Faster Icon
    Ship Agents Faster

    Transform your applications and workflows into powerful agentic systems at global scale.

    Gemini Enterprise Agent Platform lets you rapidly build, scale, govern and optimize production-ready agents grounded in your organization's data. The platform enables developers to build custom or pre-built agents for virtually any use case. New customers get $300 in free credits.
    Start Free
  • 1
    Echidna

    Echidna

    Ethereum smart contract fuzzer

    Echidna is a weird creature that eats bugs and is highly electrosensitive (with apologies to Jacob Stanley) More seriously, Echidna is a Haskell program designed for fuzzing/property-based testing of Ethereum smarts contracts. It uses sophisticated grammar-based fuzzing campaigns based on a contract ABI to falsify user-defined predicates or Solidity assertions. We designed Echidna with modularity in mind, so it can be easily extended to include new mutations or test specific contracts in specific cases. Optional corpus collection, mutation and coverage guidance to find deeper bugs. Powered by Slither to extract useful information before the fuzzing campaign. Source code integration to identify which lines are covered after the fuzzing campaign. Curses-based retro UI, text-only or JSON output.
    Downloads: 32 This Week
    Last Update:
    See Project
  • 2
    erd

    erd

    Translates a plain text description of a relational database schema

    erd is a Haskell-based command-line tool that transforms a plain-text description of a relational database schema into a graphical entity-relationship diagram using common ER conventions. This utility takes a plain text description of entities, their attributes and the relationships between entities and produces a visual diagram modeling the description. The visualization is produced by using Dot with GraphViz. There are limited options for specifying color and font information. Also, erd can output graphs in a variety of formats, including but not limited to: pdf, svg, eps, png, jpg, plain text and dot. In case one wishes to have a statically linked erd as a result, this is possible to have by executing build-static_by-nix.sh: which requires the nix package manager to be installed on the building machine. NixOS itself is not a requirement.
    Downloads: 12 This Week
    Last Update:
    See Project
  • 3
    FOSSA CLI

    FOSSA CLI

    Fast, portable and reliable dependency analysis for any codebase

    FOSSA CLI is a command-line tool that scans your codebase to identify open-source dependencies and their associated licenses and vulnerabilities. It integrates into CI/CD pipelines to provide automated compliance checks, license audits, and security analysis. Designed for enterprise software teams, FOSSA CLI helps enforce open-source policies at scale and provides accurate, automated insights into third-party software usage through deep analysis of transitive dependencies and ecosystem-specific configurations.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 4
    ShellCheck

    ShellCheck

    A static analysis tool for shell scripts

    ShellCheck is a GPLv3 tool that provides warnings and possible suggestions for bash/sh shell scripts. ShellCheck finds bugs in your shell scripts. You can cabal, apt, dnf, pkg or brew install it locally right now. ShellCheck highlights and clarifies typical beginner's syntax mistakes and issues that cause a shell to give a cryptic error message. It shows typical intermediate level semantic problems that cause a shell to behave in a abnormally and counter-intuitively. It can also discover ssubtle caveats, corner cases and pitfalls that may cause an user's working script to fail under probable future circumstances. ShellCheck.net is always synchronized to the latest git version, and is the simplest way to give ShellCheck a go.
    Downloads: 6 This Week
    Last Update:
    See Project
  • Demo Series - Small Business Backup By Veeam Icon
    Demo Series - Small Business Backup By Veeam

    Learn how to protect your Microsoft 365 data, with simple, actionable tips today.

    Watch this on-demand demo series and learn how to protect your Microsoft 365 data with clear, simple, actionable steps that are easy to implement for businesses of all sizes.
    Watch Demo Series
  • 5
    Clash

    Clash

    Haskell to VHDL/Verilog/SystemVerilog compiler

    Clash is a functional hardware description language that borrows both its syntax and semantics from the functional programming language Haskell. It provides a familiar structural design approach to both combinational and synchronous sequential circuits. The Clash compiler transforms these high-level descriptions to low-level synthesizable VHDL, Verilog, or SystemVerilog. Clash is an open-source project, licensed under the permissive BSD2 license, and actively maintained by QBayLogic. The Clash project is a Haskell Foundation affiliated project. Clash is built on Haskell which provides an excellent foundation for well-typed code. Together with Clash's standard library it is easy to build scalable and reusable hardware designs. Load your designs in an interpreter and easily test all your component without needing to setup a test bench. Although Clash offers many features, you sometimes need to directly access VHDL, Verilog, or SystemVerilog directly.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 6
    Ormolu

    Ormolu

    A formatter for Haskell source code

    Ormolu is a formatter for Haskell source code. Using GHC's own parser to avoid parsing problems caused by haskell-src-exts. Let some whitespace be programmable. The layout of the input influences the layout choices in the output. This means that the choices between single-line/multi-line layouts in certain situations are made by the user, not by an algorithm. This makes the implementation simpler and leaves some control to the user while still guaranteeing that the formatted code is stylistically consistent. Writing code in such a way so it's easy to modify and maintain. Implementing one “true” formatting style which admits no configuration. The formatting style aims to result in minimal diffs. Choose a style compatible with modern dialects of Haskell. As new Haskell extensions enter broad use, we may change the style to accommodate them. Idempotence: formatting already formatted code doesn't change it.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 7
    Reflex

    Reflex

    Interactive programs without callbacks or side-effects

    Reflex apps automatically react to changing data. This keeps every interaction current, accurately representing the relationship between your data and the real world. Reflex components are modular and reusable. If your requirements change, your app can quickly and easily be reworked. The modularity of Reflex lets you iterate quickly, without wasting code. Reflex has been built to seamlessly support interfaces on desktop, mobile, web, and other platforms, all in Haskell. Regardless of your platform needs, Reflex lets you take your team and your code with you. Reflex is the key to writing self-updating user interfaces. Develop efficiently no matter how many times you pivot. One team, one code base, every platform. You don’t have to choose between building quickly or sustainably anymore. Reflex-FRP allows you to write production quality code from the get-go, with less technical debt.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 8
    Kitten

    Kitten

    A statically typed concatenative systems programming language

    Kitten is an experimental, concatenative programming language that blends Forth/Joy-style stack programming with modern static typing and effect tracking. Programs are composed by chaining small words that transform a typed stack, and the compiler uses type inference to ensure compositions are valid. The language explores disciplined handling of side effects, aiming to separate pure transformations from operations that perform I/O or mutate state. Its design encourages small, reusable building blocks that compose cleanly, while still permitting low-level control where performance matters. The implementation targets efficient compiled code and investigates how advanced type systems can improve reliability in a stack-based language. As a research project, Kitten serves both as a language to experiment with and as a vehicle for ideas about safety and structure in concatenative programming.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 9
    Stack

    Stack

    The Haskell Tool Stack

    Stack is a cross-platform build tool for Haskell projects that simplifies dependency management, project setup, and reproducible builds. It provides curated package sets (Stackage), isolated project environments, and consistent tooling for compiling and testing Haskell applications. Stack streamlines workflows for developers by automating many parts of the Haskell toolchain, making it easier to get started and maintain complex codebases. It supports integration with GHC (Glasgow Haskell Compiler) and Hackage.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 99.99% Uptime for MySQL and PostgreSQL Databases Icon
    99.99% Uptime for MySQL and PostgreSQL Databases

    Sub-second maintenance. 2x read/write performance. Built-in vector search for AI apps.

    Cloud SQL Enterprise Plus delivers near-zero downtime with 35 days of point-in-time recovery. Supports MySQL, PostgreSQL, and SQL Server.
    Start Free
  • 10
    Cabal

    Cabal

    Upstream development repository for Cabal and cabal-install

    Cabal is a system for building and packaging Haskell libraries and programs. It defines a common interface for package authors and distributors to easily build their applications in a portable way. Cabal is part of a larger infrastructure for distributing, organizing, and cataloging Haskell libraries and programs. The term cabal can refer to either: cabal-the-spec (.cabal files), cabal-the-library (code that understands .cabal files), or cabal-the-tool (the cabal-install package which provides the cabal executable); usually folks are referring to cabal-the-tool when they say cabal. To install the cabal executable you can use ghcup (if you're using Linux), the Haskell Platform, install the cabal-install package from your distributions package manager (if using Linux or Mac), or download the source or prebuilt binary from the Download page.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 11
    Haskell Dockerfile Linter

    Haskell Dockerfile Linter

    Dockerfile linter, validate inline bash, written in Haskell

    A smarter Dockerfile linter that helps you build best practice Docker images. The linter parses the Dockerfile into an AST and performs rules on top of the AST. It stands on the shoulders of ShellCheck to lint the Bash code inside RUN instructions. You can run hadolint locally to lint your Dockerfile. You can download prebuilt binaries for OSX, Windows and Linux from the latest release page. However, if this does not work for you, please fall back to container (Docker), brew or source installation. Configuration files can be used globally or per project.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 12
    Hasura GraphQL Engine

    Hasura GraphQL Engine

    Blazing fast, instant realtime GraphQL APIs on your DB

    Hasura is an open-source product that accelerates API development by 10x by giving you GraphQL or REST APIs with built-in authorization on your data, instantly. Run Hasura, locally or in the cloud, and connect it to your new or existing databases to instantly get a production-grade GraphQL API. Developers and architects love Hasura because it takes no time to get started, doesn’t need them to be a GraphQL expert upfront, and saves their teams months of recurring effort in building, shipping, and maintaining their APIs. Hasura’s built-in RLS style authorization engine allows you to conveniently specify authorization rules at a model level, and safely expose the GraphQL API to developers inside or outside your organization. Hasura’s authz engine is enabling agile teams in fast-growing startups as well as powering mission-critical data access in highly regulated environments such as Fortune 500 healthcare, financial services and US federal agencies.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 13
    Polysemy

    Polysemy

    Higher-order, no-boilerplate monads

    Polysemy is a high-performance, zero-boilerplate effect system for Haskell, designed to simplify the handling of side effects in functional programs. Unlike traditional monad transformer stacks, Polysemy uses a modern approach based on freer monads and interpreters, allowing developers to define, compose, and interpret effects in a more modular and testable way. It aims to offer both flexibility and performance without sacrificing type safety or expressiveness.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 14
    koka

    koka

    Koka language compiler and interpreter

    Koka is a strongly typed functional-style language with effect types and handlers. The core of Koka consists of a small set of well-studied language features, like first-class functions, a polymorphic type- and effect system, algebraic data types, and effect handlers. Each of these is composable and avoid the addition of “special” extensions by being as general as possible. Koka tracks the (side) effects of every function in its type, where pure and effectful computations are distinguished. The precise effect typing gives Koka rock-solid semantics backed by well-studied category theory, which makes Koka particularly easy to reason about for both humans and compilers. Effect handlers let you define advanced control abstractions, like exceptions, async/await, or probabilistic programs, as a user library in a typed and composable way. Perceus is an advanced compilation method for reference counting.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 15
    Archive of Formal Proofs

    Archive of Formal Proofs

    A collection of machine-checkend mathematical proofs

    The Archive of Formal Proofs is a collection of proof libraries, examples, and larger scientifc developments, mechanically checked in the theorem prover Isabelle. It is organized in the way of a scientific journal. Submissions are refereed.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 16
    Agda

    Agda

    Agda is a dependently typed programming language

    Agda is a dependently typed, total functional programming language and interactive theorem prover based on Martin-Löf’s type theory. It allows expressing programs and proofs in the same language, using the Curry–Howard correspondence. It features interactive development via Emacs, Atom, or VS Code. Agda is a dependently typed functional programming language. It has inductive families, i.e., data types which depend on values, such as the type of vectors of a given length. It also has parametrised modules, mixfix operators, Unicode characters, and an interactive Emacs interface which can assist the programmer in writing the program. Agda is a proof assistant. It is an interactive system for writing and checking proofs. Agda is based on intuitionistic type theory, a foundational system for constructive mathematics developed by the Swedish logician Per Martin-Löf. It has many similarities with other proof assistants based on dependent types, such as Coq, Epigram, Matita and NuPRL.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 17
    BSC

    BSC

    Bluespec Compiler (BSC)

    BSC is the open source compiler toolchain for Bluespec SystemVerilog, a high-level, rule-based hardware design language. It translates Bluespec descriptions into synthesizable Verilog, letting developers bring typed, modular abstractions into mainstream FPGA/ASIC flows. The compiler performs scheduling of atomic rules, elaborates parameterized modules, and enforces interface contracts, producing predictable RTL that integrates with existing EDA tools. A companion simulator enables fast functional execution and debugging before handing designs to traditional verification and synthesis stages. The ecosystem includes standard libraries, FIFOs, interfaces, and utilities that encourage reuse and clean separation of datapaths and control. By raising the abstraction for hardware architecture while preserving efficient output, BSC helps teams explore complex designs—such as RISC-V cores or accelerators—more productively.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 18
    Brick

    Brick

    A declarative Unix terminal UI library written in Haskell

    Brick is a Haskell terminal user interface (TUI) programming toolkit that enables developers to build rich, responsive terminal applications via a declarative model: you define a pure function that renders the UI from application state and supply state transition logic to handle events. brick exposes a declarative API. Unlike most GUI toolkits which require you to write a long and tedious sequence of widget creations and layout setup, brick just requires you to describe your interface using a set of declarative layout combinators. Event-handling is done by pattern-matching on incoming events and updating your application state. Under the hood, this library builds upon vty, so some knowledge of Vty will be necessary to use this library. Brick depends on vty-crossplatform, so Brick should work anywhere Vty works (Unix and Windows). Brick releases prior to 2.0 only support Unix-based systems.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 19
    Dapp tools by DappHub

    Dapp tools by DappHub

    Dapp, Seth, Hevm, and more

    Command line tools and smart contract libraries for Ethereum smart contract development. All you need Ethereum development tool. Build, test, fuzz, formally verify, debug & deploy solidity contracts. Ethereum CLI. Query contracts, send transactions, follow logs, slice & dice data. Testing-oriented EVM implementation. Debug, fuzz, or symbolically execute code against local or mainnet state. Sign Ethereum transactions from a local keystore or hardware wallet. dapptools is currently in a stage of clandestine development where support for the casual user may be deprived. The software can now be considered free as in free puppy. Users seeking guidance can explore using foundry as an alternative. This repository contains the source code for several programs hand-crafted and maintained by DappHub, along with dependency management, courtesy of Nix.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 20
    Elm

    Elm

    Compiler for Elm, a functional language for reliable webapps

    Elm uses type inference to detect corner cases and give friendly hints. NoRedInk switched to Elm about four years ago, and 300k+ lines later, they still have not had to scramble to fix a confusing runtime exception in production. The compiler guides you safely through your changes, ensuring confidence even through the most wide-reaching refactorings in unfamiliar codebases. Including your own, six months later. All Elm programs are written in the same pattern, eliminating doubt and lengthy discussions when deciding how to build new projects and making it easy to navigate old or foreign codebases. Enjoy Elm's famously helpful error messages. Even on codebases with hundreds of thousands of lines of code, the compilation is done in a blink. Elm has its own virtual DOM implementation, designed for simplicity and speed. All values are immutable in Elm, and the benchmarks show that this helps us generate particularly fast JavaScript code.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 21
    Fay

    Fay

    A proper subset of Haskell that compiles to JavaScript

    Fay is a compiler for a proper subset of Haskell that type-checks using GHC and compiles to JavaScript. It supports pure functional programming, a Fay-specific monad, FFI, optional tail-call optimization, and integration with Cabal packages. GHC-compatible type checking, ensuring correctness. Lazy, pure functional semantics with a distinct Fay monad. Foreign Function Interface (FFI) to integrate native JS code. Compatible with standard Haskell packaging tools like Cabal.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 22
    GHC (Glasgow Haskell Compiler)

    GHC (Glasgow Haskell Compiler)

    Mirror of the Glasgow Haskell Compiler

    GHC (Glasgow Haskell Compiler) is the leading open-source compiler and interactive environment for the Haskell programming language, supporting the Haskell 2010 standard plus numerous language extensions. It compiles to native machine code (via LLVM or C), and includes the interactive GHCi REPL. For full information on building GHC, see the GHC Building Guide. Here follows a summary - if you get into trouble, the Building Guide has all the answers. For building library documentation, you'll need Haddock. To build the compiler documentation, you need Sphinx and Xelatex (only for PDF output).
    Downloads: 1 This Week
    Last Update:
    See Project
  • 23
    Hasktorch

    Hasktorch

    Tensors and neural networks in Haskell

    Hasktorch is a powerful Haskell library for tensor computation and neural network modeling, built on top of libtorch (the backend of PyTorch). It brings differentiable programming, automatic differentiation, and efficient tensor operations into Haskell’s strongly typed functional paradigm. This project is in active development, so expect changes to the library API as it evolves. We would like to invite new users to join our Hasktorch discord space for questions and discussions. Contributions/PR are encouraged. Hasktorch is a library for tensors and neural networks in Haskell. It is an independent open source community project which leverages the core C++ libraries shared by PyTorch.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 24
    Nix Output Monitor

    Nix Output Monitor

    Pipe your nix-build output through the nix-output-monitor

    nix-output-monitor (also known as nom) is a workflow tool that enhances the readability and usability of nix-build output by providing pretty, parsed summaries and highlighting important events during Nix builds. This was an experiment to write something fun and useful in Haskell, which proved to be useful to quite a lot of people. By now, nom is quite fully featured with support for nix v1 commands (e.g. nix-build) and nix v2 commands (e.g. nix build). At this point it seems like I will maintain nom until better UX options for nix arrive. Every entry in the nom tree stands for one derivation. No build will be printed twice in the tree, it will only be shown for the lowermost dependency. Use the colors from above to read the summary.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 25
    Obelisk

    Obelisk

    Functional reactive web and mobile applications, with batteries

    Functional reactive web and mobile applications, with batteries included. Obelisk's goal is to represent a cohesive, highly-curated set of choices that Obsidian Systems has made for building these types of applications in a way that is extremely fast but does not compromise on production readiness. Obelisk allows you to build high-quality web and mobile applications very quickly using Reflex. In minutes you can go from an empty directory to an interactive application that works on web, iOS, and Android, all sharing the same Haskell codebase! Obelisk's development environment also enables extremely rapid development and feedback. You can take advantage of Haskell's type system across the frontend and backend boundary. This means changes to your backend that would break your frontend are immediately detected during development and vice versa. Obelisk uses Haskell's compiler to give you a complete "TODO list" of what needs to be updated.
    Downloads: 1 This Week
    Last Update:
    See Project