Skip to content

lomartins/tip-splitter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

19 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Tip Splitter πŸ’΅

App Logo

Professional bill splitting calculator app built with Flutter. Instantly calculate tip percentages and split bills fairly among friends.

Overview

Tip Splitter is a clean, intuitive Android app designed to make splitting restaurant bills and calculating tips effortless. Whether you're at a casual lunch or a fancy dinner, this app handles the math while you enjoy the meal.

Status: v1.0.0 - Production Release
Platform: Android (Minimum SDK: 21)
Build: 49.4 MB APK

Key Features

πŸ’° Flexible Bill Input

  • Enter any bill amount in Brazilian Real (R$)
  • Clear, large display for easy readability
  • Real-time calculations as you type

🎯 Smart Tip Calculation

  • Preset tip buttons: 10%, 15%, 20% for quick selection
  • Custom slider: Fine-tune tip from 0% to 50%
  • Visual feedback with checkmark on selected tip

πŸ‘₯ Easy Bill Splitting

  • Increment/decrement number of people with +/- buttons
  • Automatically recalculates per-person cost
  • Clear breakdown of costs

πŸ“Š Detailed Payment Breakdown

  • Bill amount clearly displayed
  • Tip calculation with percentage shown
  • Per-person cost highlighted in prominent blue section
  • Shows exact amounts for bill, tip, and total

Screenshots

Home Screen - Bill Calculator

Home Screen

The main interface displays:

  • Bill amount input field
  • Tip percentage selector with preset buttons and slider
  • Number of people splitter
  • Real-time cost breakdown
  • Per-person payment summary in accent color

Technical Stack

Component Technology
Framework Flutter
Language Dart
State Management BLoC Pattern
Storage Shared Preferences
Build System Gradle
Package Manager Pub

Dependencies

  • flutter_bloc - State management
  • equatable - Equality comparison
  • intl - Internationalization
  • shared_preferences - Local storage
  • animated_text_kit - Text animations
  • cupertino_icons - iOS-style icons

Design System

Color Palette

  • Primary: #2541d4 (Vibrant Blue)
  • Theme: #3d5afe (Accent Blue)
  • Background: Light gray with white cards

Typography

  • Material Design compliant
  • Clear, legible sans-serif fonts
  • Supports Material Icons

UX Principles

  • Minimal, distraction-free interface
  • Quick action buttons for common tip amounts
  • Continuous feedback from slider interactions
  • Large, tap-friendly controls

Installation & Running

Build Release APK

flutter build apk --release

Output: build/app/outputs/flutter-apk/app-release.apk (49.4 MB)

Run on Emulator

flutter run --release

Deploy to Device

flutter install -v

Project Structure

tip_splitter/
β”œβ”€β”€ lib/
β”‚   β”œβ”€β”€ main.dart              # App entry point
β”‚   β”œβ”€β”€ app.dart              # App configuration
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ bloc/            # BLoC state management
β”‚   β”‚   β”œβ”€β”€ models/          # Data models
β”‚   β”‚   β”œβ”€β”€ views/           # UI screens
β”‚   β”‚   β”œβ”€β”€ widgets/         # Reusable components
β”‚   β”‚   └── utils/           # Helper functions
β”œβ”€β”€ assets/
β”‚   └── icon/                 # App icons and logos
β”‚       β”œβ”€β”€ icon.png         # Main app icon
β”‚       └── icon_foreground.png # Adaptive icon
β”œβ”€β”€ android/
β”‚   └── app/                  # Android native configuration
β”œβ”€β”€ pubspec.yaml              # Dependencies
└── README.md                 # Original docs

Features Highlights

✨ What makes it special:

  1. Instant Calculations - Results update in real-time as you adjust values
  2. Smart Defaults - Common tip percentages at your fingertips
  3. Flexible Control - Both preset buttons and continuous slider for precision
  4. Clear Breakdown - See exactly what each person owes before paying
  5. No Network Required - Works completely offline
  6. Persistent Storage - Remembers your preferences between sessions

Performance

  • APK Size: 49.4 MB (optimized Flutter build)
  • Startup Time: <2 seconds
  • Memory Usage: <100 MB at runtime
  • Target Android: API 21+ (Android 5.0+)

Localization

Currently supports Portuguese UI with internationalization framework ready for expansion to additional languages.


Developer: Luisa Martins
License: Proprietary
Last Updated: April 2026

About

Tip Splitter is a clean, intuitive Android app designed to make splitting restaurant bills and calculating tips effortless. Whether you're at a casual lunch or a fancy dinner, this app handles the math while you enjoy the meal.

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors