<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Zaiba S.A</title>
    <description>The latest articles on DEV Community by Zaiba S.A (@zaiba_sa).</description>
    <link>https://dev.to/zaiba_sa</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1680546%2F34595ad9-e63c-460b-86fa-138f3937ba8c.png</url>
      <title>DEV Community: Zaiba S.A</title>
      <link>https://dev.to/zaiba_sa</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/zaiba_sa"/>
    <language>en</language>
    <item>
      <title>Building Your First Web Application with Flask: A Step-by-Step Guide</title>
      <dc:creator>Zaiba S.A</dc:creator>
      <pubDate>Tue, 25 Jun 2024 10:29:21 +0000</pubDate>
      <link>https://dev.to/zaiba_sa/building-your-first-web-application-with-flask-a-step-by-step-guide-5p8</link>
      <guid>https://dev.to/zaiba_sa/building-your-first-web-application-with-flask-a-step-by-step-guide-5p8</guid>
      <description>&lt;p&gt;Flask is a lightweight web framework for Python, making it easy to get started with web development. In this guide, we'll create a simple web application using Flask and the command line.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1: Install Flask&lt;/strong&gt;&lt;br&gt;
First, ensure you have Python installed. You can check by running:&lt;br&gt;
python --version&lt;br&gt;
Next, install Flask using pip:&lt;br&gt;
pip install Flask&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2: Set Up Your Project&lt;/strong&gt;&lt;br&gt;
Create a directory for your project:&lt;br&gt;
mkdir my_flask_app&lt;br&gt;
cd my_flask_app&lt;/p&gt;

&lt;p&gt;Create a virtual environment to manage dependencies:&lt;br&gt;
python -m venv venv&lt;/p&gt;

&lt;p&gt;source venv/bin/activate  # On Windows, use &lt;code&gt;venv\Scripts\activate&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3: Create the Flask Application&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Create a file named app.py and open it in your text editor:&lt;br&gt;
touch app.py&lt;/p&gt;

&lt;p&gt;Add the following code to app.py:&lt;/p&gt;

&lt;p&gt;from flask import Flask&lt;/p&gt;

&lt;p&gt;app = Flask(&lt;strong&gt;name&lt;/strong&gt;)&lt;br&gt;
@app.route('/')&lt;br&gt;
def home():&lt;br&gt;
    return "Hello, Flask!"&lt;br&gt;
if &lt;strong&gt;name&lt;/strong&gt; == "&lt;strong&gt;main&lt;/strong&gt;":&lt;br&gt;
    app.run(debug=True)&lt;/p&gt;

&lt;p&gt;This code sets up a basic Flask application with a single route (/) that returns "Hello, Flask!".&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4: Run Your Flask Application&lt;/strong&gt;&lt;br&gt;
To run your Flask application, use the following command:&lt;/p&gt;

&lt;p&gt;python app.py&lt;br&gt;
You should see output indicating that the Flask development server is running. Open your web browser and go to &lt;a href="http://127.0.0.1:5000/"&gt;http://127.0.0.1:5000/&lt;/a&gt; to see the "Hello, Flask!" message.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5: Add More Routes&lt;/strong&gt;&lt;br&gt;
Let's add another route to our application. Update app.py to include a new route:&lt;/p&gt;

&lt;p&gt;from flask import Flask&lt;br&gt;
app = Flask(&lt;strong&gt;name&lt;/strong&gt;)&lt;br&gt;
@app.route('/')&lt;br&gt;
def home():&lt;br&gt;
    return "Hello, Flask!"&lt;/p&gt;

&lt;p&gt;@app.route('/about')&lt;br&gt;
def about():&lt;br&gt;
    return "This is the about page."&lt;br&gt;
if &lt;strong&gt;name&lt;/strong&gt; == "&lt;strong&gt;main&lt;/strong&gt;":&lt;br&gt;
    app.run(debug=True)&lt;/p&gt;

&lt;p&gt;Now, if you visit &lt;a href="http://127.0.0.1:5000/about"&gt;http://127.0.0.1:5000/about&lt;/a&gt;, you'll see the message "This is the about page."&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 6: Use Templates&lt;/strong&gt;&lt;br&gt;
To serve HTML content, Flask uses templates. Create a directory named templates:&lt;/p&gt;

&lt;p&gt;mkdir templates&lt;br&gt;
Create a file named home.html inside the templates directory:&lt;br&gt;
touch templates/home.html&lt;/p&gt;

&lt;p&gt;Add the following HTML content to home.html:&lt;/p&gt;

&lt;p&gt;&amp;lt;!DOCTYPE html&amp;gt;&lt;br&gt;
&lt;br&gt;
&lt;/p&gt;
&lt;br&gt;
    &lt;br&gt;
    Home&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
    &lt;h1&gt;Hello, Flask!&lt;/h1&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
Update app.py to render this template:

&lt;p&gt;from flask import Flask, render_template&lt;/p&gt;

&lt;p&gt;app = Flask(&lt;strong&gt;name&lt;/strong&gt;)&lt;/p&gt;

&lt;p&gt;@app.route('/')&lt;br&gt;
def home():&lt;br&gt;
    return render_template('home.html')&lt;/p&gt;

&lt;p&gt;@app.route('/about')&lt;br&gt;
def about():&lt;br&gt;
    return "This is the about page."&lt;/p&gt;

&lt;p&gt;if &lt;strong&gt;name&lt;/strong&gt; == "&lt;strong&gt;main&lt;/strong&gt;":&lt;br&gt;
    app.run(debug=True)&lt;br&gt;
Now, visiting &lt;a href="http://127.0.0.1:5000/"&gt;http://127.0.0.1:5000/&lt;/a&gt; will render the HTML content from home.html.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 7: Add Static Files&lt;/strong&gt;&lt;br&gt;
Flask also supports static files like CSS and JavaScript. Create a directory named static:&lt;/p&gt;

&lt;p&gt;mkdir static&lt;br&gt;
Create a CSS file named style.css inside the static directory:&lt;/p&gt;

&lt;p&gt;touch static/style.css&lt;br&gt;
Add some CSS to style.css:&lt;/p&gt;

&lt;p&gt;body {&lt;br&gt;
    font-family: Arial, sans-serif;&lt;br&gt;
}&lt;br&gt;
h1 {&lt;br&gt;
    color: #333;&lt;br&gt;
}&lt;br&gt;
Update home.html to include this CSS file:&lt;/p&gt;

&lt;p&gt;&amp;lt;!DOCTYPE html&amp;gt;&lt;br&gt;
&lt;br&gt;
&lt;/p&gt;
&lt;br&gt;
    &lt;br&gt;
    Home&lt;br&gt;
    &lt;br&gt;
&lt;br&gt;
&lt;br&gt;
    &lt;h1&gt;Hello, Flask!&lt;/h1&gt;
&lt;br&gt;
&lt;br&gt;


&lt;p&gt;Conclusion&lt;br&gt;
Congratulations! You've built a simple web application using Flask. You've learned how to:&lt;/p&gt;

&lt;p&gt;Set up a Flask project&lt;br&gt;
Create routes&lt;br&gt;
Serve HTML templates&lt;br&gt;
Include static files&lt;/p&gt;

&lt;p&gt;Flask is a powerful and flexible framework. From here, you can explore more advanced features such as form handling, database integration, and user authentication.&lt;/p&gt;

</description>
      <category>flask</category>
      <category>python</category>
      <category>webdev</category>
      <category>webapp</category>
    </item>
  </channel>
</rss>
