Skip to content

Personal Library Mobile and Desktop App. Provides a convenient way to keep track of your favorite books and reading lists.

Notifications You must be signed in to change notification settings

DMouayad/BooksGenie

Repository files navigation

App name cover

Books Genie



Table of Contents

About

Books Genie is:

  • A cross-platform app built with Flutter.
  • An easy way to keep track of your favorite books and novels.
  • Designed with a beautiful, engaging and minimal UI.

Screenshots

app screenshots

Download

To preview the app, you can download it for your device OS from:

Built-With

Documentation

System Design & Architecture

  • The design of this app is a custom combination of Clean Architecture and DDD.
  • Using this approach, it was possible to allow the user to dynamically change the way to save his books preferences and collections.

Diagrams

C4 model

view
System Context Diagram
system context diagram
Container Diagram
Container diagram
Component Diagram
Component diagram

Features

  • Recommendations and popular publications.

  • Books search.

  • Personal books collections(favorite - reading now - have read).

  • Multi-Language Support

    Language Status
    Arabic
    English
  • Multi-Platform Support:

    Platform Supported Adaptive UI/UX Implemented
    Android
    IOS
    Windows
  • Multi-storage-option Support:

    Option Offline Cloud
    Isar
    Firebase

Project Status

  • This project is a work-in-progress.

Build From Source

Prerequisites

  • If you are new to Flutter, start with the installation instruction.

  • Flutter v3.10 & Dart v3.0 - or higher.

  • For running on Windows, please read the following requirements.

  • Run the command flutter doctor -v in a terminal to make sure no issues are present.

Setup

Step 1: download or clone this repo.

Step 2: run these commands in the terminal:

  • cd path_of_project_folder
  • flutter pub get

Running the app

Option 1

  • Open the project in an IDE.
  • Select the device you wish to run the app on.
  • Run lib\main.dart.

Option 2:

  • In the project directory, run in the terminal one of the commands:

        flutter run -d windows
        flutter run -d macos
        flutter run -d android
        flutter run -d ios

Run Additional Info

You can also specify the build mode of the app:

  • Using an IDE: most IDEs support different build\run modes. check your IDE's Run Settings & Configuration.

  • Using the terminal, specify the argument after flutter run from the following:

    • -d or --debug: to run the debug-version.
    • -r or --release: to run the deployment(release) version.

License

Books Genie is open-sourced software licensed under the MIT license.

About

Personal Library Mobile and Desktop App. Provides a convenient way to keep track of your favorite books and reading lists.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published