Skip to content

πŸ“• Extract Jargon from Books with their meaning in just a snap!

Notifications You must be signed in to change notification settings

ReadBud/ReadBud

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Banner1

ReadBud πŸ“š

ReadBud is an Android app used to extract Jargon with its meaning from scanned images of a book or any form of text. It comes in handy when you're a beginner or want to save time by skipping the process of word meaning search on the Internet or any Dictionary

Get it on Google Play

Purpose of this app πŸ”₯

Extracting Jargon from pages and displaying their meanings without Internet access!

The purpose of this app is very simple and straightforward. To use this app you only need Camera access. Start by clicking picture(s) of your pages from any book and save it. Open your saved scan and read the text extracted via OCR (ML-Kit) and click on the highlighted words (Jargon) to display their meaning on your screen. So simple, isn't it?

Made With πŸ› 

  • Kotlin - First class and official programming language for Android development.

  • Compose Build better apps faster with Jetpack Compose

  • Coroutines - For asynchronous calls and tasks to utilize threads.

  • Android Architecture Components - Collection of libraries that help you design testable, and maintainable apps.

    • ViewModel - Stores UI-related data that isn't destroyed on UI changes.
    • Room - Room is an Android library which is an ORM that wraps Android's native SQLite database
    • LiveData - LiveData was used to save and store values for ViewModel calls and response to method calls.
    • StateFlow and SharedFlow -StateFlow and SharedFlow are Flow APIs that enable flows to optimally emit state updates and emit values to multiple consumers.
  • Material 3 - Android's modern toolkit for building native UI. Support is available for Material Design 3.

  • CameraX - To enable the feature of QR Code scanning.

  • Coil - To set or place URL, and Bitmaps as Images on the screen.

    248638478-555a0ce4-05f8-4e55-8b68-8c9231c07f70


Architecture πŸ‘·β€β™‚οΈ

Architecture Flow

This app uses MVVM(Model View View-Model) architecture.

Flow of the app πŸ—Ί

flowchart TD
    840792(("Start")) --> A[Main Activity]
    A(Main Activity)
    A --> B[Home screen]
    A --> C[Settings screen]
    B --> H[List of all Scans]
    H --> |Display text with styling| D[BookView]
    B --> E[Select Images]
    E --> |Click via camera and return| F[Camera Preview]
    E --> |Pick from Gallery and return| G[Gallery Preview]
    E --> |On Save Click| 364698[("Room Database")]
    364698 --> |Get all lists| H
    C --> I[Appearance]
    C --> J[Storage]
    C --> K[About]

Launched and featured on

Get it on Google Play

Connect with me:

My Skills My Skills

πŸ“ License

MIT License

Copyright (c) 2023 Binay Shaw

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

forthebadge ForTheBadge ANDROID ForTheBadge GIT