Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

developerjamiu/BooksApp

Repository files navigation

Books App

Google Books API Exploration

Introduction

This project explores the Google Books API.

Requirements

  • Authentication with Firebase Authentication (Email + at least one social), design of the required screens is up to you.
  • Show a list of books gotten from the Google Books API
  • Allow the user to search for books
  • Replicate the design given for the page listing the books.
  • Add a detail page showing the details of the selected book, the design is up to you.
  • Allow the user to add and remove a book from his favorites by saving it on a Firebase Firestore Database.
  • BONUS: implement a Firebase Cloud Function doing something you feel worthwhile for the app.
  • BONUS: handle App responsiveness on the Desktop/Web.

Implementation

The project was implemented with custom architecture similar to MVVM where

  • ViewModels are known as notifiers
  • Class Dependencies are managed using the Riverpod Providers
  • There are usage of special providers such as StreamProvider, StateProviders that comes with riverpod
  • It uses the classic repository approach
  • Services for performing network requests, contextless navigation etc are grouped as well

Build Limitations

  • The project depends on an API Key (for calling the books api) which I gitignored so kindly generate an APIKey and place an apiKey constant in lib/src/services/base/api_credentials.dart
  • Google Signin will also not work until you add a valid SHA 1 key.

When building for Web

run with PORT 5000 for Google Signin to Work i.e flutter run -d chrome --web-port=5000

Find app screenshots here

register login forgot_password google_signin

books book_details favorite_books

profile update_profile update_password update_email_address

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

AltStyle によって変換されたページ (->オリジナル) /