{"id":19773215,"url":"https://github.com/mbarbin/dunolint","last_synced_at":"2025-08-22T23:13:34.229Z","repository":{"id":244241284,"uuid":"814662825","full_name":"mbarbin/dunolint","owner":"mbarbin","description":"A linter for build files in dune projects (OCaml)","archived":false,"fork":false,"pushed_at":"2025-02-21T09:04:28.000Z","size":346,"stargazers_count":2,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-21T09:36:14.422Z","etag":null,"topics":["build","codemods","dune","linter","ocaml"],"latest_commit_sha":null,"homepage":"https://mbarbin.github.io/dunolint/","language":"OCaml","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mbarbin.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","contributing":null,"funding":null,"license":"COPYING","code_of_conduct":"CODE_OF_CONDUCT.md","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}},"created_at":"2024-06-13T12:56:45.000Z","updated_at":"2025-02-21T09:04:29.000Z","dependencies_parsed_at":"2025-02-21T09:28:39.153Z","dependency_job_id":null,"html_url":"https://github.com/mbarbin/dunolint","commit_stats":null,"previous_names":["mbarbin/dunolint"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbarbin%2Fdunolint","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbarbin%2Fdunolint/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbarbin%2Fdunolint/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbarbin%2Fdunolint/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mbarbin","download_url":"https://codeload.github.com/mbarbin/dunolint/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241104153,"owners_count":19910382,"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":["build","codemods","dune","linter","ocaml"],"created_at":"2024-11-12T05:08:59.601Z","updated_at":"2025-08-22T23:13:34.210Z","avatar_url":"https://github.com/mbarbin.png","language":"OCaml","funding_links":[],"categories":[],"sub_categories":[],"readme":"# dunolint\n\n[![CI Status](https://github.com/mbarbin/dunolint/workflows/ci/badge.svg)](https://github.com/mbarbin/dunolint/actions/workflows/ci.yml)\n[![Coverage Status](https://coveralls.io/repos/github/mbarbin/dunolint/badge.svg?branch=main)](https://coveralls.io/github/mbarbin/dunolint?branch=main)\n[![Deploy Doc Status](https://github.com/mbarbin/dunolint/workflows/deploy-doc/badge.svg)](https://github.com/mbarbin/dunolint/actions/workflows/deploy-doc.yml)\n[![OCaml-CI Build Status](https://img.shields.io/endpoint?url=https://ocaml.ci.dev/badge/mbarbin/dunolint/main\u0026logo=ocaml)](https://ocaml.ci.dev/github/mbarbin/dunolint)\n\n## Introduction\n\nWelcome to **dunolint**, a project composed of libraries and a CLI designed to assist with maintaining *build files* typically found in OCaml repos managed by the Dune build system (e.g., files named *dune*, *dune-project*, etc.).\n\n## Project Goals\n\nThe goal of **dunolint** is to check customizable invariants in your repo and help with ergonomic issues, such as applying systematic changes across many files. It supports things like enabling instrumentation, configuring recurring lint or preprocess flags, sorting libraries alphabetically, and more. You can use it at your convenience during development, and enforce consistency by integrating it into your CI pipeline.\n\n## Documentation\n\nPublished [here](https://mbarbin.github.io/dunolint).\n\n## Current State\n\nIt's currently in the early stages of development and there's little code and features at this point. I'm seeking feedback and early discussions about the project next steps.\n\n## Get Involved\n\nI would love to hear your thoughts about dunolint. If you're interested in this project and would like to engage in discussions or provide feedback, please feel free to open an issue or start a discussion in the GitHub space of the project.\n\nThank you for your interest in dunolint!\n\n## Acknowledgements\n\nWe're very thankful to:\n- Jérémie Dimino and the **Dune** developers for their work on the [Dune](https://github.com/ocaml/dune) build system for OCaml.\n- The [diataxis](https://diataxis.fr/) approach to technical documentation, which we use as inspiration to structure our doc.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmbarbin%2Fdunolint","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmbarbin%2Fdunolint","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmbarbin%2Fdunolint/lists"}