Introduction

Introduction

CodeInsights analyzes your repository and extracts insights about your code.

The goal of the project is to help developers overcome the challenge of not being able to gain a high-level overview of their codebase.

This is useful for any project, but particularly useful for large projects consisting of thousands of files, where it can be difficult to identify specific problematic areas, detect anomalies in the code, or obtain a macroscopic understanding of the codebase health.

Check out the explore page to see it in action.

What Information Can You Extract?

The built-in plugins that come with CodeInsights provide a variety of useful information, such as:

  • Lines of code per file and per function, enabling you to identify the longest functions and files within your codebase.
  • The number of imports and their details, which helps in identifying the most frequently imported modules in your code.
  • The HTML tags used, offering insights into the most commonly used tags (useful for determining the most used components in component libraries).

There are also built in plugins that can be used to process the results, such as:

  • ChartJS Plugin - Generate charts definitions that can be used with ChartJS (UI is also available that supports these charts)
  • OpenSearch Plugin - send the data to OpenSearch instance and visualize with OpenSearch dashboards (comes with docker compose file)
  • Coralogix Plugin - send the data to your Coralogix account, you can then visualize it using OpenSearch dashboards or Coralogix Dashboards.

Use-Cases

  • CodeInsights can be used by using the tool from time to time to analyze your entire codebase
  • Integrate into CI to continuously generate reports
  • You can also use it to explore libraries you want to use, or contribute code to, to understand more about the general state of the project