/T3

An realtime multiplayer Tic-Tac-Toe game built with Jetpack Compose

Primary LanguageKotlinMIT LicenseMIT

poster

T3 🎮

T3 is a multiplayer real-time Tic-Tac-Toe game that uses the Socket Programming internally. In simple, this app demonstrates a real-world application of socket programming in Kotlin without using any external server.

Android Kotlin
Minimum API Level Maximum API Level GitHub repo size License Open Source Love svg1 PRs Welcome contributions welcome Maintenance

Here is the basic instruction about app functionality,

  • To enjoy this game you need connect to a common wifi connection.

  • Host Game 🧩

Here as a player, you can host the game. After clicking on the "Host Game" button a QR will appear. Internally if you are hosting the game, it means your device now becomes a server and waiting for a client to join so that the socket connection can be established.

  • Join Game 👥

Here as a player, you can join a hosted game. After clicking on the "Join Game" button a QR SCanner will appear. Now you need to scan any host's QR from your app. Internally if you are joining the game, it means your device now becomes a client which is joining to a SocketServer so that the socket connection can be established.

Built With 🛠

  • Kotlin - First class and official programming language for Android development.
  • Coroutines - For asynchronous and more. With the help of Coroutines the Socket programming logic and the game's business logic is implemented.
  • Jetpack Compose - Jetpack Compose is Android's recommended modern toolkit for building native UI. It simplifies and accelerates UI development on Android. Our whole application's UI is built with jetpack compose.
  • Module Install Apis - This is an API provided by Google to ensure different Google API availability with ModuleInstallClient in our android devices. Here in our app, we are ensuring the Google Play's scanner module availability.
  • Google code Scanner - The Google code scanner API provides a complete solution for scanning code without requiring your app to request camera permission, while preserving user privacy. We have used it to create the QR code scanner at the time of game joining.
  • Zxing - Zxing is an open-source barcode scanning library for Java and Android. Here we have used it to generate the QR at the time game hosting.

Screenshots 📷

light_screenshot

Download 📥

  • Click Here to download the latest apk.

Requirements 🎯

  • Android 7.0 and Above
  • Min sdk version 24

Permissions 💻

  • Internet

Contributing Guideline ✍

  • Before start your contribution please go through our contribution guideline carefully. (READ)
  • You need to push your PR on develop branch only.
  • Join our whatsapp group for further discussion.CLICK HERE TO JOIN.

😎Maintainers


Sitam Sardar

License

MIT License

Copyright (c) 2023 Sitam Sardar

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

If you liked the project don't forget to star 🌟 and fork 🍽 the project.

forthebadge ForTheBadge ANDROID ForTheBadge GIT

Credits goes to these people:✨



❤ Built with Love ❤