Open Source Haskell Software Development Software

Haskell Software Development Software

View 6128 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.

  • Build Agents and Models on One Platform Icon
    Build Agents and Models on One Platform

    Everything you need to build production-ready agents and models. Access 200+ Google and third-party AI models and tools.

    Gemini Enterprise Agent Platform is Google Cloud's comprehensive platform for developers to build, scale, govern, and optimize agents and models. Choose from Google's most advanced models and third-party models like Anthropic's Claude Model Family.
    Try It Free
  • Custom VMs From 1 to 96 vCPUs With 99.95% Uptime Icon
    Custom VMs From 1 to 96 vCPUs With 99.95% Uptime

    General-purpose, compute-optimized, or GPU/TPU-accelerated. Built to your exact specs.

    Live migration and automatic failover keep workloads online through maintenance. One free e2-micro VM every month.
    Try Free
  • 1
    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: 255 This Week
    Last Update:
    See Project
  • 2
    The Aura Package Manager

    The Aura Package Manager

    A secure, multilingual package manager for Arch Linux

    Aura, a secure, multilingual package manager for Arch Linux. Aura's original purpose is as an AUR helper, in that it automates the process of installing packages from the Arch User Repositories. It is, however, capable of much more. Aura is a package manager for Arch Linux. Its original purpose is as an AUR helper, in that it automates the process of installing packages from the Arch User Repositories. It is, however, capable of much more. Aura doesn't just mimic pacman; it is pacman. All pacman operations and their sub-options are allowed. Some even hold special meaning in Aura as well. -S yields pacman packages and only pacman packages. This agrees with the above. In Aura, the -A operation is introduced for obtaining AUR packages. -A comes with sub-options you're used to (-u, -s, -i, etc.). PKGBUILDs from the AUR can contain anything. It's a user's responsibility to verify the contents of a PKGBUILD before building, but people can make mistakes and overlook details.
    Downloads: 19 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: 15 This Week
    Last Update:
    See Project
  • 4
    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: 11 This Week
    Last Update:
    See Project
  • $300 Free Credits to Build on Google Cloud Icon
    $300 Free Credits to Build on Google Cloud

    New customers can spin up VMs, build with AI, and query data at no cost.

    Put your $300 in credit toward real workloads, then keep building with free monthly usage for 20+ products. No commitment and no charge until you upgrade.
    Start Free
  • 5
    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: 10 This Week
    Last Update:
    See Project
  • 6
    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: 9 This Week
    Last Update:
    See Project
  • 7
    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: 7 This Week
    Last Update:
    See Project
  • 8
    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: 7 This Week
    Last Update:
    See Project
  • 9
    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: 4 This Week
    Last Update:
    See Project
  • MongoDB Atlas runs apps anywhere Icon
    MongoDB Atlas runs apps anywhere

    Deploy in 115+ regions with the modern database for every enterprise.

    MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
    Start Free
  • 10
    Matterhorn

    Matterhorn

    A feature-rich Unix terminal client for the Mattermost chat system

    Matterhorn is a terminal client for the Mattermost chat system. We provide pre-built binary releases for some platforms. Please see the release list to download a binary release for your platform that matches your server version. When you run Matterhorn you'll be prompted for your server URL and credentials. To connect, just paste your web client's Mattermost URL into the Server URL box and enter your credentials. See the Matterhorn User Guide on the details for providing each kind of supported credentials. For most of our binary releases, no additional packages need to be installed; they should just work out of the box. But here are some additional requirements that may apply for your platform. Matterhorn version strings will be of the form ABBCC.X.Y where ABBCC corresponds to the lowest Mattermost server version expected to be supported by the release. For example, if a release supports Mattermost server version 1.2.3, the ABBCC portion of the matterhorn version will be 10203.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 11
    Wasp

    Wasp

    A programming language that understands what a web app is

    Wasp (Web Application Specification Language) is a declarative DSL (domain-specific language) for developing, building and deploying modern full-stack web apps with less code. Concepts such as app, page, user, login, frontend, production, etc. are baked into the language, bringing a new level of expressiveness and allowing you to get more work done with fewer lines of code. While describing high-level features with Wasp, you still write the rest of your logic in your favorite technologies (currently React, NodeJS, Prisma). Wasp is in alpha and is therefore likely to change a lot, have bugs and miss important features. Due to its expressiveness, you can create and deploy a production-ready web app from scratch with very few lines of concise, consistent, declarative code. When you need more control than Wasp offers, you can write code in existing technologies such as js/html/css/... and combine it with Wasp code!
    Downloads: 4 This Week
    Last Update:
    See Project
  • 12
    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: 4 This Week
    Last Update:
    See Project
  • 13
    nixfmt

    nixfmt

    The official formatter for Nix code

    nixfmt is a code formatter for the Nix expression language, aiming to provide consistent and idiomatic formatting for Nix files. It is written in Haskell and designed to be fast, predictable, and fully automatic with zero configuration. nixfmt helps Nix developers maintain readability and code consistency across large codebases, facilitating collaboration and version control workflows.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 14
    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: 3 This Week
    Last Update:
    See Project
  • 15
    Carp

    Carp

    A functional, systems programming language with linear types

    Carp is a statically typed, functional programming language designed for real-time and systems programming. It features a Lisp-like syntax, strong compile-time checks, and linear type semantics that ensure memory safety without a garbage collector. Carp targets C as its backend, generating performant and predictable native code while offering functional abstractions and interactive development via REPL.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 16
    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: 3 This Week
    Last Update:
    See Project
  • 17
    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: 3 This Week
    Last Update:
    See Project
  • 18
    Summoner

    Summoner

    Tool for scaffolding batteries-included production-level Haskell

    Summoner is a tool for scaffolding fully configured batteries-included production-level Haskell projects. Do you want to create a library that is to be uploaded to Hackage/Stackage, that builds with both Cabal and Stack and supports the latest three major GHC versions? Or are you building a production application that uses a custom prelude and has CI with GitHub Actions or Travis Linux and AppVeyors Windows checks? Maybe do you want to play with your idea in a single module without introducing the whole complexity of the Haskell projects. Summoner can help you do all that with minimal effort from you - it can even upload the project to GitHub if you wish! By the way, Summoner operates as either CLI or TUI application, so you can choose what you are more comfortable with and install only the required one.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 19
    Yampa

    Yampa

    Functional Reactive Programming domain-specific language

    Yampa is a Functional Reactive Programming (FRP) library for Haskell, specifically designed for modeling hybrid systems that involve both continuous and discrete time behaviors, such as games, simulations, robotics, and reactive systems. Based on the concept of signal functions, Yampa offers a declarative way to model time-varying values and their transformations, making it easier to manage complex time-based logic without resorting to imperative state management. It is grounded in strong mathematical foundations and is well-suited for real-time and interactive systems where temporal behaviors are central.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 20
    dhall-haskell

    dhall-haskell

    Maintainable configuration files

    Maintainable configuration files. Navigate to each package's directory for their respective READMEs. You can download pre-built binaries for Windows, OS X and Linux on the release page. You can then click the "Help" button in the bottom right corner, which will show you a nix-env command that you can run to install the prebuilt executable. You will probably want to use the shared caches hosted at cache.dhall-lang.org and dhall.cachix.org when doing Nix development. This is not required, but this will save you a lot of time so that you don't have to build as many dependencies from scratch the first time. If you prefer installing the binaries locally in a nix shell environment instead, just run nix-shell in the top-level directory. This option provides additional flexibility with respect to overriding some of the default parameters (e.g. the compiler version), which makes it particularly useful for developers.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 21
    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: 2 This Week
    Last Update:
    See Project
  • 22
    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: 2 This Week
    Last Update:
    See Project
  • 23
    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: 2 This Week
    Last Update:
    See Project
  • 24
    Eta

    Eta

    The Eta Programming Language, a dialect of Haskell on the JVM

    A powerful programming language to build concurrent & distributed systems on the JVM. Eta is a pure, lazy, strongly typed functional programming language on the JVM. It brings two big ecosystems, the JVM and Haskell, together. This allows you to harness the best of both ecosystems to build your applications quickly and effectively. Eta's concurrency support helps you to build highly scalable systems. Eta has a strongly-typed Foreign Function Interface (FFI) that allows you to safely interoperate with Java. Eta has global type inference, giving you a dynamic language experience, but with a strong typing hidden underneath. Eta offers a wide range of strategies for handling concurrency including Software Transaction Memory (STM), MVars, and Fibers. Using the powerful and type-safe Servant web framework, we define our API as a type and the handler types for each endpoint are automatically generated and conversions happen automatically.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 25
    PureScript

    PureScript

    A strongly-typed language that compiles to JavaScript

    Compile to readable JavaScript and reuse existing JavaScript code easily. An extensive collection of libraries for development of web applications, web servers, apps and more. Excellent tooling and editor support with instant rebuilds. An active community with many learning resources. Build real-world applications using functional techniques and expressive types, such as: Algebraic data types and pattern matching. Row polymorphism and extensible records. Higher kinded types and type classes with functional dependencies, as well as higher-rank polymorphism. Precompiled binaries are available for OSX, Linux, and Windows. The Pursuit package database hosts searchable documentation for PureScript packages. The recommended build tool for PureScript is Spago, which can be installed using npm.
    Downloads: 2 This Week
    Last Update:
    See Project