Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
66 changes: 50 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,24 +1,55 @@
This is a Kotlin Multiplatform project targeting Android, iOS, Web, Desktop.
# Kotlin Dictionary 📚

* `/composeApp` is for code that will be shared across your Compose Multiplatform applications.
It contains several subfolders:
- `commonMain` is for code that’s common for all targets.
- Other folders are for Kotlin code that will be compiled for only the platform indicated in the folder name.
For example, if you want to use Apple’s CoreCrypto for the iOS part of your Kotlin app,
`iosMain` would be the right folder for such calls.
![Kotlin Dictionary Banner](assets/banner.png)

* `/iosApp` contains iOS applications. Even if you’re sharing your UI with Compose Multiplatform,
you need this entry point for your iOS app. This is also where you should add SwiftUI code for your project.
---

Kotlin Dictionary is a student-led, cross-platform app designed to help learners dive deep into the Kotlin programming language. It serves as an interactive reference where you can explore topics with clear explanations and reinforce your learning through quizzes.
_The data is powered by AI tools which help automate content generation, ensure consistency, and speed up the documentation._

---

## About This Project

This project is part of a collaborative learning effort by students passionate about Kotlin, Jetpack Compose, and cross-platform development. It is being built as we explore and experiment with Kotlin Multiplatform capabilities.

We're exploring core Kotlin concepts and building this app as a way to document our journey, reinforce what we learn, and share it with others along the way.

The Kotlin Dictionary project is being guided by [@RajashekarRaju](https://github.com/RajashekarRaju), who mentors contributors throughout the process. This includes:

- Providing architectural guidance
- Reviewing contributions
- Suggesting improvements
- Promoting best practices in Kotlin development

We're all learning together, and the code evolves as we grow!

---

Learn more about [Kotlin Multiplatform](https://www.jetbrains.com/help/kotlin-multiplatform-dev/get-started.html),
[Compose Multiplatform](https://github.com/JetBrains/compose-multiplatform/#compose-multiplatform),
[Kotlin/Wasm](https://kotl.in/wasm/)
## 🎨 Concept Design

Here’s an early concept image illustrating the app’s design:

![Concept Design](assets/img_concept.png)

---

## 📱 Screenshots

Here are a couple of early previews from the Android version of the app:

<p>
<img src="assets/img_topic_screen.png" alt="Topic Screen" width="150"/>
<img src="assets/img_detail_screen_variables.png" alt="Detail Screen" width="150"/>
</p>

> *More previews coming soon as the UI progresses!*
---

We would appreciate your feedback on Compose/Web and Kotlin/Wasm in the public Slack channel [#compose-web](https://slack-chats.kotlinlang.org/c/compose-web).
If you face any issues, please report them on [GitHub](https://github.com/JetBrains/compose-multiplatform/issues).
## ⚠️ Disclaimer

You can open the web application by running the `:composeApp:wasmJsBrowserDevelopmentRun` Gradle task.
This is an educational project developed by students. Expect rapid changes, experiments, and ongoing improvements as part of the learning journey. 😊

---

Expand All @@ -34,4 +65,7 @@ You can open the web application by running the `:composeApp:wasmJsBrowserDevelo
- [ ] Introduce common @Preview annotations for reusable Composable previews.
- [ ] Implement section-wise scroll behavior on the `Detail Screen` for better navigation.
- [ ] Add inline code formatting support for syntax display on the `Detail Screen`.
- [ ] Replace the search icon on the `Topic Card` to improve visual consistency.
- [ ] Replace the search icon on the `Topic Card` to improve visual consistency.
- [ ] Implement caching on the `Detail Screen` to store previously viewed topic data.
- [ ] Switch AI integration from OpenAI to Gemini.
- [ ] Refactor network layer for cleaner architecture.
Binary file added assets/banner.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/img_concept.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/img_detail_screen_variables.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/img_topic_screen.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading