Skip to content

Commit d199b10

Browse files
committed
fix(ktl-3860): added images and fixed formatting for kotlin lsp project
1 parent c3f0640 commit d199b10

File tree

4 files changed

+54
-26
lines changed

4 files changed

+54
-26
lines changed
144 KB
Loading
66.9 KB
Loading
30.5 KB
Loading
Lines changed: 54 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,71 @@
11
---
22
title: "Google Summer of Code 2025 – Build a Modern, Compiler-Integrated Kotlin Language Server"
33
date: 2025-11-19 11:45
4-
coverImage: "./cover.png"
5-
socialImage: "./social.png"
4+
coverImage: "./gsoc-2025.png"
5+
socialImage: "./gsoc-2025.png"
66
---
7-
8-
# Build a Modern, Compiler-Integrated Kotlin Language Server
9-
10-
>It was incredibly rewarding to see my work tested, reviewed, and used by others in the community. - Hemram
11-
12-
[Project page](https://github.com/h4-mm-3r/kotlin-lsp)
13-
14-
Mentors: Shauvik Roy Choudhary, Ryan U, Michael Noah, Claudia Babescu (all from Uber)
7+
import hemramImg from "./hemram.jpg"
8+
9+
<style>{`
10+
.gsoc-author-card {
11+
display: flex;
12+
align-items: flex-start;
13+
gap: 40px;
14+
margin-bottom: 20px;
15+
@media (max-width: 472px) {
16+
display: block;
17+
}
18+
}
19+
.gsoc-author-img {
20+
border-radius: 50%;
21+
flex-shrink: 0;
22+
margin-top: 0;
23+
margin-bottom: 20px;
24+
}
25+
.gsoc-quote {
26+
margin: 0;
27+
}
28+
`}</style>
29+
30+
<div className="gsoc-author-card">
31+
<img src={hemramImg} alt="Hemram" width="150" className="gsoc-author-img" />
32+
33+
<blockquote className="gsoc-quote">
34+
"It was incredibly rewarding to see my work tested, reviewed, and used by others in the community."
35+
36+
**Hemram**
37+
</blockquote>
38+
</div>
39+
40+
**[Project page](https://github.com/h4-mm-3r/kotlin-lsp)**
41+
42+
**Mentors**: Shauvik Roy Choudhary, Ryan U, Michael Noah, Claudia Babescu (all from Uber)
1543

1644
From picking up Kotlin from scratch to building a compiler-integrated Language Server with the new Analysis API, Hemram’s project expanded the boundaries of Kotlin tooling.
1745

1846
Working with mentors from Uber and the Kotlin Foundation, he delivered a modern, open foundation for editor integrations and future AI-assisted tools for the Kotlin Language Server Protocol.
1947

20-
## **About the author**
48+
## About the author
2149

2250
Hi, I’m Hemram, a developer from Bangalore, India, passionate about developer tooling and compiler technologies.
2351

24-
## **Intro and motivation**
52+
## Intro and motivation
2553

2654
I’ve always been curious about how Language Server Protocols (LSPs) work behind the scenes. When I came across this project idea during Google Summer of Code 2025, it immediately caught my interest.
2755

2856
During that time, I was exploring kotlin-language-server, which is an open-source Kotlin LSP using `kotlinc` under the hood. I had experienced some bottlenecks and understood what the community wanted. On researching further, I found out about the Kotlin Analysis API, which is a better way to communicate with the K2 compiler compared to the inefficient `kotlinc`. This formed the base of my proposal for this LSP project.
2957

30-
## **Technical Highlights**
58+
## Technical Highlights
3159

3260
The project involved designing a new Language Server Protocol (LSP) implementation based on version 3.17 of the spec.
3361

34-
### **Key components:**
62+
### Key components:
3563

3664
* **Kotlin Analysis API** – leveraged for semantic analysis and compiler-backed insights.
3765
* **LSP4J** – the Java framework used for implementing the LSP specification.
3866
* **RocksDB** – integrated as a persistent key-value store for efficient codebase indexing and symbol resolution.
3967

40-
### **Core features implemented:**
68+
### Core features implemented:
4169

4270
* Project handling for the Gradle build system (single and multi-module for both Vanilla and Android)
4371
* *Go to Definition*
@@ -51,31 +79,31 @@ The project involved designing a new Language Server Protocol (LSP) implementati
5179

5280
[RoadMap](https://github.com/H4-MM-3R/kotlin-lsp/blob/main/docs/roadmap.md)
5381

54-
### **High-level overview**
82+
### High-level overview
5583

56-
![][GSoC4]
84+
![overview](gsoc4.png)
5785

58-
## **About my GSoC experience**
86+
## About my GSoC experience
5987

6088
It was an exciting period working under the Kotlin Foundation, building a Kotlin language server.
6189

6290
I first heard about GSoC a few years ago and always admired how contributors made a real impact in open-source ecosystems. This year, I finally took the leap, and it’s been a rewarding experience from start to finish.
6391

6492
There were some challenges along the way, like when the official Kotlin LSP was announced at KotlinConf 2025\. As it was in the pre-alpha stage, I had to fork an incomplete project and contribute to GSoC on the basis of that. Beyond that, the journey was pretty smooth, with the completion of the Kotlin LSP as an MVP.
6593

66-
## **What I learned**
94+
## What I learned
6795

6896
As it was the starting point of my open-source journey, I learned about how real collaboration happens, from writing clear commits and discussing design choices to adapting when project goals shift.
6997

7098
One of the biggest takeaways from my GSoC journey was stepping out of my comfort zone and realizing how much it stretched my learning curve. I had to pick up Kotlin from scratch, explore the Analysis API, and work across multiple tools and environments. It was also incredibly rewarding to see my work tested, reviewed, and used by others in the community.
7199

72-
## **Resources**
100+
## Resources
73101

74-
[Project Page](https://summerofcode.withgoogle.com/programs/2025/projects/Y8cK79RJ)
75-
[GitHub Repo](https://github.com/h4-mm-3r/kotlin-lsp)
102+
* [Project Page](https://summerofcode.withgoogle.com/programs/2025/projects/Y8cK79RJ)
103+
* [GitHub Repo](https://github.com/h4-mm-3r/kotlin-lsp)
76104

77-
## **Contacts**
105+
## Contacts
78106

79-
\- [LinkedIn](https://www.linkedin.com/in/hemram-kumarapu/)
80-
\- [GitHub](https://github.com/h4-mm-3r)
81-
\- \[Email\](kuheram777@gmail.com)
107+
* [LinkedIn](https://www.linkedin.com/in/hemram-kumarapu/)
108+
* [GitHub](https://github.com/h4-mm-3r)
109+
* Email: [kuheram777@gmail.com](mailto:kuheram777@gmail.com)

0 commit comments

Comments
 (0)