{"id":29005300,"url":"https://github.com/vst/haskell-template-hebele","last_synced_at":"2025-06-25T11:06:29.596Z","repository":{"id":212216407,"uuid":"730968937","full_name":"vst/haskell-template-hebele","owner":"vst","description":"An opinionated Haskell Project Template based on Nix.","archived":false,"fork":false,"pushed_at":"2025-05-20T02:24:55.000Z","size":58,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-20T03:23:55.619Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vst.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-12-13T04:24:34.000Z","updated_at":"2025-05-20T02:24:57.000Z","dependencies_parsed_at":"2023-12-13T05:29:56.188Z","dependency_job_id":"ff9cd180-e611-4955-9fae-d4a5314cbb32","html_url":"https://github.com/vst/haskell-template-hebele","commit_stats":null,"previous_names":["vst/haskell-template-hebele"],"tags_count":4,"template":true,"template_full_name":null,"purl":"pkg:github/vst/haskell-template-hebele","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vst%2Fhaskell-template-hebele","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vst%2Fhaskell-template-hebele/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vst%2Fhaskell-template-hebele/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vst%2Fhaskell-template-hebele/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vst","download_url":"https://codeload.github.com/vst/haskell-template-hebele/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vst%2Fhaskell-template-hebele/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261859212,"owners_count":23220711,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-06-25T11:05:36.600Z","updated_at":"2025-06-25T11:06:29.580Z","avatar_url":"https://github.com/vst.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Haskell Project Template\n\nThis is an opinionated template for creating Haskell projects. It uses\n[Nix] [Flakes], [hpack] and [cabal].\n\n\u003e **TODO** Provide minimum viable documentation.\n\n## Quickstart\n\nCreate your repository from this template, clone it on your computer\nand enter its directory.\n\nThen, run following to configure your project:\n\n```sh\nbash ./run-template.sh\n```\n\nIt will prompt some questions and configure your project according to\nyour answers.\n\nOnce it is configured, provision `direnv`. You can copy the `.envrc.tmpl`:\n\n```sh\ncp .envrc.tmpl .envrc\n```\n\nThen, you can run the following command to allow `direnv` to activate the\ndevelopment environment:\n\n```sh\ndirenv allow\n```\n\nAlternatively, you can simply run the following command to activate the\ndevelopment environment:\n\n```sh\nnix develop\n```\n\nAnd run the big, long build command as given in the next section.\n\nFinally, you can remove the `run-template.sh` script:\n\n```sh\nrm run-template.sh\n```\n\n## Development\n\nBig, long build command for the impatient:\n\n```sh\nhpack \u0026\u0026\n    direnv reload \u0026\u0026\n    fourmolu -i app/ src/ test/ \u0026\u0026\n    prettier --write . \u0026\u0026\n    find . -iname \"*.nix\" -not -path \"*/nix/sources.nix\" -print0 | xargs --null nixpkgs-fmt \u0026\u0026\n    hlint app/ src/ test/ \u0026\u0026\n    cabal build -O0 \u0026\u0026\n    cabal run -O0 haskell-template-hebele -- --version \u0026\u0026\n    cabal v1-test \u0026\u0026\n    cabal haddock -O0\n```\n\nTo run checks, tests and build the codebase in the development environment, run:\n\n```sh\ncabal-dev-test-build\n```\n\nYou can pass `-c` to clean the build artifacts first:\n\n```sh\ncabal-dev-test-build -c\n```\n\nAs of Cabal 3.12, you can now run the above as an external `cabal` command:\n\n```sh\ncabal dev-test-build [-c]\n```\n\n\u003c!-- REFERENCES --\u003e\n\n[Nix]: https://nixos.org\n[Flakes]: https://wiki.nixos.org/wiki/Flakes\n[hpack]: https://github.com/sol/hpack\n[cabal]: https://www.haskell.org/cabal\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvst%2Fhaskell-template-hebele","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvst%2Fhaskell-template-hebele","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvst%2Fhaskell-template-hebele/lists"}