Welcome to the MinesweeperK project! This repository accompanies the Kotlearn YouTube series, where we build a Minesweeper game using Compose Multiplatform. The game runs on Android, iOS, and desktop platforms (Windows, macOS), following clean architecture and a multi-module project structure.
The main
branch contains the latest version of the project, including updates and refinements
made throughout the series. It represents the complete and up-to-date MinesweeperK project.
Each episode of the series has its own branch, which represents a snapshot of the project at the end of that episode. This allows you to easily explore or download the code relevant to any specific video.
- Introduction to the Series - Video
- Setting Up a Compose Multiplatform Project: Project Creation and Dependencies - Video
- How to Structure a Clean, Multi-Module Compose Multiplatform App - Video
- Koin Best Practices for Compose Multiplatform - Video
- Creating Global Padding and Dimensions in Jetpack Compose - Video
- Minesweeper UI with Jetpack Compose - Video
- DataStore for Kotlin Multiplatform - Local Preferences - Video
- Writing UI Tests for Compose Multiplatform - Video
- Automating Kotlin Multiplatform Releases with GitHub Actions - Video
- Custom Gradle Plugins: Clean Up Your Build Scripts! - Video
- Clone the repository:
git clone https://github.com/kotlearn/minesweeperk.git cd minesweeperk
- Check out a specific episode branch:
Replace 01-project-setup with the desired episode branch.
git checkout 01-project-setup
- YouTube Playlist: MinesweeperK Series
- Episode-Specific Code: Links to branches will be provided in video descriptions.
- Compose Multiplatform for shared UI across platforms
- Navigation Component for handling navigation
- Room Database for persistent storage
- Koin DI for dependency injection
- Clean Architecture to structure the codebase
This project is primarily for educational purposes, but contributions are welcome! If you’d like to improve or extend the project, feel free to open an issue or create a pull request.
Thanks to everyone that's contributed so far!
This project is licensed under the 0BSD License.
Happy coding, and enjoy learning Compose Multiplatform with MinesweeperK!