Skip to content

RowdyHacks2024 hackathon entry. Android mobile banking application that features user authentication, session management, multithreading, and an implementation of merge sort.

Notifications You must be signed in to change notification settings

Chaz-Ortiz/rhDraft1

Repository files navigation

Chonky Boyz Financial Bank (Android App)

Welcome to the official repository for the Chonky Boyz Financial Bank Android app—a fun, secure, and user-friendly way to view account details and transaction history.

Built-in Multithreaded Clock & Accessibility-First UI

This app features a multithreaded user interface, where a real-time clock is displayed on-screen via a dedicated background thread. This ensures responsive UI updates without blocking the main thread, improving both performance and user experience.

The interface also includes large, high-contrast text and images to improve accessibility for users with visual impairments.

The transaction history is organized using a custom implementation of the Merge Sort algorithm in Java. Merge Sort is a divide-and-conquer algorithm with a predictable time complexity of O(n log n) in all cases (worst, average, and best). This makes it ideal for ensuring fast and stable performance when sorting large datasets, like detailed transaction logs.

Merge Sort

  • Stable sort: Maintains the relative order of equal elements (important for transaction ties)
  • Consistent performance: Unlike quicksort, Merge Sort does not degrade to O(n²) in the worst case
  • Predictable scaling: Efficient even as the number of transactions grows

Screenshots

Login Screen Home Screen Navigation Menu Account Info


Features

  • Live Clock UI: Real-time clock runs in a separate thread to ensure smooth and accurate time display without blocking the main UI thread
  • Account Overview: Displays the user’s account name and total balance clearly
  • Transaction History: Sorted using a custom Merge Sort implementation in Java for optimal performance; handles large datasets efficiently with a time complexity of O(n log n)
  • Smooth Navigation: Easily return to the home screen or move between views without delay
  • Secure Logout: Cleanly ends the session and returns to the login screen
  • Vision-Friendly UI: Large, high-contrast text and images designed for accessibility, especially for users with visual impairments

Tech Stack

  • Language: Java
  • Framework: Android SDK
  • UI Design: XML-based layouts with accessibility in mind
  • Multithreading: Java threads for non-blocking UI components
  • IDE: Android Studio

Screen Overview

  • LoginActivity: Handles user authentication
  • RegisterActivity: Supports new account registration
  • HomeActivity: Main dashboard with navigation
  • Act_Activity: Displays account and transaction details
  • ClockThread.java: Background thread managing the real-time clock display

Getting Started

  1. Clone the repository:
    git clone https://github.com/Chaz-Ortiz/rhDraft1/
    cd rhDraft1
    
    

Author

Chaz Ortiz GitHub · LinkedIn

About

RowdyHacks2024 hackathon entry. Android mobile banking application that features user authentication, session management, multithreading, and an implementation of merge sort.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages