Skip to content

Latest commit

 

History

History
75 lines (57 loc) · 4.09 KB

README.md

File metadata and controls

75 lines (57 loc) · 4.09 KB

Flutter Pakistan App

Flutter Live Extended is organized by Flutter Pakistan community in Karachi and it is based on Flutter Live event.

This project is the Flutter app for the event. Feel free to fork this repo to customize the app for your own event.

Inspiration

The app takes a lot from Google I/O Android app while trimming down the stuff that was not needed. It also adds a few features as described in next section.

Features

The app displays a list of sessions with an option to see the details about sessions and speakers. Users can also register for the event using the app and at event day, it lets users mark their attendance using QR code. The app uses Google Sign-in to fetch user details and to enable event registration through the app.

The app also displays a map of the venue with an option to navigate using the installed maps app.

Development Environment

The app is written entirely in Flutter and should compile and run on stable Flutter versions (tested till 1.2).

Firebase

The app makes considerable use of following Firebase components:

  • Cloud Firestore is the source of all data being shown on the app including session and speaker details, and user registration.
  • Firebase Authentication is used to let the user sign-in using their Google ID.

Setting up

This repo does not contain some required Firebase setup. Follow this guide to setup Cloud Firestore for this app. There's also a good video walkthrough for setting up.

Importing Firebase data

The app depends on an already setup Firestore data in order to run properly which is present in /data/firebase-export.json. To import this data, follow these steps:

  1. Install Firestore Import/Export utility
  2. Export your Firebase private key, it will be automatically downloaded to your computer. Copy this file to the /data folder. Rename this file to firebase-credentials.json.
  3. Open terminal and go to /data folder.
  4. Run the following command
$ firestore-import -a firebase-credentials.json -b firebase-export.json
  1. After this command is executed successfully, go to your Database section of your Firebase console to make sure that the data is created there.

Exporting Firebase data

You can also export Firestore data using the following command:

$ firestore-export -a firebase-credentials.json -b firebase-export.json -p

This will export the data into firebase-export.json file.

One common use case is to get all users and export them to CSV. There's a Dart script included in the data folder and it can be used as shown below:

$ dart convert.dart firebase-export.json

This will create an export.csv in the same folder which you can then use with Microsoft Excel, Google Sheets etc.

Getting started with Flutter

A few resources to get you started if this is your first Flutter project:

For help getting started with Flutter, view our online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.

Copyright

Copyright 2019 Flutter Pakistan. All rights reserved.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.