gina's portfolio
Back to featured projects

Community Android application

Get Fit St. Pete Mobile Application

A mobile application created to help St. Petersburg residents discover & schedule free fitness opportunities.

  • Java
  • Android Studio
  • SQLite
  • Material 3
  • JUnit

Purpose

A simple path from discovery to participation

The focused mobile experience makes free fitness opportunities easier to discover without forcing residents to navigate a large recreation catalog. Clear descriptions, meeting instructions, registration notices, and scheduling tools help residents know what to expect before traveling to a class.

Project status

Functional prototype

The application is complete and tested as an organizational review prototype. It supports existing City services and routes membership and limited-capacity registration to official pages.

Resident experience

Useful from first launch, with no account required

  • Browse upcoming Get Fit St. Pete and FitLot classes in one place
  • Search by activity, description, or park
  • Filter the recurring schedule by day
  • Review times, addresses, meeting instructions, and audience guidance
  • Save classes privately without creating an account
  • Open directions, add events to a calendar, or share classes
  • Continue to official City membership and registration pages

Interface gallery

The Material 3 interface presents class information consistently across schedule browsing, search, saved classes, and detailed resident actions.

Get Fit St. Pete home screen listing upcoming free fitness classes

Upcoming classes

Dates, times, parks, registration badges, and official updates are visible at a glance.

Get Fit St. Pete schedule with day filter controls

Day filters

Residents can narrow the recurring schedule and see the result count update immediately.

Get Fit St. Pete search results for Yoga in the Park

Class search

Search makes it easy to find a specific activity, description, or park.

Get Fit St. Pete My Schedule screen with a saved Pickleball class

My Schedule

Bookmarks create a private saved-class list using only on-device storage.

Pickleball class details with official pre-registration notice

Registration handoff

Capacity requirements are explained before the user continues to the official City site.

FitLot Training class details with location and resident actions

Complete class details

Location, directions, audience guidance, calendar, save, and share actions support confident participation.

Privacy & security

Personalized without collecting personal data

Privacy was treated as a core requirement. Earlier local-account features were intentionally removed so residents can use the app without submitting personal or health information.

  • No account or custom online user database
  • No collection of names, birthdays, email addresses, passwords, health information, or location history
  • Only an anonymous class identifier and save time are stored for bookmarks
  • Saved classes remain in the app's private SQLite database
  • Parameterized and validated database operations
  • Cleartext traffic disabled and external links validated as HTTPS
  • No location, contacts, storage, notification, camera, or microphone permissions

Verification

Built and tested for organizational review

  • Application build passed
  • Four automated unit tests passed with zero failures
  • Android lint reported no application-code warnings
  • Clean Android 16 emulator launch passed
  • Search, filters, details, registration notices, and saved classes passed

Platform

Android 8.0+ · API 26 minimum · API 36 target

Architecture

Focused native Android components

ClassCatalog.java

Recurring schedules, descriptions, locations, and official links.

DatabaseHelper.java

Private bookmark storage and secure legacy-data migration.

MainActivity.java

Schedule browsing, filters, search, and My Schedule.

EventDetailsActivity.java

Complete class information and resident actions.

Community impact

Technology designed to support an existing public program

Get Fit St. Pete demonstrates how a focused mobile experience can make community resources easier to discover while respecting privacy and keeping official membership and registration inside the City's existing systems.