Hi Tanzeel,

Welcome! We’re very glad to have you contribute to Calcite. Calcite covers a 
wide range of areas, including the SQL parser, optimizer, executor, SQL 
dialects, and various adapters. You can find a module that interests you based 
on your preferences.


The first approach is to read the Calcite official documentation [1]. This is a 
good starting point, as the documentation systematically introduces Calcite’s 
features. However, it seems to have not been updated for several years, so some 
parts may need to be supplemented or might be outdated. Maintaining the 
documentation can help you quickly get familiar with Calcite.


The second approach is to check the unresolved issues in the Calcite JIRA [2]. 
This allows you to engage with Calcite in a more targeted way.


The third approach is to follow the pull requests submitted to the Calcite 
community [3]. Reviewing these PRs, learning from them, and participating in 
discussions may help you discover even more interesting things to work on.


[1] https://calcite.apache.org/docs/index.html  
[2] https://issues.apache.org/jira/projects/CALCITE/issues  
[3] https://github.com/apache/calcite/pulls



Best regards,

Zhen

---- Replied Message ----
| From | Tanzeel Alam<[email protected]> |
| Date | 6/4/2026 12:14 |
| To | <[email protected]> |
| Subject | New contributor interested in Apache Calcite |
Hello Calcite community,

I am a *Java developer* currently learning database internals and I am
interested in *contributing to Apache Calcite.*

I have started *exploring the codebase* and trying to build the project
locally.

Could you please *guide me* towards what should I *learn *and how should I
start *contributing *in good first issues.

I would like to *contribute consistently* and understand the project deeply.

Thank you.

Reply via email to