Simple Web App with Flask and Heroku - Python GUI for Beginners
Вставка
- Опубліковано 18 сер 2024
- In this tutorial, I will show you how to create a Web Application with Flask!
This video the also the first episode of The Battle of the App Frameworks, where 🤩🤩 YOU GET TO CHOOSE THE WINNER! 🤩🤩
Today we will create a simple "Hello World" Application with Flask, which includes:
* an HTML template containing the structure of a web page
* a CSS stylesheet containing design instructions
* a Python backend that communicates with a web server
And we will also 🚀DEPLOY🚀 this application for free with Heroku! 😁
This tutorial covers all the basics of Flask, from start to finish! (excluding Javascript interactions, which we will leave for later 😜)
⏰ TIME STAMPS ⏰
00:00 - Battle of the App Frameworks
00:25 - Flask Overview
01:17 - Flask Directory Structure
01:52 - HTML Structure
06:52 - Python Backend
09:31 - Warning: this is a development server ⛳
09:42 - Message Flashing
11:04 - A secret key is required
13:38 - CSS Styling
18:05 - CSS doesn't update - Clear Cache!
20:14 - Procfile and Requirements
22:42 - Deploy Flask App with Heroku
24:43 - Thanks for watching! :)
*********************************
🐍 IMPORTANT NOTES/LINKS 🐍
Install Flask 🌶
* Anaconda: conda install -c anaconda flask
* PyPI: pip install flask
Install Green Unicorn 🦄
$ pip install gunicorn
Change Production Server to Development Server: ⛳
$ export FLASK_APP=sayHello
$ export FLASK_ENV=development
$ flask run
Complete project on Github:
github.com/Mar...
Link to logo from my Kivy App:
github.com/Mar...
Beautiful icons are by:
www.freepik.com/
www.flaticon.com/ - Наука та технологія
Note: html and css are not programming languages they’re mark up languages, as there is nothing in html or css that makes them Turing complete
Hi Robin 😊
Don't worry, I'm definitley aware of it! After all, "markup" is the "M" of HTML! 😃
It's just not a technicality I wanted to focus on at this point in time, especially as part of a "quick overview".
If I use the term "markup language" to explain a different term - I also need to explain what it means and how it differs from a "programming language".
If I were to film a video about HTML or markup languages in general - I would have probably used the technical definitions instead of an abstraction.
But here's a caviat - the term "markup language" is not very well defined and I can make the argument that it overlaps with the definition of "programming language". There's an ongoing debate on this, you can actually find many different opinions on Stack Overflow and each of them has a valid logic behind it.
In my opinion, markup is a subset of programming as even web pages are programs in one way or another.
Even static pages without any JS interactions are encoded by a computer, so it does seem to fit the definition... but that's just my opinion 😉
Anyhow, I don't see a reason to dig so deep... 😅 just refer to "markup" as an abstraction of "programming" hahahah
@@PythonSimplified yeah good point, nice vid too
@@robinferizi9073 thank you so much! 😃
You may already know this but html and css make web pages look pretty while JavaScript is the engine that makes them work.
@@shoshanamofaz3012 yeah I know what they do, and that’s the reason they are known as markup languages
Wonderful!!! I am an old developer (61 years old) trying to learn the current technologies. Already tired of volunteer tutorials that know little about teaching, I come across this one, which in just 25 minutes, conveys all the basics I need to learn. I am amazed!!! Congratulations!!!
Thank you so much for the awesome comment, Darío!! I have another Flask tutorial (but twice as long unfortunately 😅 haha) and it shows you how to combine a SQLite database with your app, creating a Groceries List application:
⭐ Flask SQLite Web Application Step by Step Tutorial - HTML, Jinja, CSS, JavaScript, Python:
ua-cam.com/video/v3CSQkPJtAc/v-deo.html
It's a bit more advanced than this tutorial, but it gives you some additional tools to use on your exciting new journey :)))
If you're not yet familiar with SQLite or databases in general, I have some really nice tutorials that you may find useful:
⭐ SQLite Basics:
ua-cam.com/video/Ohj-CqALrwk/v-deo.html
❗you'll need to add connection.commit() after each data insertion command, I've accidentally skipped it in the tutorial above 😅
then you can practice your SQLite skills and learn how you can generate databases by automatically copying them from the web (what we call Web Scraping):
⭐ Web Scrape Databases with SQLite and Mechanical Soup:
ua-cam.com/video/MkGQmZoMuRM/v-deo.html
This one includes the connection.commit() command I've mentioned above 😉
Best of luck and I hope it helps! :))
@@PythonSimplified What a frustrating!!! Much of my illusion was to see my Flask app run in the cloud. I was waiting for the weekend to have the necessary time to carry it out, and I find that Heroku is no longer free !!! Do you know any good alternative ???
The way of explanation is phenomenal ! I feel great that UA-cam recommended it to me today 🤩
Yeey! I'm so happy you liked it! 😀
Welcome aboard! 😁
You can force a cache refresh on a single page:
Ctrl + F5 for Windows.
Shift + Reload for Safari.
Wow this is amazing, so awesome to know! Thanks Mauno! 🤗
9:22 PM
2/20/2022
Ctrl+Shift+R is what you'll need to refresh without using cache
Mariya Shanti doesn't babble on forever, but says, bang, bang, do this and that and everything works. And that's how it is. Here and there, some questions arise, which she partly answers - to my full satisfaction - and partly does not. For example, she doesn't explain how she manages to get the font file loaded and displayed on every system. On her system it works without additional effort, because the font ("Shanti") is installed on her system. On other systems the font would first have to be loaded from a website or an appropriate stored font file. All in all, this video gives a good overview of the steps necessary to develop and deploy a web app and introduces some "best practices" that are common among experienced programmers. A great video. More of it please!
Just found your videos. Such a perfect tutorial. The right speed, the right amount of explanation and detail. Great stuff.
I swear this is the first time I have every seen you on a windows pc. You are such a wonderful teacher. Who likes to play some Steam games and not just code. Oh ya!
I am so happy because you are just given us the best statement "and since we have saved this file inside the appropriate template folder, flask will be able to find it with no issues"
I love these videos! You really do a great job explaining. The sad part is: Heroku no longer offer free deployment 😥
I'm now starting to learn Python through the Mimo mobile app.
After a few chapters, I started practicing and looking for more complex projects. Your video is very explanatory and I congratulate you on that!
Although I have a pretty solid background in HTML, CSS, and WordPress (PHP), I'm just now starting to understand Python and I think it's awesome what you can do with it.
Clear and helpful as always. Thanks!
Great video, amiga! Awesome work! I definitely love all your videos!!!
Thanks for the video!
A little remark: UTF-8 is not necessarily 8-bit. It is a variable-length character encoding standard using one to four one-byte (8-bit) code units.
don't know anything about flask yet, but after I watched this video, I understand all of the parts discussed in the video, thanks alot!
Thanks to you I have been able to deploy a working web app, you deserves all the best in the world. Thanks a lot!!!!!
You are looking too good sis, I am your biggest fan 😊😊
Thank you so much Joshwa! 😊
i like the way you teach it makes it so easy to under stand as a beginner
This video inspired me to learn Flask Because of you, I am here.Thank You very much.
I have a problem activating my virtual env with my windows cmd.great content enjoy your tutorial up to the virtual env moment
How am i just finding your channel now 😊
Great stuff
Great video! Deployed my version of the app, and it works wonderfully, as expected. Thank you!
Yeeey!! Super happy to hear!! Thank you so much 😃
Great tutorial, simple but quite complete. Your speech is lovely, not too fast and perfectly understandable even for a non native English speaker like me. I'm in love with you, not gonna lie.
You are a angelic human being and so smart! Thank you for making such amazing content and being a light for the world!
Wow, Alexander! Thank you so much for the incredible comment!! 😀😀😀
It's a great honour to have lovely folks such as yourself supporting me on this magical journey! 😊
I feel like no one is doing what you’re doing. I’m glad to have found this, because I can code in Python well enough, but I have never done anything front end outside of ncurses. (Old man, new tricks)😂
Thank you so much!
I was just about to have my nieces watch this video. Then you greeted s-man.
Flask is also great when blended with React. You can use CORS and axios for this
Thank you! Flask resembles a LEGO constructor, which you can use to build whatever you want using Python libraries or Flask extensions. Python developers from Jelvix say that with Flask, you can add new modules when you need them, rather than being bombarded with details for the first time.
You're welcome! Enjoy! 😄
thank you so much!!!!!! i able to create my own website now!!!
Best tutorial for Flask I've seen so far, thank you!
You are great! Love the clarity, simplicity, and positivity in your videos. Look forward to learning more from you!
oH my God! The only one that Run fine!! Greate Job Mariya....Thx
Thanks so much! I have been looking everywhere on how to do this and this is the only video that explained it well!
Great! Just the intro i needed for this! Thanks!
Way simpler to use Heroku than AWS. Thank you for this video! I learned Flask in my bootcamp and have been needing a simpler deployment method. Thanks again!
So nice talk. it is a gread video tutor. I like it so much! Last about heroku part, it is super!😊👍👍👍
thanks lovely you do it in the most simplest way
I Love Your Lessons; Very Eclectic and Cogent ~
You Are Vastly Appreciated ~!
Thank you so much for the lovely feedback, trtlphnx! 😁
Hello Mariya, great to see ya 8D
I'll be waiting for the update on the DearPy GUI app, docs are not up for mass adoption yet
You are the BEST, I found your video at a point i was learning how to deploy my ML models in Heroku
Exploring python with Cécile’s videos becoming even more fun
Awesome video! Thank you so much. Спасибо :)
Liked, Subscribed & hooked for life! Kudos!
Yeeey!! Super happy to hear! Welcome aboard!! 😃😃😃
Great Job!!! Loved it totally
Great video, thanks for sharing!
awesome, this is something I have been keen to learn from you 👍
Happy to hear Tobs! 😁
Thank you so much for this explanation!!
your biggest fan❤️♥️🥰🇳🇵
Thank you so much for the support Codingide NP! 😀
No, the biggest I am 🤣🤣🤣
your videos broaden my knowledge and inflame my libido
Nice!
I simply loved this tutorial. First time using Flask and Heroku! And it all worked so smoothly, nice :)
Well explained Thank you all the way from Africa Namibia
Love the manbearpig reference
Hello mariya. Good to see ya after a long time.
Thank you Siam! It's been a while - but I'm back! 😊 (and apparently bombarding ya'll with videos as a new battle episode premieres in 2 days hahahaha 😅)
@@PythonSimplified awesome. I would love to watch that. I wasn’t there while premiering. Next time I won't miss.
Incredibly helpful and fun tutorial, thank you! Building some experiments with flask that I made with ChatGPT and seeing how easy it is to take it online in a nice packaged way is great. I like that there are options for easy to deploy SQL databases in Heroku. 👍🏼
Great tutorial! I'm trying to write a web app (with basically no web experience) for a new project of mine and this made things a lot more clear.
You are wonderful!!!
Sposiba Very much. ti taught me khorosho☺️☺️☺️👍👍
hahahaha Pozalusta ,Yakhyobek!!! 😀
Superb!
Thank you! 😊
Thank you for this great video!
You don't need to clear browser cache all the time. Just press which do deep refresh on the page. Deep refresh force the browser to load static files again and not use the cached version. Browser don't do deep refresh by default for the performance reason. Thanks for the video.
Thanks your video saved my life today
best ever tutorial, I am from india...keep making such easy and learning full projects
👏👏👏 charisma factor 100%
Thanks for the great walkthrough. Quick and straightforward.
I really like your way of teaching! Great videos!
Love your energy !!! Thanks for the tutorial
So great!! Thanks🎉🎉
Thanks!! i did it!! so happy!
No one can teach like this compared to you
Suggestion: Instead of clearing the cache, it is much faster to hard refresh the browser with Ctrl+F5. (Works on most common browsers on Windows. Different shortcut on Mac.)
You're very talented and knowledgeable! Thanks for taking us through the steps.
Thank you so much Bicycle Ninja! 😀
I have an additional Flask tutorial if you'd like to combine your app with an SQLite database:
ua-cam.com/video/v3CSQkPJtAc/v-deo.html
It's a bit longer than this one, but it's also a much more useful application 😉
@@PythonSimplified Will check it out! I also loved your Python graphics tutorial with the procedurally generated trees and landscape. Absolute genius! Helps grasp the concept and take it to another level.
It's really beautiful, Amazing.......ly! You opened the door, in such a nice and clear way...
Hey!
I just fell in love with you and your method of teaching and can't stop learning via your channel...
Well explain as always I repeat again and again thank you very much
you help me a lot :)
Thank you so much dexteuse freeman! I'm so happy to hear that! 😀😀😀
by far the best tutorial ive come across!! sadly heroku is not free anymore :(
waw, very nice. Thank you!!
Thanks a lot! Such an amazing video. I have always wanted to deploy the solutions I create on the web, but never took the step, thanks to the youtube algorithm, found this video by chance and I like your teaching approach. It's simple to follow and easy to execute. Would love to see a sequel to this video.. would it be possible for us to have a MySQL or SQLite or PostgreSQL anything you would prefer, that can store the names we type? I am interested to learn more about this. A little bit about myself, I'm a data science guy and I never got a chance to do anything beyond proof of concept at work and personally was never exposed to a platform that can host an app on the web free. So this is my start. Thanks again!
Hey, Mariya!
My best and favorite teacher.
What did I miss? I'm later on your today's lesson!
Hi PI Lemost! 😊 great to see you!
We were building a simple "hello world" web application with a mini Framework called Flask 😀
Tomorrow I'm premiering another web app tutorial, but this time - a slightly more useful one (calculator) and by using Python only!
See you tomorrow for the premiere? 😉
explanation in best possible way.. thank you so much!!
Thank you for your video! I made it )
Thank you for a great tutorial. Got me to transition from making simple console apps to a real webapp!
Love the way of teaching
Great teacher, wish you all the best!
This is a great tutorial.. Thankyou.
This was so interesting, really a nice video!
Thank you! 😊
This was so helpful thnx!
Thank you Alpha! I'm very happy to help! 😀
Nice to known Flash() function
Shalom. Great to see you again. I have news. I am working for Dell Technologies now a the Haifa campus. If you care.
That's awesome Shoshana! Congratulations on your new job! Dell is my absolute favourite when it comes to computer hardware! My laptop is an old Inspiron and my desktop is an Alienware so I'm a huge fan :DDDD
And now I know who to reach our for discounts ;) hahahahaha
Congrats again, kapara alaih, and have fun! :)
Greetings from Mexico City! Got to thank you for the explanation tho
To refresh page and caches is Ctrl + Shift + R or Crtl + alt + R (I'm not in front the pc)
This was brilliant!
Just what I needed. Thank you
Great work !!
Hi I love the video thank you so much for your amazing work! I was wondering how I get HTML or CSS program language or whatever is needed on sublime, so I can make sure I'm doing this right! 😇
Wow great explanation, thumbs up ☺️❤️
Yep the app is still online. Thanks 😎
@PythonSimplified which part of this app utilizes JavaScript? Thank you for your content.
thank you so much dude you're a god
Thank you very much i enjoyed the course because you try to make it fun as possible
You're amazing! I love you so much :D