Resources

Curated collection of essential Kotlin resources for learners and professional developers. From official documentation to community tools.

Official Documentation

Language Reference

Kotlin Language Reference

Complete official documentation covering all language features, syntax, and semantics.

  • Comprehensive language specification
  • Updated for Kotlin 2.x
  • Searchable and well-organized
  • Code examples throughout

Kotlin API Documentation

Full API reference for Kotlin standard library.

  • All standard library classes and functions
  • Organized by package
  • Detailed parameter and return type information
  • Usage examples and related functions

Kotlin Language Specification

Formal language specification for compiler implementers and advanced users.

  • Precise language semantics
  • Type system details
  • Grammar and syntax rules
  • Edge case behavior

Getting Started

Kotlin Official Tutorials

Official beginner tutorials from JetBrains.

  • Installation guides
  • First program tutorials
  • Platform-specific guides (JVM, Android, Native, JS)
  • Step-by-step learning paths

Kotlin Playground

Browser-based Kotlin compiler for experimenting with code.

  • No installation required
  • Instant execution
  • Share code snippets
  • Built-in examples

Kotlin Koans

Interactive exercises for learning Kotlin through practice.

  • 42 exercises covering all major features
  • Runs in browser
  • Immediate feedback
  • Difficulty progression

Development Tools

IDEs

IntelliJ IDEA

Primary IDE for Kotlin development with best-in-class support.

  • Kotlin plugin pre-installed
  • Intelligent code completion
  • Advanced refactoring
  • Integrated debugger
  • Free Community Edition available

Android Studio

Official IDE for Android development with full Kotlin support.

  • Based on IntelliJ IDEA
  • Android-specific tools
  • Kotlin first-class citizen
  • Layout editor and emulator

Visual Studio Code

Lightweight editor with Kotlin extension.

  • Kotlin Language extension
  • Syntax highlighting
  • Basic code completion
  • Lighter than full IDE

Build Tools

Gradle

Primary build tool for Kotlin projects with Kotlin DSL.

  • Gradle Kotlin DSL - Type-safe build scripts
  • Dependency management
  • Multi-project builds
  • Plugin ecosystem

Maven

Alternative build tool with Kotlin support.

  • Kotlin Maven Plugin - Official Maven plugin
  • XML-based configuration
  • Mature ecosystem
  • Standard project structure

Code Quality Tools

Detekt

Static code analysis tool for Kotlin.

  • 150+ built-in rules
  • Custom rule support
  • Gradle and Maven integration
  • HTML/XML/TXT reports

ktlint

Kotlin linter with built-in formatter.

  • Enforces official Kotlin coding conventions
  • Zero configuration
  • Auto-formatting
  • Gradle plugin available

KtLint Gradle Plugin

Gradle integration for ktlint.

  • Automatic formatting
  • Pre-commit hooks
  • CI/CD integration

Frameworks and Libraries

Web Development

Ktor

Asynchronous web framework for Kotlin.

  • Built on coroutines
  • Type-safe routing
  • Client and server
  • Lightweight and flexible

Spring Boot with Kotlin

Spring Framework with Kotlin support.

  • Kotlin-specific features
  • Null safety integration
  • Coroutine support
  • Extensive ecosystem

Database

Exposed

SQL library from JetBrains.

  • DSL and DAO APIs
  • Type-safe queries
  • Multiple database support
  • Coroutine integration

Ktorm

Lightweight ORM framework for Kotlin.

  • Fluent SQL DSL
  • Extensible and customizable
  • No code generation
  • Strong typing

Testing

MockK

Mocking library designed for Kotlin.

  • Kotlin-first API
  • Coroutine support
  • Extension function mocking
  • Relaxed mocks

Kotest

Testing framework with multiple styles.

  • Multiple testing styles (FunSpec, StringSpec, BehaviorSpec, etc.)
  • Property-based testing
  • Data-driven testing
  • Excellent assertions library

Serialization

kotlinx.serialization

Official multiplatform serialization library.

  • JSON, CBOR, ProtoBuf support
  • Compiler plugin-based
  • Type-safe
  • Multiplatform compatible

Gson

Popular JSON library with Kotlin support.

  • Mature and stable
  • Flexible configuration
  • Good performance
  • Wide adoption

Community Resources

Learning Platforms

Kotlin by Example

Official learn-by-example resource.

  • Practical examples
  • Organized by topic
  • Interactive playground
  • Beginner-friendly

Kotlin for Java Developers (Coursera)

Official course from JetBrains.

  • Structured curriculum
  • Video lectures
  • Hands-on assignments
  • Certificate available

Atomic Kotlin

Book and learning platform by Bruce Eckel.

  • Comprehensive coverage
  • Beginner to advanced
  • Exercises and solutions
  • Modern Kotlin practices

Blogs and Articles

Kotlin Blog (Official)

Official blog from JetBrains Kotlin team.

  • Release announcements
  • Feature deep-dives
  • Best practices
  • Community highlights

Kotlin Weekly

Weekly newsletter with curated Kotlin content.

  • Articles and tutorials
  • Library updates
  • Conference talks
  • Community news

ProAndroidDev - Kotlin

Android and Kotlin articles on Medium.

  • Practical tutorials
  • Real-world examples
  • Expert perspectives
  • Active community

Community Forums

Kotlin Discussions

Official community forum.

  • Language design discussions
  • Help and support
  • Feature requests
  • Library announcements

Kotlin Slack

Active Slack workspace with multiple channels.

  • Real-time help
  • Channels for specific topics
  • Direct interaction with Kotlin team
  • Job postings

r/Kotlin (Reddit)

Reddit community for Kotlin developers.

  • News and discussions
  • Q&A
  • Project showcases
  • Resource sharing

Video Content

Kotlin YouTube Channel

Official YouTube channel from JetBrains.

  • Conference talks
  • Tutorial videos
  • Feature announcements
  • Live coding sessions

KotlinConf Talks

Talks from official Kotlin conference.

  • Advanced topics
  • Best practices
  • Real-world case studies
  • Community presentations

Books

Kotlin in Action by Dmitry Jemerov and Svetlana Isakova

Comprehensive guide from Kotlin team members.

  • Fundamentals to advanced topics
  • Best practices
  • Real-world examples
  • Second edition available

Head First Kotlin by Dawn Griffiths and David Griffiths

Beginner-friendly introduction.

  • Visual learning approach
  • Hands-on exercises
  • Engaging format
  • Covers Android development

Programming Kotlin by Venkat Subramaniam

Practical guide for developers.

  • Functional programming focus
  • Idiomatic Kotlin
  • Testing and debugging
  • Real-world applications

Tools and Utilities

Package Repositories

Maven Central

Primary repository for Kotlin and JVM libraries.

  • Official JetBrains libraries
  • Third-party packages
  • Version history
  • Dependency information

JitPack

Build GitHub repositories as Maven dependencies.

  • Automatic builds
  • No manual publishing
  • Easy integration
  • Version tags support

Online Compilers

Kotlin Playground

Official online compiler.

  • No setup required
  • Share snippets
  • Multiple targets (JVM, JS)
  • Built-in examples

OneCompiler - Kotlin

Alternative online compiler.

  • Quick testing
  • Multiple language support
  • Save and share code
  • Simple interface

Code Snippets and Examples

Kotlin Code Samples

Official example repository.

  • Various project types
  • Build configurations
  • Framework integrations
  • Best practices

Awesome Kotlin

Curated list of Kotlin resources.

  • Libraries organized by category
  • Articles and tutorials
  • Tools and plugins
  • Community projects

Official Social Media

X (formerly Twitter): @kotlin

Official X account.

  • News and updates
  • Community highlights
  • Event announcements

LinkedIn: JetBrains

JetBrains LinkedIn page (creators of Kotlin).

  • Professional network
  • Job opportunities
  • Company updates

Facebook: Kotlin

Official Facebook page.

  • Community posts
  • Event information

Contributing to Kotlin

Kotlin GitHub Repository

Kotlin compiler and standard library source code.

  • Report issues
  • Contribute code
  • Review pull requests
  • Read design documents

Kotlin Evolution and Enhancement Process (KEEP)

Language evolution proposals.

  • Feature proposals
  • Design discussions
  • Community feedback
  • Implementation status

Kotlin Style Guide

Official coding conventions.

  • Naming conventions
  • Formatting rules
  • Best practices
  • Idiomatic code patterns

Platform-Specific Resources

Kotlin/JVM

Java Interop Guide

Using Kotlin with Java code.

  • Calling Java from Kotlin
  • Calling Kotlin from Java
  • Nullability annotations
  • Platform types

Kotlin/JS

Kotlin/JS Documentation

JavaScript platform resources.

  • Browser and Node.js
  • npm integration
  • React wrapper
  • JavaScript interop

Kotlin/Native

Kotlin/Native Documentation

Native platform resources.

  • iOS development
  • Cross-platform mobile
  • C interop
  • Memory management

Kotlin Multiplatform

Kotlin Multiplatform Documentation

Sharing code across platforms.

  • Common code
  • Platform-specific implementations
  • Expect/actual mechanism
  • Target platforms

Learn More

Comprehensive Learning Path:

Reference Materials:

Last updated