Giter VIP home page Giter VIP logo

flightapp's Introduction

Hi there πŸ‘‹ πŸ‘‹

πŸ’« About Me:

I'm a Mobile Engineer from India with expertise on Flutter and Android.

- 🌳 I'm currently working on a Flutter Advanced Tutorial Series
- πŸ”­ I run a YouTube channel - TechieBlossom
- πŸ‘― I’m looking to collaborate on flutter open source projects
- πŸ’¬ Ask me about Flutter, Android and Dart
- πŸ˜„ Pronouns: he/him/his
- ⚑ Fun fact: Adult cats only meow to humans, not other cats.

🌐 Socials:

Peerlist LinkedIn Medium Twitter YouTube

πŸ’» Tech Stack:

Flutter ANDROID Dart Kotlin Java JavaScript R Python PHP Markdown TypeScript Firebase Datadog Google Cloud Spring NodeJS jQuery SQLite Supabase MongoDB MySQL Adobe Illustrator Adobe Photoshop Figma Canva LINUX CodeCov Gradle Jira Trello Swagger Postman Notion

πŸ“Š GitHub Stats:



πŸ† GitHub Trophies

✍️ Today's Dev Quote

πŸ” Top Contributed Repo


πŸ’° You can support my work

BuyMeACoffee Patreon

flightapp's People

Contributors

prateeksharma1712 avatar techieblossom avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

flightapp's Issues

Request: Branch without Firebase

Hey,

I would love to have a branch that doesn't use Firebase. I would like to just explore the app without having to setup firebase! That would be great.

No issues.

Hi! Techie Blossom.
I'm a fan of all your videos on YouTube.
Great work guy and I dream of becoming a great developer like you. I would like you to make again a video on the application 'flightapp' to show how to implement the package flutter_bloc, if possible the package frideos. I know you already did it with only Rxdart. To make also a new video for the login with username and password, with a Google account and with a Facebook account, by implementing the block pattern with the flutter_bloc and frideos packages. Also you made a video promise at the end of the second video on the football players app. Please, deign to show how to make the filter according to the players and their country of origin. Thank you very much and I hope you will accept my requests. This is the way I found to write to you. StΓ©phane. [email protected]. Have a great day.

appbar error

Compiler message:
lib/main.dart:25:15: Error: The argument type '#lib1::CustomAppBar' can't be assigned to the parameter type '#lib2::PreferredSizeWidget'.
Try changing the type of the parameter, or casting the argument to '#lib2::PreferredSizeWidget'.
appBar: CustomAppBar(),
^
Compiler failed on C:\Users\shaoz\Downloads\flightapp-master\lib\main.dart
Gradle task assembleDebug failed with exit code 1

locations.clear();

In main.dart you can add "locations.clear();"

addLocations(BuildContext context, List snapshots) {
locations.clear();
for (int i = 0; i < snapshots.length; i++) {
final Location location = Location.fromSnapshot(snapshots[i]);
locations.add(location.name);
}
}

Rendering widgets

`import 'package:flutter/material.dart';

import 'CustomAppBar.dart';
import 'CustomShapeClipper.dart';
import 'package:intl/intl.dart';

void main() => runApp(MaterialApp(
title: 'Eventik',
debugShowCheckedModeBanner: true,
home: HomeScreen(),
theme: appTheme,
));

//Colors for the clip-path gradient

Color firstColor = Color(0xFF00FFFF);
Color secondColor = Color(0xFF00D5FF);

//Define a theme

ThemeData appTheme =
ThemeData(primaryColor: Color(0xFFF3791A), fontFamily: 'Oxygen');

//Definition of a list

List locations = ['Mulungushi (MU)', 'UNZA', 'CBU'];

//DropDown Const style

const TextStyle dropdownTextStyle =
TextStyle(color: Colors.black, fontSize: 16.0);
const TextStyle dropdownMenuItemTextStyle =
TextStyle(color: Colors.black, fontSize: 16.0);

//number format

final formatCurrency = NumberFormat.simpleCurrency();

class HomeScreen extends StatelessWidget {
@OverRide
Widget build(BuildContext context) {
// TODO: implement build
return
Scaffold(
bottomNavigationBar: CustomAppBar(),
body: Column(
children: [
HomeScreenTopPart(),
homeScreenBottomPart,
],
),

);

}
}

class HomeScreenTopPart extends StatefulWidget {
@OverRide
_HomeScreenTopPart createState() => _HomeScreenTopPart();
}

class _HomeScreenTopPart extends State {
//Variable for selected location

var selectedLocationIndex = 0;
var isInCampusSelected = true;

@OverRide
Widget build(BuildContext context) {
// TODO: implement build
return Stack(
children: [
ClipPath(
clipper: CustomShapeClipper(),
child: Container(
height: 400.0,
decoration: BoxDecoration(
gradient: LinearGradient(colors: [firstColor, secondColor])),
child: Column(
children: [
SizedBox(
height: 50.0,
),
Padding(
padding: EdgeInsets.all(16.0),
child: Row(
children: [
Icon(
Icons.location_on,
color: Colors.white,
),
SizedBox(
width: 16.0,
),
PopupMenuButton(
onSelected: (index) {
selectedLocationIndex = index;
print(locations[selectedLocationIndex]);
},
child: Row(
children: [
Text(
locations[selectedLocationIndex],
style: dropdownTextStyle,
),
Icon(
Icons.keyboard_arrow_down,
color: Colors.white,
),
],
),
itemBuilder: (BuildContext context) =>
<PopupMenuItem>[
PopupMenuItem(
child: Text(
locations[0],
style: dropdownMenuItemTextStyle,
),
value: 0,
),
PopupMenuItem(
child: Text(
locations[1],
style: dropdownMenuItemTextStyle,
),
value: 1,
),
PopupMenuItem(
child: Text(
locations[2],
style: dropdownMenuItemTextStyle,
),
value: 2,
),
],
),
Spacer(),
Icon(
Icons.settings,
color: Colors.white,
),
],
),
),
SizedBox(
height: 40.0,
),
Text(
'Events you can attend',
style: TextStyle(fontSize: 24.0, color: Colors.white),
textAlign: TextAlign.center,
),
SizedBox(
height: 25.0,
),
Padding(
padding: EdgeInsets.all(31.0),
child: Material(
elevation: 5.0,
borderRadius: BorderRadius.all(Radius.circular(30.0)),
child: TextField(
controller: TextEditingController(text: locations[0]),
style: dropdownMenuItemTextStyle,
cursorColor: appTheme.primaryColor,
decoration: InputDecoration(
contentPadding: EdgeInsets.symmetric(
horizontal: 20.0, vertical: 15.0),
suffixIcon: Material(
elevation: 2.0,
borderRadius:
BorderRadius.all(Radius.circular(30.0)),
child: Icon(
Icons.search,
color: Colors.black,
),
),
border: InputBorder.none,
),
),
),
),
SizedBox(
height: 3.0,
),
Row(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
mainAxisSize: MainAxisSize.min,
children: [
InkWell(
child: ChoiceChip(
Icons.schedule, "In-Campus", isInCampusSelected),
onTap: () {
setState(() {
isInCampusSelected = true;
});
},
),
SizedBox(
width: 20.0,
),
InkWell(
child: ChoiceChip(
Icons.school, "Off-Campus", !isInCampusSelected),
onTap: () {
setState(() {
isInCampusSelected = false;
});
},
),
],
)
],
)),
),
],
);
}
}

class ChoiceChip extends StatefulWidget {
//Defining variables for choice chips
final IconData iconData;
final String text;
final bool isSelected;

ChoiceChip(this.iconData, this.text, this.isSelected);
@OverRide
_ChoiceChipState createState() => _ChoiceChipState();
}

class _ChoiceChipState extends State {
@OverRide
Widget build(BuildContext context) {
// TODO: implement build
return Container(
padding: EdgeInsets.symmetric(horizontal: 5.0, vertical: 5.0),
decoration: widget.isSelected
? BoxDecoration(
color: Colors.black.withOpacity(0.15),
borderRadius: BorderRadius.all(Radius.circular(20.0)))
: null,
child: Row(
children: [
Icon(widget.iconData),
SizedBox(
width: 8.0,
),
Text(
widget.text,
style: TextStyle(color: Colors.black, fontSize: 15.0),
)
],
),
);
}
}

const TextStyle viewAllTextStyle =
TextStyle(color: Colors.orange, fontSize: 16.0);

var homeScreenBottomPart = Column(
children: [
Padding(
padding: const EdgeInsets.all(8.0),
child: Row(
mainAxisSize: MainAxisSize.max,
children: [
Text(
'Current Top Events',
style: dropdownMenuItemTextStyle,
),
Spacer(),
Text(
'View all (10)',
style: viewAllTextStyle,
),
],
),
),
Container(
height: 210.0,
child: ListView(
scrollDirection: Axis.horizontal,
children: eventsCard,
),
)
],
);

//create a list for city cards

List eventsCard = [
EventsCard(
"assets/images/MU.jpeg", "Red Carpet", "Sep 2019", "45", "130", "100"),

EventsCard("assets/images/CBU.jpg", "Miss-CBU", "Nov 2019", "35", "230", "200"),
EventsCard("assets/images/athens.jpg", "Hackathon", "Oct 2019", "50", "180", "110"),
];

class EventsCard extends StatelessWidget {
final String imagePath, eventName, monthYear, discount, oldPrice, newPrice;

EventsCard(this.imagePath, this.eventName, this.monthYear, this.discount,
this.oldPrice, this.newPrice);

@OverRide
Widget build(BuildContext context) {
// TODO: implement build
return Padding(
padding: const EdgeInsets.symmetric(horizontal: 8.0),
child: Column(
children: [
ClipRRect(
borderRadius: BorderRadius.all(Radius.circular(10.0)),
child: Stack(
children: [
Container(
height: 210.0,
width: 160.0,
child: Image.asset(
imagePath,
fit: BoxFit.cover,
),
),
Positioned(
left: 0.0,
bottom: 0.0,
width: 160.0,
height: 60.0,
child: Container(
decoration: BoxDecoration(
gradient: LinearGradient(
begin: Alignment.bottomCenter,
end: Alignment.topCenter,
colors: [
Colors.black,
Colors.black.withOpacity(0.1),
])),
),
),
Positioned(
left: 10.0,
bottom: 10.0,
right: 8.0,
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
mainAxisSize: MainAxisSize.max,
children: [
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
eventName,
style: TextStyle(
fontWeight: FontWeight.bold,
color: Colors.white,
fontSize: 18.0,
),
),
Text(
monthYear,
style: TextStyle(
fontWeight: FontWeight.normal,
color: Colors.white,
fontSize: 16.0,
),
),
],
),
Container(
padding: EdgeInsets.symmetric(
horizontal: 6.0,
),
decoration: BoxDecoration(
shape: BoxShape.rectangle,
color: Colors.white,
borderRadius:
BorderRadius.all(Radius.circular(10.0)),
),
child: Text(
"$discount%",
style:
TextStyle(fontSize: 14.0, color: Colors.black),
)),
],
),
),
],
),
),
Row(
mainAxisSize: MainAxisSize.max,
mainAxisAlignment: MainAxisAlignment.start,
children: [
SizedBox(
width: 5.0,
),
Text(
'${formatCurrency.format(newPrice)}',
style:
TextStyle(color: Colors.black, fontWeight: FontWeight.bold),
),
SizedBox(
width: 5.0,
),
Text(
'${formatCurrency.format(oldPrice)}',
style: TextStyle(
color: Colors.grey, fontWeight: FontWeight.normal),
),
],
)
],
),
);
}
}
`

The argument type 'Center' can't be assigned to the parameter type (BuildContext, String)

Hello Sir,
Kindly help me resolve this error message showing at main.dart line 467.
screen shot 2019-02-28 at 4 56 21 pm

Error: The argument type '#lib1::Center' can't be assigned to the parameter type
'(#lib2::BuildContext, dart.core::String) β†’ #lib2::Widget'.
Try changing the type of the parameter, or casting the argument to '(#lib2::BuildContext, dart.core::String) β†’
#lib2::Widget'.
placeholder: Center(child: CircularProgressIndicator()),
^
Compiler failed on /Users/hanson/VisualCodeProjects/flightapp/lib/main.dart
Error launching application on iPhone XR.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.