okay then my friends so welcome to this flutter crash course which is essentially your first step to becoming a flutter [Music] ninja all right then so first things first what is flutter well flutter is a framework for creating crossplatform applications with just a single code base and that means if we write an application using flutter then we can deploy the application to iOS Android the web desktop Etc and flutter takes care of most of the heavy lifting required to get the application running on those different platforms by compiling our source code that we write into
native machine code which can run on those different platforms now I said that we use just a single codebase to write our applications which we do and that codebase is written in a programming language called Dart now if you're brand new to Dart then it wouldn't worry too much it's relatively simple especially if you already familiar with another statically typed language like typescript but I would probably recommend learning the basics at least first of Dart before you get too deep into flutter because it's just going to provide some extra context to the way that we
create those flutter applications it's not essential especially if you're familiar with other languages and you understand programming Concepts in general like functions classes and data types now if you want to learn the basics of DART First of all then I've got a complete Dart crash course here on the YouTube channel which you can check out I'll leave the link to that course down below the video otherwise feel free to just use that series as a reference as and when you need it okay then so we know that we write flutter applications using the dart programming
language and that when we make those flutter apps they can be compiled and then deployed to multiple platforms using just that single code base and that's really good because it means we don't have to write different versions of our code to Target those different platforms like the web iOS devices or Android devices fler compiles all the code into whatever code is needed to running those different platforms and environments now when we use flutter there's also a few other benefits that we can take advantage of first of all when we make a flutter app it uses
material design features out of the box and that means that pretty much automatically the different UI components that we use like buttons icons form Fields menus they all look really nice by default we can customize the look feel and whole theme of the application using our own Styles instead or just customize the things that we need to but it's nice to be able to quickly mock up an application without worrying too much about how it's going to look flutter also borrows a lot of its layout principles from the web by using things like flexbox margin
padding and other CSS like properties so if you're used to making layouts for the web then you'll have no problem picking up how to make them in flutter as well also flut has got a huge ecosystem of thirdparty packages that we can use to implement different features into any application that we make like different icon packages or packages for pre-built animations Authentication Packages Etc and it's really easy to add those packages to your projects you can browse through all of those different packages on the pub. website which is the official package repository for darts and
flutter and finally the flutter docs are really good as well with tons of different code examples and guides so definitely keep those open in a different Tab and refer back to them if you ever get stuck all right then so in this crash course I'll be teaching you how to install get up and running with flutter pretty quickly so that we can make a simple application like this and also preview it on an Android emulator now you could use an iOS emulator if you wish if you're on a Mac but for this course I'll be
using an Android one because you can use those on Windows as well as on a Mac now you're going to make this app from the ground up learning about layout Styles images interactivity State and other things as well it's a fun little project to make and it's going to teach you all of the basics and put you in a really strong position to dive deeper into flutter and make a few more complex applications now if you want to do that I've got a whole flutter Master Class course on the net Ninja Pro website which is
right here and this crash course that you're watching now is actually just the first chapter of this much bigger masterclass course which goes into a lot more detail and covers more advanced topics like theming user input managing routes in different screens Global State Management Solutions adding a database and then also how to animate your flood apps as well during most of that you're going to be working on another project which looks something like this it's a character creation app for an RPG of some sort where you can make new characters you can give them a
name a slogan you can pick a vocation for that character and then all of your characters are listed on the home screen now you can swipe those characters to delete them or you can click on one to view more details about them toggle whether they're a favorite or not and also assign stat points and choose an active skill for that character as well it's a really fun project to make and it introduces a fair amount of more advanced topics and features as well as how to integrate a database with the application as well so if
you want to truly Master flutter and create more advanced applications definitely check out that masterclass course it's just $10 to buy or you can access my entire net Ninja Pro library and all of my masterclass courses by signing up for a pro subscription that's just $9 a month and you get your first month for half price when you use this promo code right here here so I will leave a link to both of these Pages down below so you can go check them out now before you start there are just a couple of things I
want to mention first of all I've made course files for this entire series and I've uploaded them all to GitHub on this repo right here flutter Master Class each lesson's got its own Branch so to download the code for a specific lesson you just need to select that lesson from the branch drop down then you can hit the code button and select download zip that's going to download a zip folder of the code for this lesson onto your computer compu the second thing I want to mention is that for this course I'll be using vs
code as my text editor and I've also installed the flutter extension for vs code as well which comes with added support for developing floods applications and it automatically installs Dart as well under the hood the dart extension that is so I would definitely install this extension before you start writing any code you can do that by just searching for flutter up here and then it's probably going to be the first result that you get once you've got that installed you're ready to crack on okay then my friends so that is your introduction to flutter and
to this course I really really hope you enjoy the rest of it if you do please don't forget to share subscribe and like the videos that really means a lot and I'm going to see you in the very next lesson [Music]