Linting and Fixing Code for All Languages

Technologies
django, haskell, python 3, docker, antlr
Topics
devops, static code analysis‎, chat
Linting and Fixing Code for All Languages

coala provides a common command-line interface for linting and fixing all your code, regardless of the programming languages you use. It allows users to analyse projects containing multiple languages with just one tool, using just one configuration and seeing just one user interface.

coala is made of existing tools, wrapped by bears, and native analysis routines. This enables users to check their python code for pep8 conformity, calculate complexity for their Java code, find code duplicates in the C code and check the documentation for spelling errors, while making sure the commits follow the set guidelines. All controlled via one configuration file, run with one command and served in the same user interface. For Users

coala offers a unified static code analysis suite. It can be used as a simple standalone testing suite, pre-commit hook and CI tool. Besides the normal user interactive mode, there is a non-interactive mode for CI, a html output mode, to view results in the browser, and JSON output if you want to integrate coala into your own system. If implemented, coala even offers to automatically fix problems. For Developers

You can easily write your own bears. coala is written with ease of extension in mind. That means: no big boilerplate, just write one small object with one routine, add the parameters you like and see how coala automates the organization of settings, user interaction and execution parallelization.

For newcomers, coala offers a great newcomer experience with an in depth step-by-step guide for your first contribution, extensive documentation of the whole workflow and fast and easy communication over the gitter channel.

2021 Program

Successful Projects

Contributor
nakuldx
Mentor
sureshk
Organization
coala
corobo Enhancement Project
Improvements to the corobo project enhancing its security, features and usability of coala’s devops bot.
Contributor
Shreya Agarwal
Mentor
Bhushan Khanale, sureshk
Organization
coala
Result Reporter Tool for Bears
Result reporter tool to convert linter/bear results into multiple formats.
Contributor
Sanchit (pilgrim2308)
Mentor
Vaibhav Singh, sureshk, KVGarg
Organization
coala
Gitmate for coala
Gitmate, a git workflow management bot created by coala, hasn't been actively maintained in the last 3 years. My project aims to update it and bring...
Contributor
Prashant Dodiya
Mentor
sureshk, KVGarg, Lasse Peters, Finn Peters
Organization
coala
Microfarm For Everybody
This project aims to create a tool that allows anyone to become a market gardener, given some space. As a first step, a user will merely sign up and...