Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/saransh-cpp/bookrentapp-chapter3
An app where you can rent some books!
https://github.com/saransh-cpp/bookrentapp-chapter3
firebase firebase-auth firebase-hosting firestore-database flutter flutter-app flutter-ui
Last synced: about 2 months ago
JSON representation
An app where you can rent some books!
- Host: GitHub
- URL: https://github.com/saransh-cpp/bookrentapp-chapter3
- Owner: Saransh-cpp
- Created: 2020-12-10T11:42:53.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2023-08-07T17:47:29.000Z (over 1 year ago)
- Last Synced: 2024-11-01T04:51:50.717Z (about 2 months ago)
- Topics: firebase, firebase-auth, firebase-hosting, firestore-database, flutter, flutter-app, flutter-ui
- Language: Dart
- Homepage:
- Size: 3.05 MB
- Stars: 12
- Watchers: 1
- Forks: 27
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Chapter3 - Book renting app π
[![Flutter/Dart Lint Check](https://github.com/Saransh-cpp/BookRentApp-Chapter3/actions/workflows/Test.push.yml/badge.svg)](https://github.com/Saransh-cpp/BookRentApp-Chapter3/actions/workflows/Test.push.yml)
[![Label issues](https://github.com/Saransh-cpp/BookRentApp-Chapter3/actions/workflows/App.yml/badge.svg)](https://github.com/Saransh-cpp/BookRentApp-Chapter3/actions/workflows/App.yml)[![All Contributors](https://img.shields.io/badge/all_contributors-17-orange.svg?style=flat-square)](#contributors-)
A book renting app - open a new chapter in your journey π
- An e-commerce application specifically made for renting books.
- Chapter3 displays collections of top selling books as well as the option to have your taste curated and matched with a book.
- Customers can filter and select books based on genre, after which placing immediate or deferred orders with the option to cancel.
- If the customer isn't sure about a purchase they can add the book to a wish list or just leave it in the cart.
- There is also a backend Flutter application present which is used by administators to maintain the collection and available stock (which is private to customers obviously π)This application was built in Flutter using Dart. Firebase paired with Firestore as a noSQL database are the backend of Chapter3. Functionality has been finalized, albeit with minor issues. Refactoring and UI work is also needed on this project besides the bug fixes.
## Description of the codebase
The code is well arranged into sub-directories which are -
- `Screens` (all the screens of the app, which are a lot)
- `QuizScreens` (the app has a quiz, which suggests you 1 or more books based on your response, this feature is relatively new and might have a lot of bugs)
- `Utility` (utility files (only 1) meant for google sign in)
- `model` (all the data models)
- `provider` (all the providers used for state management)
- `services` (all the utility functions/services corresponding to different data models)## App Screens
## Setting up the project in your local environmentπ»
1. Make sure [Flutter](https://flutter.dev/?gclid=Cj0KCQiA-K2MBhC-ARIsAMtLKRsfTmxiQ9NuR3Jek8xNX896IE157icHbpgid_QF7agt4wAJRehRwvwaAjp2EALw_wcB&gclsrc=aw.ds) is installed in your system.
2. Fork this repository.
3. Clone the **forked** repository:
```
git clone https://github.com//BookRentApp-Chapter3
```
4. Add a remote to the upstream repository:
```
# typing the command below should show you only 1 remote named origin with the URL of your forked repository
git remote -v
# adding a remote for the upstream repository
git remote add upstream https://github.com/Saransh-cpp/BookRentApp-Chapter3
```
5. Open the repository in [Android Studio](https://developer.android.com/studio?gclid=Cj0KCQiA-K2MBhC-ARIsAMtLKRvb-ozHxKWf5qfWZwRcnaqgvTGO90T_J3u6Pm0s-_p81IyHxGKUhL0aAtJSEALw_wcB&gclsrc=aw.ds) or in [VS Code](https://code.visualstudio.com/).
6. Run the app.
7. Create a new issue if you face any difficulties (after browsing through StackOverflow on your own) and someone will help you π## Contributing to the project π
Now that you have the project set up in your local environment, follow the steps below to contribute!
1. Take up an already existing issue or create a new (but a valid) one.
2. Pull the latest code in.
```
# make sure you are on the master branch
git pull upstream master
```
3. Create a new branch.
```
# replace xx with the issue number you are working on and give your branch a good name
git checkout -b issue-xx-a-good-name
```
4. Make your changes!
5. Once done with a particular feature, bug fix, or a documentation part, add your changes to the staging area.
```
git add .
```
6. Review and commit your changes.
```
# the message should be in present tense, for ex - "Added feature x" is not ideal but "Add feature X" is
git commit -m "a meaningful message"
```
7. Push your changes!
```
git push --set-upstream origin
```
8. Create a pull request from GitHub and wait for the review!## Getting Started
This project is a starting point for a Flutter application.
A few resources to get you started if this is your first Flutter project:
- [Lab: Write your first Flutter app](https://flutter.dev/docs/get-started/codelab)
- [Cookbook: Useful Flutter samples](https://flutter.dev/docs/cookbook)For help getting started with Flutter, view our
[online documentation](https://flutter.dev/docs), which offers tutorials,
samples, guidance on mobile development, and a full API reference.## Contributors β¨
Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
Saransh
π» π π π¨ π€ π§ π§βπ« π π π¬
Anthony De la Torre
π π π¨
Harshit Seksaria
π» π π π¦
TESLA2402
π»
Vaibhav-Chopra-GT
π» π
Pranav Pratap Singh
π€ π π» π¨
Atharv Bhadange
π»
aman2kumar
π
mortal-ghost
π π»
Pushkar Verma
π
raviyadav17
π» π¨
Dhrubojeet Haldar
π»
Akshat Jain
π
HARSH RAO
π
Ramesh M S
π π§βπ«
Arnav Sharma
π§βπ«
navee-ramesh
π§βπ«
This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!