PPH Ticketing System (Ples pod hviezdami)
An Android application built with Kotlin and Jetpack Compose for managing school ball tickets using Mifare NFC cards and real-time cloud synchronization.
Important Setup Instructions (Will not build out of the box)
For security reasons, the Firebase configuration file (google-services.json) has been excluded from this repository. If you clone this project, it will crash on build until you connect it to your own Firebase project.
- Go to the Firebase Console and create a new project.
- Navigate to Firestore Database and create a new database.
- Update the Firestore Rules to allow read/write access for your environment (e.g.,
allow read, write: if true; for private internal testing).
- Register a new Android App in your Firebase project settings. Ensure the package name exactly matches the one used in this project’s
build.gradle.kts.
- Download the
google-services.json file provided by Firebase.
- Place the
google-services.json file directly into the app/ directory of this project.
- Sync Gradle in Android Studio and run the app.
Features
- Sales Mode: Scan physical NFC cards, assign student details, and save directly to the cloud.
- Checking Mode: Verify tickets at the door with highly visible UI indicators (Green for valid, Red for denied).
- Live Statistics: Real-time dashboard tracking total sales, currently present guests, and expected arrivals.
- Entry/Exit Tracking: Logs precise timestamps for every entry and exit, and features an “Already Inside” warning to prevent ticket sharing over the fence.
- Persistent Sessions: Saves the active seller’s username locally via SharedPreferences for fast operation.
Tech Stack
- Android SDK / Kotlin
- Jetpack Compose (Modern UI)
- Firebase Cloud Firestore (Real-time NoSQL Database)
- Native Android NFC hardware API
Language
The app is currently built to be primarily used by speakers of the Slovak language, as that is the language at the school this was built for. However I am working on making a completely English and French version. For other languages, contact me if you speak them and are willing to translate the app. Thank you for your understanding!
App Demo
(Watch the NFC scanning in action!)

Download
Download the v1.0.1 Release APK!