Simple Web App with Flask and Heroku - Python GUI for Beginners

Поделиться
HTML-код
  • Опубликовано: 22 июл 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/MariyaSha/greeting...
    Link to logo from my Kivy App:
    github.com/MariyaSha/SimpleGr...
    Beautiful icons are by:
    www.freepik.com/
    www.flaticon.com/
  • НаукаНаука

Комментарии • 344

  • @robinferizi9073
    @robinferizi9073 2 года назад +94

    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

    • @PythonSimplified
      @PythonSimplified  2 года назад +85

      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

    • @robinferizi9073
      @robinferizi9073 2 года назад +9

      @@PythonSimplified yeah good point, nice vid too

    • @PythonSimplified
      @PythonSimplified  2 года назад +9

      @@robinferizi9073 thank you so much! 😃

    • @shoshanamofaz3012
      @shoshanamofaz3012 2 года назад +1

      You may already know this but html and css make web pages look pretty while JavaScript is the engine that makes them work.

    • @robinferizi9073
      @robinferizi9073 2 года назад +2

      @@shoshanamofaz3012 yeah I know what they do, and that’s the reason they are known as markup languages

  • @darioalb00
    @darioalb00 Год назад +21

    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!!!

    • @PythonSimplified
      @PythonSimplified  Год назад +2

      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:
      ruclips.net/video/v3CSQkPJtAc/видео.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:
      ruclips.net/video/Ohj-CqALrwk/видео.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:
      ruclips.net/video/MkGQmZoMuRM/видео.html
      This one includes the connection.commit() command I've mentioned above 😉
      Best of luck and I hope it helps! :))

    • @darioalb00
      @darioalb00 Год назад +2

      @@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 ???

  • @DevStephenW
    @DevStephenW Год назад +2

    Just found your videos. Such a perfect tutorial. The right speed, the right amount of explanation and detail. Great stuff.

  • @Soulo_Sreeni
    @Soulo_Sreeni 2 года назад +26

    The way of explanation is phenomenal ! I feel great that RUclips recommended it to me today 🤩

    • @PythonSimplified
      @PythonSimplified  2 года назад +5

      Yeey! I'm so happy you liked it! 😀
      Welcome aboard! 😁

  • @developerx962
    @developerx962 2 года назад

    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"

  • @g.rioscairo
    @g.rioscairo 2 года назад

    I simply loved this tutorial. First time using Flask and Heroku! And it all worked so smoothly, nice :)

  • @Andrew-Escudero
    @Andrew-Escudero Год назад

    You are great! Love the clarity, simplicity, and positivity in your videos. Look forward to learning more from you!

  • @BogdanAnghelina
    @BogdanAnghelina Год назад +2

    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.

  • @MichaelSwartout
    @MichaelSwartout 2 года назад +1

    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!

  • @spadezap9728
    @spadezap9728 2 года назад

    Thanks so much! I have been looking everywhere on how to do this and this is the only video that explained it well!

  • @darcydonelle2340
    @darcydonelle2340 2 года назад +2

    Great video! Deployed my version of the app, and it works wonderfully, as expected. Thank you!

    • @PythonSimplified
      @PythonSimplified  2 года назад

      Yeeey!! Super happy to hear!! Thank you so much 😃

  • @TheSuperRunner
    @TheSuperRunner Год назад

    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.

  • @mauno91
    @mauno91 2 года назад +15

    You can force a cache refresh on a single page:
    Ctrl + F5 for Windows.
    Shift + Reload for Safari.

    • @happyjohn1656
      @happyjohn1656 2 года назад +2

      Wow this is amazing, so awesome to know! Thanks Mauno! 🤗
      9:22 PM
      2/20/2022

    • @godkaboom
      @godkaboom 2 года назад

      Ctrl+Shift+R is what you'll need to refresh without using cache

  • @vigneshpadmanabhan
    @vigneshpadmanabhan 2 года назад +3

    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!

  • @ralphanthony5198
    @ralphanthony5198 9 месяцев назад

    Great video, amiga! Awesome work! I definitely love all your videos!!!

  • @thebarryman
    @thebarryman Год назад

    Best tutorial for Flask I've seen so far, thank you!

  • @rnseby
    @rnseby 2 года назад +1

    Thanks for the great walkthrough. Quick and straightforward.

  • @fersaol
    @fersaol Год назад

    Thanks to you I have been able to deploy a working web app, you deserves all the best in the world. Thanks a lot!!!!!

  • @markus4394
    @markus4394 Год назад

    Thank you for a great tutorial. Got me to transition from making simple console apps to a real webapp!

  • @maxwellochieng4924
    @maxwellochieng4924 2 года назад

    You are the BEST, I found your video at a point i was learning how to deploy my ML models in Heroku

  • @myke6972
    @myke6972 2 года назад

    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!

  • @kayodeadechinan5928
    @kayodeadechinan5928 2 года назад +1

    I really like your way of teaching! Great videos!

  • @S0190S
    @S0190S Год назад

    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!

  • @rrivillox
    @rrivillox 2 года назад

    Flask is my first framework love. It's very easy and functional. Thanks my dear teacher and lovey friend. Your videos are a fresh air on Python's tutorial. :8)

  • @mixschnack
    @mixschnack Год назад

    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!

  • @renderartist
    @renderartist 10 месяцев назад

    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. 👍🏼

  • @123arskas
    @123arskas Год назад

    Love your energy !!! Thanks for the tutorial

  • @estebanglsa
    @estebanglsa Год назад +9

    I love these videos! You really do a great job explaining. The sad part is: Heroku no longer offer free deployment 😥

  • @niklase5901
    @niklase5901 Год назад

    Great! Just the intro i needed for this! Thanks!

  • @eminedogan3125
    @eminedogan3125 2 года назад

    Thank you so much for this great video. Amazing clear explanation.. I am really happy I found your channel.

  • @trtlphnx
    @trtlphnx 2 года назад +4

    I Love Your Lessons; Very Eclectic and Cogent ~
    You Are Vastly Appreciated ~!

    • @PythonSimplified
      @PythonSimplified  2 года назад +1

      Thank you so much for the lovely feedback, trtlphnx! 😁

  • @evertonsston
    @evertonsston 7 месяцев назад

    Thank you so much for this explanation!!

  • @narbigogul5723
    @narbigogul5723 Год назад

    Great video, thanks for sharing!

  • @simonmenlah1817
    @simonmenlah1817 2 года назад

    Hey!
    I just fell in love with you and your method of teaching and can't stop learning via your channel...

  • @mindfreaksaad
    @mindfreaksaad 2 года назад +1

    This is a fantastic guide. Thanks!

  • @thomasschnitt2840
    @thomasschnitt2840 Год назад +3

    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.

  • @netbin
    @netbin 2 года назад

    Exploring python with Cécile’s videos becoming even more fun

  • @NagasakiNightmare
    @NagasakiNightmare Год назад

    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!

  • @omarpalacios9734
    @omarpalacios9734 6 месяцев назад

    Awesome video! Thank you so much. Спасибо :)

  • @erickanyiri3463
    @erickanyiri3463 7 месяцев назад

    How am i just finding your channel now 😊
    Great stuff

  • @user-wf1rp2hp5u
    @user-wf1rp2hp5u 2 года назад

    항상 잘 보고 있어요!

  • @lirostin
    @lirostin 2 года назад

    Thank you for your video! I made it )

  • @nicosaavedra82
    @nicosaavedra82 Год назад

    Thanks!! i did it!! so happy!

  • @BigPoppaJNutZ
    @BigPoppaJNutZ 2 года назад

    Another great tutorial! Thanks!

  • @She_cooks2023
    @She_cooks2023 9 месяцев назад

    Great Job!!! Loved it totally

  • @imoniteochie6355
    @imoniteochie6355 Месяц назад

    i like the way you teach it makes it so easy to under stand as a beginner

  • @ianpropst-campbell6028
    @ianpropst-campbell6028 Год назад

    Thank you for this great video!

  • @falagerifamily
    @falagerifamily Год назад

    So great!! Thanks🎉🎉

  • @johnwindsor5426
    @johnwindsor5426 2 года назад

    So nice talk. it is a gread video tutor. I like it so much! Last about heroku part, it is super!😊👍👍👍

  • @biniyammengiste7413
    @biniyammengiste7413 2 года назад

    waw, very nice. Thank you!!

  • @Tobs_
    @Tobs_ 2 года назад +2

    awesome, this is something I have been keen to learn from you 👍

  • @watermanli
    @watermanli 2 года назад

    It's really beautiful, Amazing.......ly! You opened the door, in such a nice and clear way...

  • @bharathkarkera3223
    @bharathkarkera3223 Год назад

    explanation in best possible way.. thank you so much!!

  • @nathanaelmehari1909
    @nathanaelmehari1909 Год назад

    Thank you very much i enjoyed the course because you try to make it fun as possible

  • @mbundesmond3696
    @mbundesmond3696 Год назад

    Wow great explanation, thumbs up ☺️❤️

  • @ashutoshdevgotra
    @ashutoshdevgotra 2 года назад

    best ever tutorial, I am from india...keep making such easy and learning full projects

  • @Gorlung
    @Gorlung 2 года назад

    your videos broaden my knowledge and inflame my libido

  • @theronkasita4196
    @theronkasita4196 2 года назад

    Well explained Thank you all the way from Africa Namibia

  • @adedoyinayobami2820
    @adedoyinayobami2820 Год назад +1

    I have a problem activating my virtual env with my windows cmd.great content enjoy your tutorial up to the virtual env moment

  • @gaudino110
    @gaudino110 Год назад +1

    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.

  • @alexnefayne4266
    @alexnefayne4266 Год назад

    This is a great tutorial.. Thankyou.

  • @bekiyerom62
    @bekiyerom62 2 месяца назад

    thanks lovely you do it in the most simplest way

  • @freezoulou
    @freezoulou 2 года назад +2

    Well explain as always I repeat again and again thank you very much
    you help me a lot :)

    • @PythonSimplified
      @PythonSimplified  2 года назад

      Thank you so much dexteuse freeman! I'm so happy to hear that! 😀😀😀

  • @HakermodOfficiel
    @HakermodOfficiel 2 года назад

    Just what I needed. Thank you

  • @meganwancura4013
    @meganwancura4013 Год назад

    This was so helpful!!!! Thank you!!!!

  • @gabrielfernandez9660
    @gabrielfernandez9660 2 года назад

    I love your videotutorials!!

  • @achinthasandaruwan9435
    @achinthasandaruwan9435 2 года назад

    Simplifying overload!
    Btw, I love RUclips algorithm ❤️

  • @cesarac666
    @cesarac666 2 года назад

    oH my God! The only one that Run fine!! Greate Job Mariya....Thx

  • @lexiepan4257
    @lexiepan4257 Год назад

    Hi Maria,
    I am quite new to coding, followed all the steps you showed, but I got a different requirement.txt which contains a lot of packages and a lot of @ file .../.../.../.
    So I don't know the reason for this and also don't know if I should replace all the @ file .../.../.../, like the markup safe one you did in the video.

  • @AlexanderMaynor-tt3fx
    @AlexanderMaynor-tt3fx Год назад +1

    You are a angelic human being and so smart! Thank you for making such amazing content and being a light for the world!

    • @PythonSimplified
      @PythonSimplified  Год назад

      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! 😊

  • @paulthomas1052
    @paulthomas1052 Год назад

    Great work !!

  • @MyTubeAIFlaskApp
    @MyTubeAIFlaskApp Год назад +1

    This video inspired me to learn Flask Because of you, I am here.Thank You very much.

  • @yoyochris924
    @yoyochris924 2 года назад

    Great explanation. Thanks!

  • @dacianfd8418
    @dacianfd8418 11 месяцев назад +1

    Nice!

  • @kwamenadadson
    @kwamenadadson Год назад

    Thanks your video saved my life today

  • @---------------__
    @---------------__ 2 года назад

    I really enjoyed your tutorial :)

  • @taylortoast2
    @taylortoast2 Год назад

    @PythonSimplified which part of this app utilizes JavaScript? Thank you for your content.

  • @Blooddarkstar
    @Blooddarkstar Год назад

    This was brilliant!

  • @DanielŚmigiela
    @DanielŚmigiela 2 года назад

    You're amazing! I love you so much :D

  • @hichamtutorials7170
    @hichamtutorials7170 2 года назад

    Hi there I have a question I created a python script that extract data from web using beautifulsoup is there a way I can run it from a html web page

  • @SuperlativeCG
    @SuperlativeCG 2 года назад

    Great tutorial. Very helpful.

  • @NOURTCS
    @NOURTCS 2 года назад

    Great perfect 🤩 you do beautiful coding & clean Thanks

  • @roshanikumbharkar6266
    @roshanikumbharkar6266 Год назад

    thank you so much dude you're a god

  • @bicycleninja1685
    @bicycleninja1685 2 года назад +2

    You're very talented and knowledgeable! Thanks for taking us through the steps.

    • @PythonSimplified
      @PythonSimplified  2 года назад +1

      Thank you so much Bicycle Ninja! 😀
      I have an additional Flask tutorial if you'd like to combine your app with an SQLite database:
      ruclips.net/video/v3CSQkPJtAc/видео.html
      It's a bit longer than this one, but it's also a much more useful application 😉

    • @bicycleninja1685
      @bicycleninja1685 2 года назад

      @@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.

  • @MrThekid2009
    @MrThekid2009 2 года назад +1

    Liked, Subscribed & hooked for life! Kudos!

    • @PythonSimplified
      @PythonSimplified  2 года назад +1

      Yeeey!! Super happy to hear! Welcome aboard!! 😃😃😃

  • @yakhyobekmamadaliyev6315
    @yakhyobekmamadaliyev6315 2 года назад +1

    Sposiba Very much. ti taught me khorosho☺️☺️☺️👍👍

  • @mahmoudsalama4443
    @mahmoudsalama4443 Год назад

    what is 'hello' in the last minute in Heroku url that u added?

  • @lenapham9377
    @lenapham9377 Год назад

    Great teacher, wish you all the best!

  • @blaiseyonga9686
    @blaiseyonga9686 2 года назад

    I enjoy the way you explain something😄😄😄😄

  • @giovannicanedoli7669
    @giovannicanedoli7669 2 года назад +1

    This was so interesting, really a nice video!

  • @bazazoo2827
    @bazazoo2827 Год назад +1

    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

  • @mightyaripage
    @mightyaripage 2 года назад

    Love the manbearpig reference

  • @antonvorobiev9507
    @antonvorobiev9507 2 года назад +1

    You are wonderful!!!

  • @learnincredibledesign
    @learnincredibledesign Год назад

    Love the way of teaching

  • @danielantoniocamachohernan7262

    amazing!

  • @x-jbbj-x8107
    @x-jbbj-x8107 2 года назад

    Thanks for the help !!!

  • @udbhav3760
    @udbhav3760 2 года назад +1

    I learned something new today thanks for the video ✌️

  • @ramadanhonor8716
    @ramadanhonor8716 2 года назад

    hello can you help me with my website which uploads pdf to compare it with previously saved pdf using python code and present the result on the website

  • @toulasantha
    @toulasantha Год назад

    👏👏👏 charisma factor 100%

  • @Jelvix
    @Jelvix 2 года назад +3

    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.