/gccd-event-app

Primary LanguageDartMIT LicenseMIT


CCD Kolkata 2022

This repo contains source code for the official Flutter app of Cloud Community Days Kolkata 2022.

Table of Contents

  1. About The Project
  2. Getting Started
  3. Contact



About the project

  🚧Actively under development🚧

  • Built With

    FlutterFirebase

  • Screenshots 📱
         
  • Documentation 📓

    • This project uses Effective Dart Principles for documentation
    • Run dart doc . from root of project directory to generate documentation webpage.
  • Features

    • Sessionize Api Integrated for speakers profile and schedule management
    • Support for multiple sessions in same timeslot
    • Self Hosted using Firebase
    • FCM for notification
    • Built using Provider Architecture for clean state management
    • Google Auth for User Authentication
    • Custom user management logic using Firestore
    • Data caching for optimised network calls
    • Ticket application and view
    • Dashboard Screen (Bonus : Refer & Earn Logic Integrated)
    • Profile Screen for event participants
    • Dynamic Partners Screen Using GitHub Hosted Json
    • Fluid animations
    • Custom Navigation Stack
    • Modern, Material UI (we all love this!)
    • Heavyily documented code (who doesn't like clean code)

(back to top)

Getting Started

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

  • Project Setup

    • Flutter App:

      • Install Flutter
      • Setting up your ide
      • Fork and clone this repository.
      • cd into ccd2022-app directory.
      • Run flutter clean command.
      • Run flutter pub get command.
      • Run flutter run command.
    • Firebase:

      • Create a firebase project

      • Add android app with your package name in firebase console.

      • Enable Google Auth from Authentication menu in Firebase.

      • Generate SHA-1 key hash for your debug keystore from your pc. This needs to be added to SHA certificate fingerprints section under your android app in Firebase project settings. Without this step Google login won't work.

      • Enable Cloud Firestore

        • Recommended rules for Firestore

            rules_version = '2';
            service cloud.firestore {
              match /databases/{database}/documents {
          
               match /tickets/{ticket} {
                allow read : if request.auth != null;
                allow write: if false;
               }
          
              match /{document=**} {
                allow read, write: if request.auth != null;
              }
          
            }
           }
        • Recommended Rules for Cloud Storage

            rules_version = '2';
            service firebase.storage {
              match /b/{bucket}/o {
                match /{allPaths=**} {
                  allow read: if true;
                  allow write: if false;
                  allow create: if false;
                  allow update: if false;
                }
              }
            }
      • Enable Cloud Storage

      • Download google_services.json from Console -> Project Settings. File is present in app section. SDK instructions found in the same page

      • (Optional) Enable Cloud Messaging from Firebase Console if you wan't notifications to work in your app

      • (Optional) If released to play store get SHA-1 key hash from playstore and upload them to firebase, otherwise google sign in won't work in play store app.

  • How to Contribute?

    Check Contributing.md for guidelines on contributing to this repo.

(back to top)

Contact Us

  If you have a question, please feel free to contact us through email or our telegram community channel.





Made with ❤️ by GDG Cloud Kolkata