{"id":21231183,"url":"https://github.com/clemlak/solver","last_synced_at":"2026-05-08T14:04:02.828Z","repository":{"id":44070159,"uuid":"209957118","full_name":"clemlak/solver","owner":"clemlak","description":"🔎 Solver integrates Solhint (a Solidity linter) in Visual Studio Code.","archived":false,"fork":false,"pushed_at":"2022-12-30T18:42:14.000Z","size":124,"stargazers_count":0,"open_issues_count":7,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-15T02:23:24.185Z","etag":null,"topics":["ethereum","extension","linter","solhint","solidity","typescript","visual-studio-code","visual-studio-extension"],"latest_commit_sha":null,"homepage":"https://marketplace.visualstudio.com/items?itemName=clementlakhal.solver","language":"TypeScript","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/clemlak.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-09-21T09:22:37.000Z","updated_at":"2019-10-04T08:10:48.000Z","dependencies_parsed_at":"2023-01-31T13:15:40.697Z","dependency_job_id":null,"html_url":"https://github.com/clemlak/solver","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/clemlak/solver","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clemlak%2Fsolver","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clemlak%2Fsolver/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clemlak%2Fsolver/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clemlak%2Fsolver/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/clemlak","download_url":"https://codeload.github.com/clemlak/solver/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clemlak%2Fsolver/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270061641,"owners_count":24520334,"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","status":"online","status_checked_at":"2025-08-12T02:00:09.011Z","response_time":80,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["ethereum","extension","linter","solhint","solidity","typescript","visual-studio-code","visual-studio-extension"],"created_at":"2024-11-20T23:41:15.250Z","updated_at":"2026-05-08T14:03:57.777Z","avatar_url":"https://github.com/clemlak.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🔎 Solver\n\n![](https://i.imgur.com/Nk8gnTw.png)\n\n\u003e Solver integrates [Solhint](https://github.com/protofire/solhint) (a [Solidity](https://solidity.readthedocs.io) linter) in [Visual Studio Code](https://code.visualstudio.com). \n\nLearn more about Solhint [here](https://github.com/protofire/solhint).\n\n## 🚀 Usage\n\n*Since Solver already contains an instance of Solhint, you are not required to install it. If you are creating a new project from scratch, you can add manually a `.solhint.json` configuration file (or use Solhint to generate one).*\n\nOnce installed, the extension will start when you will open a Solidity file.\n\nThe way it works is very simple:\n- **If you opened a single file:** the rules defined in the settings of the extension will be used.\n- **If you opened a folder:** the extension is going to look for a `.solhint.json` file in the current workspace and use the rules defined inside this file.\n\n*Note: If you did not defined any rule in the settings of the extension, or if the `.solhint.json` file is missing, all the rules are going to be activated by default.*\n\n## 🔧 Extension Settings\n\nThe following settings are available:\n\n### `solver.delay`\n\nWhen the current file has been edited, this defines how much time (in millisecond) the extension will wait before triggering a new linting. Exemple:\n\n```json=\n  \"solver.delay\": 500\n```\n\n### `solver.warningStyle`\n\nThe style applied to the warning messages. Example:\n\n```json=\n\"solver.warningStyle\": {\n  \"border\": \"1px solid #f39c12\",\n  \"borderStyle\": \"dashed\"\n}\n```\n\n### `solver.errorStyle`\n\nThe style applied to the error messages. Example:\n\n```json=\n\"solver.warningStyle\": {\n  \"border\": \"1px solid #c0392b\",\n  \"borderStyle\": \"dashed\"\n}\n```\n\n### `solver.config`\n\nThis defines all the rules related to Solhint. You can simply copy and paste the content of a `.solhint.json` file in here. Example:\n\n```json=\n\"solver.config\": {\n  \"extends\": \"solhint:default\",\n  \"plugins\": [],\n  \"rules\": {\n    \"quotes\": \"warn\",\n    \"const-name-snakecase\": \"off\",\n    \"avoid-suicide\": \"error\",\n    \"avoid-sha3\": \"warn\",\n    \"avoid-tx-origin:\": \"warn\",\n    \"not-rely-on-time\": \"warn\",\n    \"not-rely-on-block-hash\": \"warn\",\n    \"space-after-comma\": \"warn\",\n    \"no-spaces-before-semicolon\": \"warn\"\n  }\n}\n```\n\nYou can find more details about Solhint rules [here](https://github.com/protofire/solhint/blob/master/docs/rules.md).\n\n*Note: Plugins are not supported yet.*\n\n## 🐛 Known Issues\n\nHere are the known issues, I'll try to fix them as soon as possible:\n\n- When an issue has been spotted, the warning / error message may highlight more code than needed\n- When the rules are updated (in the settings or in the `.solhint.json` file), the new configuration may not be used right away in the current file\n- Plugins are not supported yet\n- When an issue has been spotted, a solution could be proposed to fix it\n- This extension does not implement Solidity syntax highlighting\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclemlak%2Fsolver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fclemlak%2Fsolver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclemlak%2Fsolver/lists"}