An App Template For GDG DevFest

Overview

GDG DEVFEST APP Codemagic build status Build Status

Get it on Google Play Get it on the App Store

🚀 Get Started

📸 ScreenShots

Light Theme Dark Theme

Show some ❤️ and star the repo to support the project

Overview

DevFest Mobile application is for all the GDG Devfests around the world. You can see the agenda in the app as well as the speakers and other updates regarding the devfest.

Technology Stack

  • Flutter
  • Flutter Bloc
  • Firebase (Upcoming)

Getting Started

  1. Fork repository and clone your fork locally
  2. Install Flutter 1.7.8
  3. Install Android Studio / IntelliJ / VSCode
  4. Preparing Release for Android
  5. Preparing Release for iOS

Building the project

Missing Key.Properties file

If you try to build the project straight away, you'll get an error complaining that a key.properties file is missing and Exit code 1 from: /GDG-DevFest-App-master/android/gradlew app:properties:. To resolve that,

  1. Open GDG-DevFest-App-master\android\app\build.gradle file and comment following lines-

    //keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
    
    signingConfigs {
    // release {
    // keyAlias keystoreProperties['keyAlias']
    // keyPassword keystoreProperties['keyPassword']
    // storeFile file(keystoreProperties['storeFile'])
    // storePassword keystoreProperties['storePassword']
    // }
    }
    buildTypes {
    // release {
    // signingConfig signingConfigs.release
    // }
    }
    
  2. Open GDG-DevFest-App-master\lib\utils\devfest.dart file and customise the texts according to your needs. Eg-

        static const String app_name = “Devfest”;
        static const String app_version = “Version 1.0.4”;
        static const int app_version_code = 1;
    
        //*  Texts
        static const String welcomeText = “Welcome to GDG DevFest”;
        static const String descText =
            ‘’’DevFests are community-led, developer events hosted by GDG chapters around the globe focused on community building & learning about Google’s technologies. Each DevFest is inspired by and uniquely tailored to the needs of the developer community and region that hosts it.’’’;
    
        //* ActionTexts
        static const String agenda_text = “Agenda”;
        static const String speakers_text = “Speakers”;
        static const String team_text = “Team”;
        static const String sponsor_text = “Sponsors”;
        static const String faq_text = “FAQ”;
        static const String map_text = “Locate Us”;
    
  3. Open GDG-DevFest-App-master\lib\home\session.dart file and customise the sessions according to your needs. Eg-

        List<Session> sessions = [
            Session(
                sessionId: “1”,
                sessionStartTime: “9:00 AM”,
                sessionTotalTime: “30 Mins”,
                sessionTitle: “DevByte: From Zero to ML on Google Cloud Platform”,
                speakerImage:
                    “https://avatars1.githubusercontent.com/u/12619420?s=400&u=eac38b075e4e4463edfb0f0a8972825cf7803d4c&v=4”,
                speakerName: “Max Saltonstall”,
                speakerDesc: “Cloud Developer Advocate, Google DevByte speaker”,
                track: "cloud"
            ),
        ]
    
  4. Open GDG-DevFest-App-master\lib\home\speaker.dart file and customise the speakers according to your needs. Eg-

        List<Speaker> speakers = [
            Speaker(
                speakerImage:
                    “https://avatars1.githubusercontent.com/u/12619420?s=400&u=eac38b075e4e4463edfb0f0a8972825cf7803d4c&v=4”,
                speakerName: “Pawan Kumar”,
                speakerDesc: “Google Developer Expert, Flutter”,
                speakerSession: “Talk: Getting Started With Flutter For Web”,
                fbUrl: “https://facebook.com/imthepk”,
                githubUrl: “https://github.com/iampawan”,
                linkedinUrl: “https://linkedin.com/in/imthepk”,
                twitterUrl: “https://twitter.com/imthepk”,
            ),
        ]
    
  5. Open GDG-DevFest-App-master\lib\home\team.dart file and customise the teams according to your needs. Eg-

        List<Team> teams = [
            Team(
                name: “Sundar Pichai”,
                desc: “Organizer”,
                contribution: “Google CEO”,
                image:
                    “https://pbs.twimg.com/profile_images/864282616597405701/M-FEJMZ0_400x400.jpg”,
            ),
        ]
    
  6. Open GDG-DevFest-App-master\lib\map\map_page.dart file and customise the lat long according to your needs. Eg-

       static final LatLng myLocation = LatLng(37.42796133580664,       -122.085749655962);
    
  7. Open GDG-DevFest-App-master\lib\sponsors\sponsor_page.dart file and customise the sponsors data according to your needs. Eg-

       SponsorImage(
            imgUrl: “https://devfest.gdgkolkata.org/assets/img/logos/gd.png”,
        )
    

Contributing

Awesome! Contributions of all kinds are greatly appreciated. To help smoothen the process we have a few non-exhaustive guidelines to follow which should get you going in no time.

Using GitHub Issues

  • Feel free to use GitHub issues for questions, bug reports, and feature requests
  • Use the search feature to check for an existing issue
  • Include as much information as possible and provide any relevant resources (Eg. screenshots)
  • For bug reports ensure you have a reproducible test case
    • A pull request with a breaking test would be super preferable here but isn't required

Submitting a Pull Request

  • Squash commits
  • Lint your code with eslint (config provided)
  • Include relevant test updates/additions

Contributors

Maintainer: Pawan Kumar

License

Project is published under the MIT license. Feel free to clone and modify repo as you want, but don't forget to add reference to authors :)

GDG DevFest App is not endorsed and/or supported by Google, the corporation.

Comments
  •  Modify to receive speaker information from server

    Modify to receive speaker information from server

    Currently speaker information is provided hard coded data. So If speaker information is changed, user need to update application. For this reason, I modify to receive speaker information from server.

    I am not sure, it is required feature or not. But I think most gdg organizer want to use speaker data from server like this change list. If you have any concern. please tell me.

    opened by yjaeseok 3
  • Feature Suggestion - Dynamic App

    Feature Suggestion - Dynamic App

    The current implementation requires us to build and upload the app for each and every DevFest. Making it dynamic can make the experience for organisers better. I think we should be able to do this using Google Sheets and local storage (sqflite).

    Please comment on this so that I can prepare a draft implementation for the same.

    enhancement suggestion 
    opened by sampathbalivada 3
  • About FCM

    About FCM

    How it is if Firebase Cloud Messaging is implemented in this app so that DevFest organisers can send notifications to all users to keep them engaged and to know about latest updates/changes/alerts.

    For.e.g.

    1. Two Days to go For DevFest!!!
    2. Our Speaker ABC will talk about XYZ.
    3. The venue is ABCXYZ.
    enhancement 
    opened by PatilShreyas 2
  • There will be an issue in latest update in flutter SDk

    There will be an issue in latest update in flutter SDk

    I tried cloning your project ended up with some issues due to the fact that i was using dev version of the flutter SDk. but I fixed it by adding the following line

    opened by darwinvtomy 2
  • Contributing as maintainer to the project

    Contributing as maintainer to the project

    Hi,

    First thanks for the fantastic work.

    I have been working on a similar project with Flutter to make it ready for (hoverboard) same as you did. Today, I have found that you have actually finished it before me 😄 which is great. Just wondering if you'd like to have someone else to help you maintain this project along with you and possibly we may ask github.com/gdg-x or Abraham Williams who is now the maintainer of hoverboard to move this project under the GDG-X organization.

    I will understand if you have different opinions and will respect them.

    Please keep doing great work dude. Majid

    suggestion 
    opened by mhadaily 2
  • agenda detail screen: There are multiple heroes that share the same tag within a subtree

    agenda detail screen: There are multiple heroes that share the same tag within a subtree

    I get the following error: "There are multiple heroes that share the same tag within a subtree" on agenda_detail.dart. The app screen goes black when a session list item is tapped. My investigation shows that this is caused when 2 session items have the same URL for speakerImage.

    opened by buildbro 1
  • Local notifications

    Local notifications

    Hey Pawan I was posting a feature request. Given that this is an events app, it would be cool if you could add local notifications for the sessions that would be able to notify the user of a session about to commence. I have done some work on this on a separate project that I am working on but it would be good given your expertise to show methods of doing this in addition to state management.

    Thanks

    enhancement 
    opened by TJMusiitwa 1
  • [ImgBot] Optimize images

    [ImgBot] Optimize images

    Beep boop. Your images are optimized!

    Your image file size has been reduced by 19% 🎉

    Details

    | File | Before | After | Percent reduction | |:--|:--|:--|:--| | /ios/Runner/Assets.xcassets/AppIcon.appiconset/icon.png | 153.87kb | 102.54kb | 33.36% | | /android/app/src/main/ic_launcher-web.png | 34.48kb | 28.71kb | 16.74% | | /android/app/src/main/res/drawable-xxhdpi/ic_gdg.png | 13.18kb | 11.08kb | 15.94% | | /android/app/src/main/res/drawable-xhdpi/ic_gdg.png | 7.33kb | 6.24kb | 14.87% | | /android/app/src/main/res/drawable-hdpi/ic_gdg.png | 4.58kb | 3.90kb | 14.77% | | /assets/images/banner_dark.png | 47.21kb | 40.40kb | 14.43% | | /android/app/src/main/res/drawable-xxxhdpi/ic_gdg.png | 20.66kb | 17.74kb | 14.13% | | /android/app/src/main/res/drawable-mdpi/ic_gdg.png | 2.80kb | 2.49kb | 11.15% | | /ios/Runner/Assets.xcassets/AppIcon.appiconset/[email protected] | 9.66kb | 8.62kb | 10.81% | | /ios/Runner/Assets.xcassets/AppIcon.appiconset/[email protected] | 8.67kb | 7.91kb | 8.75% | | /android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png | 21.17kb | 19.36kb | 8.58% | | /ios/Runner/Assets.xcassets/AppIcon.appiconset/[email protected] | 7.62kb | 7.22kb | 5.24% | | /assets/images/banner_light.png | 65.59kb | 62.55kb | 4.64% | | /android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png | 13.43kb | 13.16kb | 2.03% | | | | | | | Total : | 410.27kb | 331.91kb | 19.10% |


    📝docs | :octocat: repo | 🙋issues | 🏅swag | 🏪marketplace

    opened by imgbot[bot] 0
  • FAILURE: Build failed with an exception.

    FAILURE: Build failed with an exception.

    Hi, i got this error while trying to run the devfest app project. I did as instructed by commenting some lines in the gradle file and yet i got this error. what could have been the problem?

    Compiler message: /C:/flutter/.pub-cache/hosted/pub.dartlang.org/cached_network_image-1.1.1/lib/src/cached_network_image_provider.dart:42:24: Error: The method 'CachedNetworkImageProvider.load' has fewer positional arguments than those of overridden method 'ImageProvider.load'. ImageStreamCompleter load(CachedNetworkImageProvider key) { ^ /C:/flutter/packages/flutter/lib/src/painting/image_provider.dart:403:24: Context: This is the overridden method ('load'). ImageStreamCompleter load(T key, DecoderCallback decode); ^ Target kernel_snapshot failed: Exception: Errors during snapshot creation: null build failed.

    FAILURE: Build failed with an exception.

    • Where: Script 'C:\flutter\packages\flutter_tools\gradle\flutter.gradle' line: 780

    • What went wrong: Execution failed for task ':app:compileFlutterBuildDebug'.

    Process 'command 'C:\flutter\bin\flutter.bat'' finished with non-zero exit value 1

    • Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

    • Get more help at https://help.gradle.org

    BUILD FAILED in 1m 11s Gradle task assembleDebug failed with exit code 1 Exited (sigterm)

    opened by aynerd 4
Owner
Pawan Kumar
GoogleDevExpert for Flutter, Firebase, Dart & Web Tech. Public Speaker, Blogger, Entrepreneur & YouTuber. Founder of MTechViral & Let's Flutter with Dart.
Pawan Kumar
The Medito app is a 100% free meditation app built with flutter. The app is available on Android and iOS.

Medito App Meditation can positively transform people's lives. We believe no one should have to pay for it. We are the Medito Foundation, and we've bu

Medito Foundation 438 Dec 26, 2022
App-flutter-travel-app - Travel App Built Using Flutter

App-flutter-travel-app - Travel App Built Using Flutter

Sangvaleap Vanny 69 Dec 4, 2022
Flutter Responsive Game of Thrones Flutter App Flutter Responsive Game of Thrones Flutter App

got_2019 A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started if this

Pawan Kumar 16 Jun 9, 2022
Flutter Gender Prediction App Flutter Gender Prediction App

gender_predictor A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started

Pawan Kumar 30 May 31, 2022
Flutter Login Page Bloc Pattern App Flutter Login Page Bloc Pattern App

gdgbloc A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started if this

Pawan Kumar 99 Oct 20, 2022
Flutter: QR Code Scanner App Flutter: QR Code Scanner App

Flutter QRCode Scanner APP Show some ❤️ and star the repo to support the project A new Flutter project. Features Scan 2D barcodes Scan QR codes Contro

Pawan Kumar 250 Nov 10, 2022
Fingerprint Local Auth App Flutter Advanced Face ID & Touch ID/Fingerprint Local Auth App

flutterlocalauth A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started

Pawan Kumar 71 Dec 17, 2022
This app it's a simple app to help you choose between alcool or gasoline based on the price of the gasoline and the price of the alcool.

This app it's a simple app to help you choose between alcool or gasoline based on the price of the gasoline and the price of the alcool. It's a simple app that uses a simple logo, two text fields and a button that calculate and show the best option.

Cácio Lucas 0 Oct 3, 2021
A Flutter app that demonstrates how to build a simple app using the SpaceX API created by the Very Good Ventures Team.

SpaceX Demo Developed with ?? by Very Good Ventures ?? A Flutter app that demonstrates how to build a simple app using the SpaceX API created by the V

Very Good Ventures 120 Dec 27, 2022
An app that keeps track of what you're watching and allows you to watch the shows from within the app itself. It uses Kitsu API as it's data source.

Anilemon A small app to keep track of and watch your favorite anime. Features Save anime that you are interested in in your library Open the website y

Pumpkin Person 0 Oct 12, 2021
On making this project I learned using Getx to change between dark mode to light mode, learned about the time zone and schedule notification , That I have Integrated in this small app, This is the small section of making a todo app.

On making this project I learned using Getx to change between dark mode to light mode, learned about the time zone and schedule notification , That I have Integrated in this small app, This is the small section of making a todo app.

Pawan Kumar 1 Aug 22, 2022
Package your Flutter app into OS-specific bundles (.app, .exe, etc.) via Dart or the command line.

flutter_app_packager Package your Flutter app into OS-specific bundles (.app, .exe, etc.) via Dart or the command line. The flutter_app_packager sourc

LeanFlutter 415 Jan 8, 2023
Flutter Sound Editing App - Midia App

Flutter Sound Editing App - Midia App I uploaded on youtube!! Thanks to Watch And Thanks to Subscribe!!! Introduction I'm working on a project to laun

Lomio 3 Nov 1, 2021
This is an E-commerce App that you can buy goods, it has no data base so all you see in this app are created as default

This is an E-commerce App that you can buy goods, it has no data base so all you see in this app are created as default. Once I create a server and connect with it, I will create another repository or simply update this one.

Khusan Flutter Dev 2 Feb 10, 2022
Patan Campus app : an app that acts as a bridge between student and college

PatanCollegeApplication This application was my first mobile application made using flutter sdk and making this project was a great experince for me a

Shyam Das Shrestha 3 Jul 1, 2022
mezza 0 Nov 24, 2021
Check out the new style for App Design aims for Payment App

?? Payment App UI Check out the new style for App Design aims for Payment App... ?? ?? ?? ?? You can Install and test latest app from below ?? ?? Scre

Shashank Singhal 86 Dec 12, 2022
News app - News App using Flutter and Firebase Auth

News App in Flutter using Firebase Auth, Firebase Realtime Database & Times of I

Raunak Chatterjee 6 Nov 6, 2022