Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/hoc081098/find_room_flutter_bloc_pattern_rxdart

👘 [FUNCTIONAL REACTIVE PROGRAMMING].💎 The main purpose of repository is learning. 📘 A FLUTTER app help student find room 🏠 Using BLoC pattern with RxDart library, firebase as backend, .... Star 🌟 if it is helful 💓 . In progress... :zap:
https://github.com/hoc081098/find_room_flutter_bloc_pattern_rxdart

bloc bloc-pattern bloc-pattern-rxdart bloc-rxdart find-room flutter flutter-app flutter-bloc flutter-bloc-pattern flutter-bloc-pattern-rxdart flutter-bloc-rxdart flutter-example flutter-material flutter-reactive flutter-rx-preferences flutter-rxdart flutter-stream functional-reactive-programming json-serializable rxdart

Last synced: 23 days ago
JSON representation

👘 [FUNCTIONAL REACTIVE PROGRAMMING].💎 The main purpose of repository is learning. 📘 A FLUTTER app help student find room 🏠 Using BLoC pattern with RxDart library, firebase as backend, .... Star 🌟 if it is helful 💓 . In progress... :zap:

Awesome Lists containing this project

README

        

# find_room_BLoC_RxDart ![alt text](https://avatars3.githubusercontent.com/u/6407041?s=32&v=4)

## A deep dive into RxDart, BLoC pattern ![alt text](https://avatars3.githubusercontent.com/u/6407041?s=32&v=4)

## Feature
- BLoC pattern
- RxDart (Functional Reactive Stream)
- Firebase + Firestore
- Login with email, Facebook, Google account
- Localization by using Flutter i18n plugin (Languages: Vietnamese, English)
- Build pojo by using json_serializable
- Hero animation

A starter kit for beginner learns with Bloc pattern, RxDart, Firebase to architect a flutter project
A Flutter project for learning. In progress...

Support languages **Vietnamese**, **English**, you can refer to **Rxdart** usage, **BLoC** pattern 😁
Star, fork if it is helful, issues and pull requests are always welcome

## Screenshots

| | | | |
| :---: | :---: | :---: | :---: |
|![](art/Screenshot_01.png) |![](art/Screenshot_02.png) | ![](art/Screenshot_03.png)|![](art/Screenshot_04.png) |
|![](art/Screenshot_05.png) |![](art/Screenshot_06.png) | ![](art/Screenshot_07.png)|![](art/Screenshot_08.png) |
|![](art/Screenshot_09.png) |![](art/Screenshot_10.png) | ![](art/Screenshot_11.png)|![](art/Screenshot_12.png) |
|![](art/Screenshot_13.png) |![](art/Screenshot_14.png) | ![](art/Screenshot_15.png)|![](art/Screenshot_16.png) |
|![](art/Screenshot_17.png) |![](art/Screenshot_18.png) | ![](art/Screenshot_19.png)|![](art/Screenshot_20.png) |

## 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.io/docs/get-started/codelab)
- [Cookbook: Useful Flutter samples](https://flutter.io/docs/cookbook)

For help getting started with Flutter, view our
[online documentation](https://flutter.io/docs), which offers tutorials,
samples, guidance on mobile development, and a full API reference.

## Packages Used
- Flutter Swiper (https://pub.dartlang.org/packages/flutter_swiper)
- Cloud firstore (https://pub.dartlang.org/packages/cloud_firestore)
- Firebase Auth (https://pub.dartlang.org/packages/firebase_auth)
- Json Serializable (https://pub.dartlang.org/packages/json_serializable)
- Rxdart (https://pub.dartlang.org/packages/rxdart)
- Shared preferences (https://pub.dartlang.org/packages/shared_preferences)
- Intl (https://pub.dartlang.org/packages/intl)
- Tuple (https://pub.dartlang.org/packages/tuple)
- Collection (https://pub.dartlang.org/packages/collection)
- Cached network image (https://pub.dartlang.org/packages/cached_network_image)
- Wave (https://pub.dartlang.org/packages/wave)
- Google sign in (https://pub.dartlang.org/packages/google_sign_in)

## Install

- Follow flutter [official setup guide](https://flutter.io/docs/get-started/install) to set up flutter environment

## Develop

Make sure finish [install Flutter](https://flutter.io/get-started/install/) successfully

1. Clone this repo by: `git clone https://github.com/hoc081098/find_room_flutter.git`
2. Install all the packages by: `flutter packages get`
3. Run app on your simulator or device by: `flutter run`

## Useful Command
Generate json serialize and deserialize functions

> flutter packages pub run build_runner build --delete-conflicting-outputs

## Reference

#### From other platform?
- [Flutter for Android developers](https://flutter.io/docs/get-started/flutter-for/android-devs)
- [Flutter for iOS developers](https://flutter.io/docs/get-started/flutter-for/ios-devs)
- [Flutter for React Native developers](https://flutter.io/docs/get-started/flutter-for/react-native-devs)
- [Flutter for web developers](https://flutter.io/docs/get-started/flutter-for/web-devs)
- [Flutter for Xamarin.Forms developers](https://flutter.io/docs/get-started/flutter-for/xamarin-forms-devs)

#### Learn Widget & Layout
- [Building Layouts](https://flutter.io/docs/development/ui/layout)
- [Widget catalog](https://flutter.io/docs/development/ui/widgets)
- [Series of flutter widget of the week](https://www.youtube.com/playlist?list=PLOU2XLYxmsIL0pH0zWe_ZOHgGhZ7UasUE)
- [Series of Flutter Widgets 101](https://www.youtube.com/playlist?list=PLOU2XLYxmsIJyiwUPCou_OVTpRIn_8UMd)

#### BLoC Pattern
- [Architect your Flutter project using BLOC pattern](https://medium.com/flutterpub/architecting-your-flutter-project-bd04e144a8f1)

My repositories about BLoC pattern
- [Infinity scroll listview - load more listview](https://github.com/hoc081098/load_more_flutter_bloc_pattern)
- [Validation login form by using the BLoC pattern with RxDart](https://github.com/hoc081098/flutter_validation_form_BLoC)

#### Json Serialization
- [JSON and serialization](https://flutter.io/docs/development/data-and-backend/json)

#### Localization
- [Flutter: internationalization tutorials: Part 3— Android Studio plugin](https://medium.com/@datvt9312/flutter-internationalization-tutorials-part-3-android-studio-plugin-8604e2dc90f0)
- [讓 Flutter App 支援多國語系的開發流程](https://medium.com/@zonble/%E8%AE%93-flutter-app-%E6%94%AF%E6%8F%B4%E5%A4%9A%E5%9C%8B%E8%AA%9E%E7%B3%BB%E7%9A%84%E9%96%8B%E7%99%BC%E6%B5%81%E7%A8%8B-ceb31532e2e1)