From f130f58901005b6aab2ea50a10ae90ea3fa83899 Mon Sep 17 00:00:00 2001 From: Andrey Polyakov Date: Fri, 25 Aug 2023 13:58:17 +0200 Subject: [PATCH] feat: move Hands-on start page to the Kotlin docs (#3578) * update: move Hands-on start page to the Kotlin docs * update: update docs/topics/kotlin-hands-on.md Co-authored-by: Danil Pavlov * Apply suggestions from code review Co-authored-by: Sarah Haggarty <81160244+sarahhaggarty@users.noreply.github.com> * fix: fix the toc --------- Co-authored-by: Danil Pavlov Co-authored-by: Sarah Haggarty <81160244+sarahhaggarty@users.noreply.github.com> --- docs/kr.tree | 1 + docs/topics/home.xml | 2 +- docs/topics/kotlin-hands-on.md | 76 ++++++++++++++++++++++ docs/topics/learning-materials-overview.md | 2 +- 4 files changed, 79 insertions(+), 2 deletions(-) create mode 100644 docs/topics/kotlin-hands-on.md diff --git a/docs/kr.tree b/docs/kr.tree index 1a77f7b947d..20c65acf3fe 100644 --- a/docs/kr.tree +++ b/docs/kr.tree @@ -394,6 +394,7 @@ + diff --git a/docs/topics/home.xml b/docs/topics/home.xml index 2480bb3bc75..090bc3c02d7 100644 --- a/docs/topics/home.xml +++ b/docs/topics/home.xml @@ -50,7 +50,7 @@ Koans JetBrains Academy Advent of Code - Hands-on tutorials + Hands-on tutorials JetBrains Academy in IntelliJ IDEA diff --git a/docs/topics/kotlin-hands-on.md b/docs/topics/kotlin-hands-on.md new file mode 100644 index 00000000000..4b1308eeae7 --- /dev/null +++ b/docs/topics/kotlin-hands-on.md @@ -0,0 +1,76 @@ +[//]: # (title: Kotlin hands-on) + +A series of hands-on tutorials where you can create applications with Kotlin using a variety of different technologies and targeting multiple platforms. +The exercises are divided into a series of steps, walking you through each section. + +## Building Reactive Spring Boot applications with Kotlin coroutines and RSocket + +Build a simple chat application using Spring Boot and Kotlin, and learn about the benefits of using Kotlin for server-side development from a syntax perspective. + +[**Start**](https://spring.io/guides/tutorials/spring-webflux-kotlin-rsocket/) + +## Building web applications with React and Kotlin/JS + +Create a React Application using Kotlin/JS, and see how you can leverage Kotlin's type system, library ecosystem, and interoperability features. + +[**Start**](js-react.md) + +## Building web applications with Spring Boot and Kotlin + +Build a sample blog application by combining the power of Spring Boot and Kotlin. + +[**Start**](https://spring.io/guides/tutorials/spring-boot-kotlin/) + +## Creating HTTP APIs with Ktor + +Create a backend API for your application that responds to HTTP requests. + +[**Start**](https://ktor.io/docs/creating-http-apis.html) + +## Creating a WebSocket chat with Ktor + +Create a simple Chat application using Ktor including both a JVM server and a JVM client. + +[**Start**](https://ktor.io/docs/creating-web-socket-chat.html) + +## Creating an interactive website with Ktor + +Learn how to serve files, use templating engines such as Freemarker and the kotlinx.html DSL, and work with form input from Ktor. + +[**Start**](https://ktor.io/docs/creating-interactive-website.html) + +## Building a full stack web app with Kotlin Multiplatform + +Create an application with Kotlin/JVM and Kotlin/JS, and explore topics around code sharing, serialization, server- and client-side development. + +[**Start**](multiplatform-full-stack-app.md) + +## Introduction to Kotlin coroutines and channels + +Learn about coroutines in Kotlin and how you can communicate between them using channels. + +[**Start**](coroutines-and-channels.md) + +## Introduction to Kotlin/Native + +Create a simple HTTP client that can run natively on multiple platforms using Kotlin/Native and libcurl. + +[**Start**](native-app-with-c-and-libcurl.md) + +## Introduction to Kotlin/Native concurrency + +Learn about the concurrency model in Kotlin/Native, and how to work with state in a multithreaded environment. + +[**Start**](multiplatform-mobile-concurrency-overview.md) + +## Kotlin Multiplatform: networking and data storage + +Learn how to create a mobile application for Android and iOS using Kotlin Multiplatform with Ktor and SQLDelight. + +[**Start**](multiplatform-mobile-ktor-sqldelight.md) + +## Targeting iOS and Android with Kotlin Multiplatform + +Learn how to create a mobile application that can target both iOS and Android using Kotlin Multiplatform. + +[**Start**](multiplatform-mobile-create-first-app.md) \ No newline at end of file diff --git a/docs/topics/learning-materials-overview.md b/docs/topics/learning-materials-overview.md index 6c6d38c6763..2e6716cb2ff 100644 --- a/docs/topics/learning-materials-overview.md +++ b/docs/topics/learning-materials-overview.md @@ -12,6 +12,6 @@ You can use the following materials and resources for learning Kotlin: * [Kotlin books](books.md) – find books we've reviewed and recommend for learning Kotlin. * [Kotlin tips](kotlin-tips.md) – watch short videos where the Kotlin team shows you how to use Kotlin in a more efficient and idiomatic way, so you can have more fun when writing code. * [Advent of Code puzzles](advent-of-code.md) – learn idiomatic Kotlin and test your language skills by completing short and fun tasks. -* [Kotlin hands-on tutorials](https://play.kotlinlang.org/hands-on/overview) – complete long-form tutorials to fully grasp a technology. These tutorials guide you through a self-contained project related to a specific topic. +* [Kotlin hands-on tutorials](kotlin-hands-on.md) – complete long-form tutorials to fully grasp a technology. These tutorials guide you through a self-contained project related to a specific topic. * [Kotlin for Java Developers](https://www.coursera.org/learn/kotlin-for-java-developers) – learn the similarities and differences between Java and Kotlin in this course on Coursera. * [Kotlin documentation in PDF format](kotlin-pdf.md) – read our documentation offline.