Hello! I am currently learning Kotlin for the purp...
# getting-started
p
Hello! I am currently learning Kotlin for the purpose of Android development and I know that Kotlin already provides a large number of classes and functions for our use not only those implicitly imported from the
kotlin.*
package, but also external dependencies that can be imported via maven or gradle from the
kotlinx.*
package. However, it seems JetBrains has more packages that they have developed for Kotlin, the most notable one that I know of being
io.ktor.*
. Can someone provide me with a list of all of JetBrains officially developed and maintained external dependencies that are not part of
kotlin
or the
kotlinx
libraries, or point me to a source that lists them? Thank you!
d
Brought to you by ChatGPT
JetBrains officially backs and develops several Kotlin-related packages and libraries. Here’s a comprehensive list:
Kotlin Standard & Core Libraries
1. Kotlin Standard Library (kotlin-stdlib) – Provides essential Kotlin language features, collections, and utilities.
2. Kotlinx.coroutines (kotlinx-coroutines) – A library for asynchronous programming using coroutines.
3. Kotlinx.serialization (kotlinx-serialization) – A library for serializing and deserializing Kotlin objects (supports JSON, ProtoBuf, etc.).
4. Kotlinx.datetime (kotlinx-datetime) – A modern date-time library for Kotlin.
5. Kotlin Reflect (kotlin-reflect) – Reflection utilities for Kotlin.
Kotlin Multiplatform (KMP) Libraries
6. Kotlin Multiplatform (kotlin-multiplatform) – The core framework for building cross-platform applications.
7. Ktor (io.ktor) – An asynchronous framework for building web servers and clients in Kotlin.
8. Compose Multiplatform (org.jetbrains.compose) – A UI framework based on Jetpack Compose that works across multiple platforms.
9. SQLDelight (JetBrains maintains this with CashApp) (com.squareup.sqldelight) – A Kotlin Multiplatform SQL database library.
Build & Dependency Management
10. Kotlin Gradle Plugin (org.jetbrains.kotlin:kotlin-gradle-plugin) – The official Gradle plugin for building Kotlin projects.
11. Kotlin Compiler (org.jetbrains.kotlin:kotlin-compiler) – The Kotlin compiler.
12. Kotlin Symbol Processing (KSP) (com.google.devtools.ksp) – A Kotlin-native annotation processing tool, backed by JetBrains but primarily maintained by Google.
Testing & Debugging
13. Kotlin Test (kotlin-test) – A testing framework for Kotlin applications.
14. Kotlin Fuzzer (kotlin-fuzzer) – A fuzz testing framework for Kotlin.
15. Spek (org.spekframework.spek2) – A JetBrains-backed specification framework for Kotlin testing.
Data Science & Machine Learning
16. KotlinDL (org.jetbrains.kotlin-deeplearning) – A deep learning library built on TensorFlow and ONNX.
17. Kotlin Jupyter (org.jetbrains.kotlin-jupyter) – Support for Kotlin in Jupyter Notebooks.
Other Libraries
18. JetBrains Exposed (org.jetbrains.exposed) – A lightweight SQL database library for Kotlin.
19. KotlinPoet (com.squareup.kotlinpoet) – A Kotlin library for generating Kotlin code (JetBrains supports, but it’s maintained by Square).
This list includes both core Kotlin libraries and widely used Kotlin-related libraries developed or officially maintained by JetBrains. Let me know if you need more details on any of them! 🚀
p
Thanks for the response. I've also used Gemini prior to asking here and got a very similar response! However, I could not be sure if said list is exhaustive, and covers all of JetBrains official dependencies
d
That is true. I thought this answer might be better than no answer 🙂
j
The number of jetbrains dependencies is insane, why do you want to know them? You can go to the Maven Central repository and use its search to find anything from org.jetbrains
p
@Javier that does seem like a great way to get some of the dependencies, but as you can see, Ktor would not be found inside org.jetbrains since it belongs to it's own domain or io.ktor. I want to know if Jetbrains has any other unique packages like this
t
Take a look at my library to help you get started with KMP. It has everything any project could need https://github.com/Ares-Defence-Labs/KmpEssentials
👍 2