Welcome to Candoia.

Candoia is a platform for realizing Mining Software Repository (MSR) Tools, and more broadly software engineering (SE) tools. Candoia is to these tools as Android and iOS are to mobile applications, and Atom is to text editors.

Like the Android and iOS platforms, Candoia provides suitable abstractions for building these tools and handles the details of integration with source code management (SCM) systems, bug databases, language parsers, visualization, etc. A tool developer develops their idea as a Candoia app and can publish them. Practitioners install Candoia platform and can browse through available apps, download them, and if necessary customize them for their own needs.
Snapshot of Top-performers Application build in Canodia


  • Easy to use languages HTML, CSS, JSON, JS, Boa for app building
  • Helpful abstractions to avoid learning curve of using variety of MSR artificates e.g VCS, BUG, etc.
  • Diverse data such as bug and organization information for analysis
  • App store to download and share different mining apps
  • Ability to create local and private datasets
  • Inbuilt support of important libraries like such as Weka ,SPMf etc.
  • Responsive and dynamic inbuild charting libraries
  • Support for JS Bindings of external libraries
Candoia Overview

How To Build An App?

Candoia is a platform for building MSR queries as customizable and posrtable apps, without worrying about nitty gritty of underlying technologies for accessing bug or source data. Logic for Candoia app is divided in 5 files i.e.

  • a json file for expressing the structure and other infrormation of app
  • a boa script for expressing mining logic
  • a html file for visualization of results
  • an optional CSS file for user customizations
  • and a js file for binding all the logic together


Candoia Overview

Authors and Contribution

Candoia platform is developed at Iowa State University. The development is led by Hridesh Rajan (@hridesh) and project contributors include Nitin Tiwari (@nmtiwari), Ganesha Upadhyaya (@gupadhyaya), Dalton Mills (@ddmills), Eric Lin (@eyhlin), and Trey Erenberger (@TErenberger).

Support or Contact

Having trouble with Candoia? Check out our documentation or contact support and we’ll help you sort it out.