A Kotlin Android UI prototype for an SLIIT student shuttle/booking concept: an onboarding flow, sign-in/up screens, route selection, a stub QR screen, and payment/profile screens. It is a front-end-only prototype — there is no backend integration, live bus tracking, or payment processing.
Coursework project — UI prototype only. The activities wire screen-to-screen navigation with Intents and local layouts; no network, database, maps, QR generation, or payment logic is implemented. Not under active development.
Ownership note: The application package is
com.example.sliitshuttleand the project is coursework-named, so ownership beyond Dilan Dilruksha has not been confirmed. No open-source license has been added. See License.
- Splash, welcome, and three onboarding screens
- Sign-in and sign-up screens
- Home with bus-route selection (Negombo–Malabe, Panadura–Malabe, Kolpity–Malabe)
- Bus detail, QR, payment, and profile screens
- Bottom navigation between screens via
ImageButtonclicks andIntentnavigation
A set of unrelated activities, each binding a layout with findViewById and starting the next activity on click. No ViewModel, no LiveData, no Room, no repository. Dependencies are limited to AndroidX core/appcompat, Material, ConstraintLayout, and play-services-maps (declared but not used).
- Language: Kotlin
- Platform: Android (
minSdk24,compileSdk/targetSdk34), Java 8 compatibility - UI: AndroidX appcompat, Material Components, ConstraintLayout
- Build: Gradle Kotlin DSL, AGP 8.2.2, Kotlin 1.9.22
- Maps dependency:
com.google.android.gms:play-services-maps:18.2.0is declared but currently unused — noGoogleMap/MapView/SupportMapFragmentis used in any activity - Testing: JUnit 4 and Espresso (template test stubs only)
.
├── app/
│ ├── build.gradle.kts
│ └── src/
│ ├── main/
│ │ ├── java/com/example/sliitshuttle/ # activities
│ │ │ ├── MainActivity.kt
│ │ │ ├── welcome.kt / SplashScreen (~manifest)
│ │ │ ├── onboard_screen_1.kt / 2.kt / 3.kt
│ │ │ ├── Sign_In.kt / Sign_Up.kt
│ │ │ ├── Home.kt / Bus_detail.kt
│ │ │ ├── select_bus_screen.kt
│ │ │ ├── QR_code.kt / payment.kt / profile.kt
│ │ ├── res/ # layouts, drawables, strings, themes
│ │ └── AndroidManifest.xml
│ ├── test/ # ExampleUnitTest.kt (stub)
│ └── androidTest/ # ExampleInstrumentedTest.kt (stub)
├── build.gradle.kts
├── settings.gradle.kts
├── gradle/ gradlew gradlew.bat
└── README.md
- Android Studio
- Android SDK 34 (build tools)
- An emulator or physical device running Android
minSdk24 (Android 7.0) or newer
-
Clone the repository:
git clone https://github.com/dilrukshax/SLIITShuttle cd SLIITShuttle -
Open the project in Android Studio (File → Open → select the project root) and let Gradle sync.
-
Build and run on an emulator or physical device:
./gradlew assembleDebug ./gradlew installDebug # device/emulator must be connected
Only the Android Studio template test stubs (ExampleUnitTest.kt, ExampleInstrumentedTest.kt) are present; there are no project-specific tests. Tests were not executed as part of this documentation update.
./gradlew test # unit tests
./gradlew connectedCheck # instrumented tests (needs device/emulator)This is an Android application; "deployment" means building the APK/AAB and installing on a device. No backend or deployment URL.
- UI prototype only — no live bus tracking, payment, or QR generation logic.
- The
play-services-mapsdependency is declared but no map is rendered in any activity. - No automated tests beyond Android Studio template stubs.
This is a coursework project and not accepting external contributions.
No license file is present. Because this repository appears to be coursework (com.example.sliitshuttle), ownership has not been confirmed and no open-source license has been added. If you intend to use this code, first clarify ownership with the contributors.
Dilan Dilruksha
Software Engineer | Backend & Full-Stack Development
Portfolio: https://dilandilruksha.dev
LinkedIn: https://www.linkedin.com/in/dilan-dilruksha
GitHub: https://github.com/dilrukshax
