A ready-to-use Docker image for Haskell development, built on top of the VS Code Dev Containers base image. Pull it, attach VS Code, and get a fully configured Haskell environment in seconds — no local toolchain required.
| Tool | Version |
|---|---|
| GHC | 9.10.3 |
| Cabal | 3.12.1.0 |
| Stack | latest |
| GHCup | latest |
- HLS — Haskell Language Server for IDE features (completions, type hints, go-to-definition)
- Hoogle — Local Haskell API search database, pre-generated at build time
- Ormolu — Opinionated, deterministic code formatter
- fast-tags — Fast tag file generator for Haskell source
- cabal-gild — Formatter and linter for
.cabalfiles - direnv — Per-directory environment variable loading, hooked into both
bashandzsh
Full Debug Adapter Protocol support via:
haskell-dapghci-daphaskell-debug-adapter
- Claude Code CLI — Anthropic's AI coding assistant, available globally via
claude - Node.js & npm — Required runtime for the Claude Code CLI
Images are built for both linux/amd64 (Intel/AMD) and linux/arm64 (Apple Silicon).
The image is automatically built and published to Docker Hub on every push to main and on version tags (v*.*.*), via GitHub Actions. Versioned tags follow semver: pushing v1.2.3 publishes :1.2.3, :1.2, :1, and :latest.
- Cabal jobs are set to
$ncpusfor parallel builds. - Documentation generation is disabled in Cabal to speed up package installs.
- The image runs as the non-root
vscodeuser, as expected by the Dev Containers spec.