Haskell HacktoberFest

Open-source Haskell projects categorized as HacktoberFest

Top 23 Haskell HacktoberFest Projects

  • unison

    A friendly programming language from the future

    Project mention: Unison Cloud | news.ycombinator.com | 2024-02-07

    Short version: no type classes (yet)

    Longer version:

    Building upon what Quekid5 mentioned, Unison abilities are an implementation of what is referred to as algebraic effects in programming language literature. They represent capabilities like IO, state, exceptions, etc. They aren't really a replacement for type classes, though in some cases you can shoehorn abilities in where you might otherwise use a type class.

    For someone coming from a Haskell background, I think that abilities are closer to a replacement for monad transformers. But in my opinion they are much more ergonomic.

    Discusson of type classes comes up a lot. Here is a long-standing GitHub issue: https://github.com/unisonweb/unison/issues/502

    For what it's worth, I've written Unison quite a lot over the past few years and while I've missed type classes at times, I think that reading unfamiliar code is easier without them. There's no implicit magic; you can see exactly what is being passed into a function. So far I've been happy with a bit more verbosity for the sake of readability.

  • ihp

    🔥 The fastest way to build type safe web apps. IHP is a new batteries-included web framework optimized for longterm productivity and programmer happiness

    Project mention: Ask HN: Why are all of the best back end web frameworks dynamically typed? | news.ycombinator.com | 2023-10-05

    I found IHP straightforward:

    https://ihp.digitallyinduced.com/

    despite not remembering much haskell!

    This assumes you can get past nix for the install.

    I find IHP well-designed. I just wish the licensing scheme were more transparent.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

  • xmonad

    The core of xmonad, a small but functional ICCCM-compliant tiling window manager

    Project mention: Installing Xmonad on Arch | /r/xmonad | 2023-06-05

    The official guide and the archwiki do say that it's okay to just install it via pacman, but I've also found some issues on the official repo that strongly suggest against installing via pacman and to use stack instead, as sometimes pacman breaks dependencies.

  • haskell-language-server

    Official haskell ide support via language server (LSP). Successor of ghcide & haskell-ide-engine.

    Project mention: Revisiting Haskell after 10 years | dev.to | 2024-01-15

    The advent of language server protocol made possible the creation of HLS (Haskell Language Server), and there are plugins for many editors, such as vscode-haskell, that allow you to have auto-complete, auto-import, and automatic function signatures—also available to your editor of choice. The whole feedback loop of editing, compiling, and running is greatly improved.

  • futhark

    :boom::computer::boom: A data-parallel functional programming language

    Project mention: What downsides exist to Futhark? Seems almost too good to be true? | /r/CUDA | 2023-06-29

    Why Futhark? (futhark-lang.org)

  • servant

    Main repository for the servant libraries — DSL for describing, serving, querying, mocking, documenting web applications and more!

    Project mention: An alternative front end for Haskell? | news.ycombinator.com | 2023-10-07

    > do you really have to understand language extensions?

    You do when your code doesn't compile and you're trying to figure out what the error message means, or when the library you want to use makes heavy use of it for even basic functionality.

    > These days one just enables GHC2021

    My experience was pre-GHC2021. I basically had to enable at a minimum 5-6 language extensions in every single file.

    > Mostly they're just about removing unnecessary restrictions from the older standard.

    Yeah, those ones are usually fine. I have zero objection to things like FlexibleInstances or DeriveFoldable.

    > Could you give an example?

    I believe I was trying to implement Central Authentication Service using Servant. However, that required returning a custom HTTP status code. There has been an open Github issue for this since 2017, but it seems to require basically rewriting the entire framework: https://github.com/haskell-servant/servant/issues/732

    Looking back at it now Servant does have "ServerError", but that basically requires giving up all the advantages Servant claims to have and I believe it was not a viable option at the time. Looking at the timeline I was probably also on Servant 0.15, and there seems to have been a rewrite since then.

    I vaguely recall running into a similar issue trying to interact with a database, but I can't remember the details of that.

  • course-plan

    📜 Haskell course info, plan, video lectures, slides

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

  • learn4haskell

    👩‍🏫 👨‍🏫 Learn Haskell basics in 4 pull requests

  • stylish-haskell

    Haskell code prettifier

  • egison

    The Egison Programming Language

    Project mention: The Egison Programming Language | /r/patient_hackernews | 2023-04-29
  • accelerate

    Embedded language for high-performance array computations (by AccelerateHS)

  • Rome

    Carthage cache for S3, Minio, Ceph, Google Storage, Artifactory and many others (by tmspzz)

  • summoner

    🔮 🔧 Tool for scaffolding batteries-included production-level Haskell projects

  • nix-tree

    Interactively browse dependency graphs of Nix derivations.

    Project mention: A minimal Nix-shell (2021) | news.ycombinator.com | 2023-06-17

    Excellent recommendation!

    For reference: https://github.com/utdemir/nix-tree

    Or, to test without installing:

    $ nix-shell -p nix-tree

    $ nix-tree

    etc.

    Anyway, excellent suggestion!

  • Perspec

    Scriptable desktop app to correct the perspective of images

    Project mention: Smooth resize and automatic layout demo | /r/nosyntax | 2023-05-15

    Can you please make a write up how momentu works!? 🥺 Would be an awesome addition to the Haskell documentation ecosystem. (… and my gloss UI of Perspec sucks and I'd be happy for some references on how to rebuild it from scratch 😄)

  • xmonad-contrib

    Contributed modules for xmonad

  • stan

    🕵️ Haskell STatic ANalyser (by kowainik)

  • hindent

    Haskell pretty printer

  • termonad

    Terminal emulator configurable in Haskell.

  • Haskell

  • monocle

    Monocle helps teams and individual to better organize daily duties and to detect anomalies in the way changes are produced and reviewed. (by change-metrics)

  • compendium-client

    Mu (μ) is a purely functional framework for building micro services.

    Project mention: Haskell jobs at Standard Chartered, various locations and seniority | /r/haskell | 2023-04-17
  • purenix

    Nix backend for PureScript. Transpile PureScript code to Nix.

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2024-02-07.

Haskell HacktoberFest related posts

Index

What are some of the best open-source HacktoberFest projects in Haskell? This list will help you:

Project Stars
1 unison 5,516
2 ihp 4,215
3 xmonad 3,235
4 haskell-language-server 2,563
5 futhark 2,278
6 servant 1,768
7 course-plan 1,194
8 learn4haskell 971
9 stylish-haskell 966
10 egison 900
11 accelerate 886
12 Rome 812
13 summoner 690
14 nix-tree 601
15 Perspec 579
16 xmonad-contrib 569
17 stan 558
18 hindent 554
19 termonad 389
20 Haskell 360
21 monocle 348
22 compendium-client 326
23 purenix 281
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com