Skip to content

Efficiency at your fingertips: Scan text and barcodes in seconds, directly print labels, and manage inventory with ease.

Notifications You must be signed in to change notification settings

karolkadlubowski/StocktakingApp

Repository files navigation

Stocktaking application

The application is an advanced mobile solution leveraging Google's ML Kit for text and barcode recognition to facilitate inventory management. It enables efficient conversion of handwritten inventory numbers into 1D/2D codes, significantly speeding up the inventory process. By utilizing Google ML Kit, the app offers robust text recognition capabilities, allowing for accurate scanning and digitization of inventory numbers. Additionally, the integration with Zebra printers enhances the app's functionality by enabling the immediate printing of barcode labels. This not only streamlines the inventory management process but also ensures accuracy and efficiency in tracking and managing inventory items.

The application is built in MVVM architecture. The main issues of the project are:
-Jetpack Compose
-Room Database
-Coroutines
-Flow
-View Model
-Dependency Injection - Hilt
-Google Machine Learning Kit
-Bluetooth
-Zebra Printer handling
-Unit tests

The main screen of the application, which appears upon launch, displays objects stored in the database. Users can filter the list by name or number. Clicking on an object tile opens its edit screen. From the list screen, users can also print a label by clicking the printer icon on the object tile. The top right corner features three icons for navigating to the scan screen, object modification screen, and configuration screen.

The scanning screen allows for simultaneous scanning of text and barcodes. Text scanning seeks inventory numbers, matching them against a configured pattern. If a match is found, it directs to the add new object screen. For unmatched patterns, an image cropping function is available, requiring users to photograph, crop, and possibly rotate the image for clarity, leading to the addition of a new object.

The object modification screen serves both for adding and editing objects, allowing users to input all characteristics of an object. In edit mode, an icon for deleting the object from the database is available in the top right corner.

The configuration screen is essential for setting up the application's functionality related to other screens, requiring configuration upon the first launch. It includes specifying an inventory number scheme, translating into a regular expression for identifying letters, digits, and special characters. Users can select the type of labels to print, choosing between barcodes and QR codes. Lastly, it involves selecting a printer for the smartphone to connect to, with instructions for pairing if the printer is not listed.

About

Efficiency at your fingertips: Scan text and barcodes in seconds, directly print labels, and manage inventory with ease.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages