{"id":13665166,"url":"https://github.com/microverseinc/linters-config","last_synced_at":"2025-04-08T08:14:21.904Z","repository":{"id":35948202,"uuid":"174139697","full_name":"microverseinc/linters-config","owner":"microverseinc","description":null,"archived":false,"fork":false,"pushed_at":"2023-07-10T17:37:36.000Z","size":1263,"stargazers_count":250,"open_issues_count":30,"forks_count":1248,"subscribers_count":13,"default_branch":"master","last_synced_at":"2024-02-12T23:15:52.650Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/microverseinc.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2019-03-06T12:19:51.000Z","updated_at":"2024-01-18T19:09:36.000Z","dependencies_parsed_at":"2024-01-13T03:23:21.811Z","dependency_job_id":"c7864b60-b1eb-460b-9118-85a0250664f9","html_url":"https://github.com/microverseinc/linters-config","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microverseinc%2Flinters-config","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microverseinc%2Flinters-config/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microverseinc%2Flinters-config/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microverseinc%2Flinters-config/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/microverseinc","download_url":"https://codeload.github.com/microverseinc/linters-config/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247801169,"owners_count":20998339,"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":"2024-08-02T06:00:22.225Z","updated_at":"2025-04-08T08:14:21.877Z","avatar_url":"https://github.com/microverseinc.png","language":"Shell","funding_links":[],"categories":["Acknowledgments","Getting Started","Setup","🤝 Contributing","🙏 Acknowledgments \u003ca name=\"acknowledgements\"\u003e\u003c/a\u003e"],"sub_categories":["Deployment","Run tests","Usage"],"readme":"# Linters Config\n\n## How to use this repo? 🤔\n\nEach directory listed below contains config files specific to one programming language and README file with detailed instructions:\n\n- [html\u0026css](./html-css)\n- [html\u0026css + javascript](./html-css-js) (for projects that require you to use both JavaScript and HTML \u0026 CSS)\n- [ruby](./ruby)\n- [ror](./ror)\n- [javascript](./javascript)\n- [react\u0026redux](./react-redux)\n\nFollow those instructions in order to set up linters or validators in your repo.\n\nIn order to get to know more about linters and GitHub Actions read the recap below.\n\n## Linters\n\nA linter is a tool that analyzes your source code to flag programming errors, bugs, stylistic errors, and suspicious constructs(source: [Wikipedia](\u003chttps://en.wikipedia.org/wiki/Lint_(software)\u003e)).\n\nThere are a few reasons for using linters:\n\n1. Catching syntax errors is more efficient. There is no need to debug simple mistakes like typos - the linter does it for you.\n2. The entire codebase looks like written by one person.\n3. Programmers can focus on solving problems, instead of cleaning up the code.\n\n---\n\nYou can find linters for most of the programming languages, e.g. Rubocop for Ruby or ESLint for JavaScript.\n\nAlso, there are many ways you can integrate a linter in your workflow:\n\n- text editor plugin\n- GitHub Actions\n- GitHub apps\n\n## GitHub Actions\n\n[Github Actions](https://help.github.com/en/actions) is a [CI/CD](https://codilime.com/what-is-ci-cd-all-you-need-to-know/) service offered by GitHub. It allows you to automate your workflow by letting GitHub take care of a number of tasks which can be triggered by [different of events](https://help.github.com/en/actions/reference/events-that-trigger-workflows) on the platform.\n\n🐛 **What to do if GitHub Actions does not work?** Check [Troubleshooting](#troubleshooting) below.\n\nYou can automate tasks by creating **workflows** in your GitHub repository. GitHub will look for [YAML](https://en.wikipedia.org/wiki/YAML) files inside of the `.github/workflows` directory.\n\n## Troubleshooting\n\nDepending on the configuration of your GitHub credentials, you may have an error like this when trying to create a new GitHub Actions workflow:\n\n```\n! [remote rejected] master -\u003e master (refusing to allow an OAuth App to create or update workflow `.github/workflows/file.yml` without `workflow` scope)\n\n```\n\nThe problem is that you may be using a credentials app like [Credential Manager in Windows](https://github.com/gitextensions/gitextensions/issues/4916#issuecomment-557509451) or OSX Keychain. In that case, you should [setup a personal access token](https://help.github.com/en/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line) and configure it in your credentials app. Make sure to check the `workflow` permissions when you setup your personal access token.\n\nIf you had a different problem related to a specific tool, please check detailed instructions for each linter:\n\n- [html\u0026css](./html-css#troubleshooting)\n- [ruby](./ruby#troubleshooting)\n- [ror](./ror#troubleshooting)\n- [javascript](./javascript#troubleshooting)\n- [react\u0026redux](./react-redux#troubleshooting)\n\n## Validation\n\nDo not make any changes in config files - they represent style guidelines that you share with your team - which is a group of all Microverse students.\n\nTSEs will validate that you are using the same configuration files provided here. You can check if your linter configuration is correct using the [`check-linters-config`](scripts) script.\n\n## Stickler\n\nThis is the **GitHub Actions configuration**. If you are looking for the **Stickler configuration**, you can find it [here](https://github.com/microverseinc/linters-config/tree/Stickler).\n\n## Contributing\n\nEverybody is welcome to suggest changes in linters config files.\n\nIn order to do it, fork this repository, create a new branch and open a Pull Request from your branch. A detailed description of this process: [A Step by Step Guide to Making Your First GitHub Contribution by Roshan Jossey](https://codeburst.io/a-step-by-step-guide-to-making-your-first-github-contribution-5302260a2940)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmicroverseinc%2Flinters-config","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmicroverseinc%2Flinters-config","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmicroverseinc%2Flinters-config/lists"}