category feedOpen-source projectsCommunityeditdelete

This category is a work in progress






OSS projects written in Haskell. If you're looking for a project to contribute to (or to learn from), this list might be useful.

We don't include projects that are obviously written in Haskell (GHC, Stack, Cabal, etc).

Haskell repositories on Github: link. There's also a long list of projects on Haskell Wiki, but many projects there are dead or just too small/specialised to be listed here.

edit description
or press Ctrl+Enter to savemarkdown supported
#
other
move item up move item down edit item info delete item
Summary edit summary

If you need to convert files from one markup format into another, pandoc is your swiss-army knife. Pandoc can convert documents in markdown, reStructuredText, textile, HTML, DocBook, LaTeX, MediaWiki markup, TWiki markup, OPML, Emacs Org-Mode, Txt2Tags, Microsoft Word docx, LibreOffice ODT, EPUB, or Haddock markup to [about 20 formats].

Pandoc is a very popular document converter, and probably one of the best of its kind. (There are some specialised converters that are better at converting between a particular pair of formats, though.) It also has one of the most advanced Markdown dialects out there, and thus is often used for generating static sites, writing papers, and the like.

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
Elm
language
move item up move item down edit item info delete item
Summary edit summary

write something here!

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
other
move item up move item down edit item info delete item
Summary edit summary

Cgrep is a grep tool suitable for searching in large code repositories. It supports several programming languages and searches that go beyond the simple pattern matching. It enables context-aware filtering and semantic searches through wildcard and combinators.

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
site
move item up move item down edit item info delete item
Summary edit summary

A web archive of IRC logs (serves #haskell and some other FP-related channels).

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
other
move item up move item down edit item info delete item
Summary edit summary

A popular tiling window manager.

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
language
move item up move item down edit item info delete item
Summary edit summary

A Haskell-like language with dependent types, and also a proof assistant.

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
language
move item up move item down edit item info delete item
Summary edit summary

Another Haskell-like language with dependent types.

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
Darcs (Hackage)
other
move item up move item down edit item info delete item
Summary edit summary

Darcs is a free and open source, cross-platform version control system, like git, mercurial or svn but with a very different approach: focus on changes rather than snapshots.

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
language
move item up move item down edit item info delete item
Summary edit summary

PureScript is a small strongly typed programming language that compiles to JavaScript.

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
other
move item up move item down edit item info delete item
Summary edit summary

PostgREST is a standalone web server that turns your database directly into a RESTful API. The structural constraints and permissions in the database determine the API endpoints and operations.

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
other
move item up move item down edit item info delete item
Summary edit summary

A shell script static analysis tool

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
other
move item up move item down edit item info delete item
Summary edit summary

TidalCycles (or Tidal for short) is a language for live coding pattern. It allows you to make musical patterns with text, describing sequences and ways of transforming and combining them, exploring complex interactions between simple parts.

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
site
move item up move item down edit item info delete item
Summary edit summary

A pastebin (used mostly by Haskellers).

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
other
move item up move item down edit item info delete item
Summary edit summary

Static sites are fast, secure, easy to deploy, and manageable using version control.

Hakyll is a Haskell library for generating static sites, mostly aimed at small-to-medium sites and personal blogs. It is written in a very configurable way and uses an xmonad-like DSL for configuration.

Integration with pandoc gives us markdown and TeX support, including syntax highlighting and other goodies.

Hakyll is a pretty good static site generator, often used for blogs and sites by Haskellers. (Examples: site of Haskell Book, Hakyll author's site, another personal site.)

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
other
move item up move item down edit item info delete item
Summary edit summary

git-annex allows managing files with git, without checking the file contents into git. While that may seem paradoxical, it is useful when dealing with files larger than git can currently easily handle, whether due to limitations in memory, time, or disk space.

git-annex is designed for git users who love the command line. For everyone else, the git-annex assistant turns git-annex into an easy to use folder synchroniser.

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
other
move item up move item down edit item info delete item
Summary edit summary

hledger is an accounting program, for tracking money, time, or other commodities, on unix, mac and windows. With simple yet powerful functionality accessed from command line, terminal or web browser, it is a robust, cross-platform alternative to Quicken, GnuCash, spreadsheets etc.

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
other
move item up move item down edit item info delete item
Summary edit summary

Shake is...

  • A build system – an alternative to make, Scons, Ant etc.
  • Reliable and robust – having been relied on commercially for over five years.
  • Powerful – letting you express the problem precisely and directly.
  • Fast to run – both to build from scratch and to rebuild.

Large build systems written using Shake tend to be significantly simpler, while also running faster. If your project can use a canned build system (e.g. Visual Studio, cabal) do that; if your project is very simple use a Makefile; otherwise use Shake.

According to their site, Shake is used by Standard Chartered and FP Complete, among other companies.

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
gitit (Hackage)
other
move item up move item down edit item info delete item
Summary edit summary

Gitit is a wiki backed by a git, darcs, or mercurial filestore. Pages and uploaded files can be modified either directly via the VCS's command-line tools or through the wiki's web interface. Pandoc is used for markup processing, so pages may be written in (extended) markdown, reStructuredText, LaTeX, HTML, or literate Haskell, and exported in ten different formats, including LaTeX, ConTeXt, DocBook, RTF, OpenOffice ODT, and MediaWiki markup.

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
other
move item up move item down edit item info delete item
Summary edit summary

patat (Presentations And The ANSI Terminal) is a small tool that allows you to show presentations using only an ANSI terminal. It does not require ncurses.

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
github-backup (Hackage)
other
move item up move item down edit item info delete item
Summary edit summary

github-backup is a simple tool you run in a git repository you cloned from GitHub. It backs up everything GitHub publishes about the repository, including branches, tags, other forks, issues, comments, wikis, milestones, pull requests, watchers, and stars.

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
Yi (Hackage)
other
move item up move item down edit item info delete item
Summary edit summary

An Emacs-like text editor.

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
other
move item up move item down edit item info delete item
Summary edit summary

A system for adding comments to any site, developed by Thoughtbot.

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
Aura (Hackage)
other
move item up move item down edit item info delete item
Summary edit summary

write something here!

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
other
move item up move item down edit item info delete item
Summary edit summary

A C-to-Rust translator.

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
other
move item up move item down edit item info delete item
Summary edit summary

A toy Python 3 interpreter implemented in Haskell.

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!

#
other
move item up move item down edit item info delete item
Summary edit summary

Propellor is a configuration management system using Haskell and Git. Each system has a list of properties, which Propellor ensures are satisfied. Linux and FreeBSD are supported.

Summary quit editing summary
Notes
collapse notesedit notes

<notes are empty>

add something!