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.
-
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 becomes a server and waiting for a client to join to establish the socket connection.
- 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.
- 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.
- Click Here to download the latest apk.
- Android 7.0 and Above
- Min sdk version 24
- Internet
- 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.
Sitam Sardar |
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.