Skip to content

pratik50/ReceiptSnap-Frontend-Android

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ReceiptSnap – Android App 📱🧾

ReceiptSnap is a modern Android application that allows users to capture, upload, process, and manage receipts/documents with smart categorization using AWS services and scalable cloud infrastructure.

This repository contains the Android frontend of the ReceiptSnap project.
The backend is developed separately and can be found here:
👉 ReceiptSnap Backend: https://github.com/pratik50/ReceiptSnap-Backend

✨ Key Highlights

  • 📸 Capture and upload receipt images
  • 🧾 Display and manage scanned receipts
  • ⚡ Smooth UI with loading animations
  • 🔍 Backend-ready for OCR & receipt extraction
  • 🧠 Built using modern Android architecture

🏗 Architecture

The app follows MVVM (Model–View–ViewModel) architecture to ensure:

  • Clear separation of concerns
  • Testable and maintainable code
  • Lifecycle-aware UI updates

Architectural Components

  • MVVM
  • Repository Pattern
  • Dependency Injection with Hilt

🧩 Tech Stack & Libraries

🔹 Dependency Injection

  • Hilt (Dagger) – Scalable dependency injection
  • KSP – Fast annotation processing

🔹 Networking

  • Retrofit & OkHttp – REST API communication
  • Moshi – JSON parsing
  • Chucker – API debugging (debug builds)

🔹 Async & Background Work

  • Kotlin Coroutines – Asynchronous and background tasks

🔹 UI & UX

  • Material Design Components
  • Epoxy – Declarative & efficient RecyclerView management
  • Lottie – Smooth animations
  • Facebook Shimmer – Loading placeholders
  • Animated Bottom Bar – Custom animated navigation
  • SDP / SSP – Responsive UI scaling

📷 Screenshots / App Preview

⚙️ Setup & Installation

  1. Clone the repository:

git clone https://github.com/pratik50/ReceiptSnap-Frontend-Android.git

  1. Open the project in Android Studio
  2. Sync Gradle and run on an emulator or physical device

🔗 Related Repositories

🤝 Contributing

  1. Fork the repo
  2. Create a feature branch (git checkout -b feature-name)
  3. Commit changes (git commit -m "Added new feature")
  4. Push branch (git push origin feature-name)
  5. Open a Pull Request 🚀

🆓 End Note

This project is open-source and free to use.
You are welcome to modify, distribute, and learn from it.

Made with ❤️ by Pratik Jadhav

About

Android receipt scanning app with Production-grade Node.js backend, Kubernetes on DOKS, HPA autoscaling, OpenTelemetry observability, zero-downtime CI/CD via GitHub Actions, and async receipt processing with AWS S3, Lambda, SQS, and Bedrock.

Topics

Resources

Stars

Watchers

Forks

Contributors

Languages